Derin İyi Makaleler-Herkese Açık Yorum Araması için Bilgi Grafiğine Dayalı Derin Öğrenme Sıralama Uygulaması

1. Giriş

Zorluklar ve fikirler

Arama, kullanıcıların Dianping Uygulamasında bilgi araması için en büyük giriştir ve kullanıcılar ile bilgiler arasında önemli bir bağlantıdır. Kullanıcılar için arama yöntemleri ve senaryoları çok çeşitlidir ve çok çeşitli yerleştirme hizmetleri ve trafikteki büyük fark nedeniyle, bu, aşağıdaki yönlerden somutlaştırılan Dianping Araması'na (bundan sonra Dianping Araması olarak anılacaktır) büyük zorluklar getirir:

  • Çeşitli niyetler : Kullanıcıların bulduğu bilgi türleri ve yöntemleri çeşitlidir. Bilgi türleri arasında POI, sıralama, UGC, strateji, yetenek vb. Yer alır. Örnek olarak bir mağaza bulmayı ele alalım, arama yöntemleri mesafe, ısı, yemek ve coğrafi konum gibi birden çok yöntemi içerir. Örneğin, bir kullanıcı markaya göre arama yaptığında, en yakın veya sık ziyaret edilen bir şubeyi bulma olasılığı daha yüksektir; ancak, bir kullanıcı bir yemek aradığında, önerilen yemek sayısına daha duyarlı olacak ve mesafe faktörü zayıflayacaktır.
  • Çeşitlendirilmiş iş : Farklı hizmetler arasında, kullanıcıların kullanım sıklığı, seçim güçlüğü ve hizmet talepleri farklıdır. Örneğin, ev geliştirme sahnesinde, kullanıcı frekansı çok düşük, davranış çok seyrek, mesafe faktörü zayıf ve seçim döngüsü çok uzun olabilir; yemek çoğunlukla anlık tüketim sahnesi iken, kullanıcı davranış verileri büyük ve mesafe hassastır.
  • Çeşitli kullanıcı türleri : Farklı kullanıcıların fiyatlar, mesafeler, zevkler ve tercihler kategorilerinde büyük farklılıkları vardır; arama, özelleştirilmiş "binlerce kişi" araması elde etmek için kullanıcıların çeşitli tercihlerini derinlemesine araştırabilmelidir.
  • LBS araması : E-ticaret ve genel arama ile karşılaştırıldığında, LBS'nin boyut yükseltme etkisi, arama senaryolarının karmaşıklığını büyük ölçüde artırır. Örneğin, turist kullanıcılar ve yerleşik kullanıcılar için ilki, yiyecek ararken tanınmış yerel tüccarlarla daha fazla ilgilenebilir, ancak mesafeye nispeten duyarsızdır.

Zaman, mekan ve sahne gibi boyutların üzerine eklenen yukarıda bahsedilen özellikler, inceleme aramasını genel arama motorlarından daha benzersiz zorluklarla karşı karşıya bırakmaktadır. Bu zorlukları çözmek için, NLP (Doğal Dil İşleme, doğal dil işleme) teknolojisini yükseltmek, derinlemesine sorgu anlayışı ve derinlemesine değerlendirme ve analiz yapmak ve arama mimarisini bir bütün olarak yükseltmek için bilgi grafiği teknolojisine ve derin öğrenme teknolojisine güvenmek gerekir. Meituan NLP Center ve Dianping Search Intelligence Center'ın iki ekibinin yakın işbirliği ile, sadece altı ay sonra, Dianping Search'ün temel KPI'si, son bir buçuk yılın altı katı olan yüksek seviyesinden önemli ölçüde arttı. Yıllık hedefi altı ay önceden tamamlayın.

Arama mimarisini bilgi grafiğine göre yeniden şekillendirme

Meituan NLP Merkezi, dünyanın en büyük yemek ve eğlence bilgi haritası olan Meituan Beynini inşa ediyor (ilgili bilgiler için lütfen "Meituan Beyin: Bilgi Haritası Modelleme Yöntemleri ve Uygulamaları" na bakın). Çeşitli sahne verilerini tamamen madencilik yapar ve ilişkilendirir, makinelerin kullanıcıların genel yorumlarını "okumasına" izin vermek için NLP teknolojisini kullanır, kullanıcıların yemekler, fiyatlar, hizmetler, ortam vb. Açısından tercihlerini anlar ve insanlar, mağazalar, ürünler ve sahneler arasında bilgi ilişkileri kurar. Bir "bilgi beyni" oluşturun. Arama süreçlerine bilgi grafiği bilgilerini ekleyerek, gözden geçirme aramasının genel yapısını yükselttik ve yeniden şekillendirdik Şekil 1, bilgi grafiklerine dayalı inceleme aramasıyla oluşturulan beş katmanlı arama mimarisini göstermektedir. Bu makale, temel olarak 5 katmanlı inceleme arama mimarisindeki çekirdek sıralama katmanının gelişimini tanıtan "Meituan Brain" serisinin ikincisidir (serinin ilk makalesi için lütfen "Meituan Catering and Entertainment Knowledge Atlas-Meituan Brain Revealed" bölümüne bakın) Süreç, makale esas olarak aşağıdaki 3 bölüme ayrılmıştır:

  • Çekirdek sıralama, geleneksel makine öğrenimi modellerinden büyük ölçekli derin öğrenme modellerine dönüşmüştür.
  • Arama sahnesi derin öğrenme sıralama modelinin mühendislik uygulaması özelliği.
  • Arama senaryoları için uygun bir derin öğrenme Listesel sıralama algoritması-LambdaDNN.

Şekil 1 Bilgi grafiğine dayalı beş katmanlı inceleme araması mimarisi

2. Sıralama Modelinin Keşfi ve Uygulaması

Arama sıralama probleminin makine öğrenimi alanında ayrı bir dalı vardır: Sıralamayı Öğrenme (L2R). Ana kategoriler aşağıdaki gibidir:

  • Farklı numune oluşturma yöntemlerine ve Loss Function'a göre, L2R Pointwise, Pairwise ve Listwise olarak ayrılabilir.
  • Model yapısına göre doğrusal sıralama modeli, ağaç modeli, derin öğrenme modeli ve aralarındaki kombinasyon (GBDT + LR, DeepWide vb.) Olarak ikiye ayrılabilir.

Sıralama modeli açısından, inceleme araştırması da endüstride nispeten yaygın bir yineleme sürecinden geçmiştir: erken doğrusal model LR'den otomatik ikinci dereceden geçiş özellikleri FM ve FFM'nin tanıtımına, doğrusal olmayan ağaç modeli GBDT ve GBDT + LR'ye ve son kapsamlı Büyük ölçekli bir derin öğrenme sıralama modeline geçin. Aşağıda, önce kısaca geleneksel makine öğrenimi modellerinin (LR, FM, GBDT) uygulamaları ile avantajları ve dezavantajları tanıtılmakta ve ardından derin modellerin araştırılması ve uygulama süreci ayrıntılı olarak tanıtılmaktadır.

Geleneksel makine öğrenimi modeli

Şekil 2 Birkaç geleneksel makine öğrenimi modeli yapısı

  • LR, tek katmanlı tek düğümlü doğrusal bir ağ yapısı olarak kabul edilebilir. Modelin avantajı güçlü yorumlanabilirliktir. Genel olarak, iyi yorumlanabilirlik, endüstriyel uygulama pratiğinin daha fazla önem verdiğinin bir göstergesidir, daha iyi kontrol edilebilirlik anlamına gelir ve mühendislere problem optimizasyon modellerini analiz etme konusunda rehberlik edebilir. Bununla birlikte, LR'nin büyük miktarda yapay özellik madenciliği yatırımına dayanması gerekir ve sınırlı özellik kombinasyonu doğal olarak güçlü ifade yeteneği sağlayamaz.
  • FM, LR temelinde ikinci dereceden çapraz terimin bir parçasını ekliyor olarak görülebilir. Otomatik çapraz özelliklerin tanıtımı, modelin doğrusal olmayışını artırırken ve daha fazla bilgi yakalarken, manuel madencilik girdisini azaltmaya yardımcı olur. FM, iki özellik arasındaki ilişkiyi otomatik olarak öğrenebilir, ancak daha yüksek özellik çapraz seviyesi hala yeterli değildir.
  • GBDT bir Boosting modelidir.Artıklara kademeli olarak uyması için birden fazla zayıf modelin birleştirilmesiyle güçlü bir model elde edilir. Ağaç modelinin doğal avantajları vardır, yüksek dereceli istatistiksel özellikleri iyi bir şekilde çıkarabilir ve birleştirebilir ve mükemmel yorumlanabilirliğe sahiptir. GBDT'nin ana kusuru, sürekli istatistiksel özelliklere dayanması ve yüksek boyutlu seyrek özellikleri ve zaman serisi özelliklerini iyi idare edememesidir.

Derin sinir ağı modeli

İşletmenin gelişmesiyle birlikte geleneksel modellerde hedef getiri elde etmek giderek zorlaştı. Aynı zamanda, işin karmaşıklığı, kesin ve kişiselleştirilmiş sıralama elde etmek için büyük miktarda kullanıcı geçmiş verilerini, ultra büyük ölçekli bilgi grafiği özelliklerini ve diğer çok boyutlu bilgi kaynaklarını sunmamızı gerektirir. Bu nedenle, 2018'in ikinci yarısından başlayarak, L2 çekirdek sıralama katmanının ana modelinin derin öğrenme sıralama modeline geçişini tamamen destekleyeceğiz. Derin modelin avantajları aşağıdaki yönlere yansır:

  • Güçlü model uygulama yeteneği : Derin öğrenme ağı, doğrusal olmayan bir etkinleştirme işleviyle birlikte birden çok gizli katman ve gizli düğüm içerir, teorik olarak herhangi bir işleve uyabilir, bu nedenle karmaşık inceleme araması sahnesi için çok uygundur.
  • Güçlü özellik gösterimi ve genelleme yetenekleri : Derin öğrenme modelleri, geleneksel modellerin yapamadığı birçok özelliği kaldırabilir. Örneğin, derin ağ, yüksek boyutlu seyrek kimliğin gizli bilgilerini çok sayıda eğitim örneğinden doğrudan öğrenebilir ve Gömme yoluyla temsil edebilir; ek olarak, metin, sıra özellikleri ve görüntü özellikleri için, derin ağlar karşılık gelen yapılara veya birimlere sahiptir. uğraşmak.
  • Özellikleri otomatik olarak birleştirme ve keşfetme yeteneği : Huawei tarafından önerilen DeepFM ve Google'ın önerdiği DeepCrossNetwork, çok sayıda manuel özellik kombinasyonu çalışması yerine otomatik olarak özellik kombinasyonunu gerçekleştirebilir.

Aşağıdaki şekil, Google tarafından önerilen WideDeep modeline dayanarak oluşturduğumuz ağ yapısıdır. Geniş bölümün girişi, genellikle LR ve GBDT aşamalarında kullanılan bazı ince taneli istatistiksel özelliklerdir. Daha uzun bir süre boyunca sayılan yüksek frekanslı davranış özellikleri, iyi bellek yetenekleri sağlayabilir. Derin kısım, Düşük Sıralı, yüksek boyutlu seyrek Kategorik özellikleri derin bir sinir ağı aracılığıyla öğrenir, örneğin uzun kuyruk kısmına sığar, yeni özellik kombinasyonlarını keşfeder ve modelin genelleme yeteneğini geliştirir. Aynı zamanda, metin ve başlık görüntüleri gibi geleneksel makine öğrenimi modelleriyle tanımlanması zor olan özellikler için, ifadeyi uçtan uca yöntemle önceden işlemek için karşılık gelen alt ağ modelini kullanabilir ve ardından füzyon öğrenimi gerçekleştirebiliriz.

Şekil 3 DeepWide model yapı diyagramı

3. Arama derinliği sıralama modelinin özellik mühendisliği uygulaması

Derin öğrenmenin ortaya çıkışı, algoritma mühendislerini birçok manuel madencilik ve özellik kombinasyonundan kurtarmıştır. Özellik mühendisliğinde uzmanlaşan algoritma mühendislerinin işsizlik riskiyle karşı karşıya kalabileceğine dair bir tartışma bile var. Bununla birlikte, derin öğrenmenin otomatik özellik öğrenmesi şu anda esas olarak CV alanına yansıtılmaktadır. CV alanındaki özellik verileri, resim yoğun düşük seviyeli özelliklerin pikselleridir.Derin öğrenme, evrişimli katmanın güçlü aracı aracılığıyla otomatik olarak düşük seviyeli özellikleri gerçekleştirebilir. Birleştirme ve dönüştürme, etki açısından, daha önce manuel olarak tanımlanan görüntü özelliklerinden gerçekten daha önemlidir. NLP alanında, Transformer'in ortaya çıkması nedeniyle, otomatik özellik madenciliğinde de önemli ilerleme olmuştur.BERT, çoklu NLP Görevlerinde Son Teknoloji efektleri elde etmek için Transformer'ı kullanır.

Bununla birlikte, CTR tahmini ve sıralama öğrenme alanı için, derin öğrenme, otomatik özellik madenciliğinde manuel özellik mühendisliğini ezme eğilimi henüz oluşturmamıştır, bu nedenle manuel özellik mühendisliği hala çok önemlidir. Tabii ki, özellik mühendisliğinde derin öğrenme ile geleneksel model özellik mühendisliği arasında bazı farklılıklar vardır.Çalışmalarımız esas olarak aşağıdaki hususlara odaklanmaktadır.

3.1 Özellik ön işleme

  • Özellik normalleştirme : Derin ağların öğrenilmesi neredeyse tamamen geri yayılmaya dayanır ve bu tür gradyan optimizasyon yöntemi, özelliklerin ölçeğine çok duyarlıdır. Bu nedenle, modelin daha iyi yakınlaşmasını sağlamak için özelliklerin normalleştirilmesi veya standartlaştırılması gerekir.
  • Özellik ayrımı : Sektör genellikle sürekli değerleri doğrudan özellik olarak nadiren kullanır, ancak özellikleri ayırır ve ardından bunları modele girer. Bir yandan, ayrıklaştırılmış özelliğin aykırı değerlere karşı daha sağlam olması nedeniyle, diğer yandan özelliğe doğrusal olmayan yetenekler katabilir. Dahası, ayrıklaştırma daha iyi yerleştirme sağlayabilir, esas olarak aşağıdaki iki ayrıklaştırma yöntemini kullanırız:
  • Eşit sıklık grubu: Örnek sıklığa göre eşit sıklıkta bölümleme gerçekleştirin. Eksik değerlere varsayılan bir bölüm değeri verilebilir veya ayrı olarak ayarlanabilir.
  • Ağaç modeli gruplama: Eşit frekans ayrıştırması, özellik dağılımı özellikle düzensiz olduğunda genellikle etkili değildir. Şu anda, ağaç modelini, segmentasyon değeri olarak ağacın çatallanma noktası ve kova numarası olarak karşılık gelen yaprak düğümü ile birlikte tek bir özellik, ağaç modelini eğitmek için kullanılabilir.
  • Özellik kombinasyonu : Daha zengin davranış temsilleri oluşturmak, model için önceden bilgi sağlamak ve modelin yakınsama hızını artırmak için iş senaryolarına dayalı temel özellikleri birleştirin. Tipik örnekler aşağıdaki gibidir:
  • Kullanıcı cinsiyeti ve kategori arasındaki çapraz özellikler, farklı cinsiyetlerden kullanıcıların kategori tercihlerindeki farklılıkları karakterize edebilir. Örneğin, erkek kullanıcılar "güzellikler" ile ilgili işletmelere daha az ilgi gösterebilir.
  • Zaman ve kategori arasındaki kesişim özelliği, farklı tüccar kategorilerinin zaman farkını açıklayabilir. Örneğin, çubukların geceleri tıklanma olasılığı daha yüksektir.

3.2 Her şey Gömülebilir

Derin öğrenmenin en büyük cazibesi, güçlü özellik temsil yeteneklerinde yatmaktadır.İnceleme arama senaryosunda, Meituan Brain tarafından sağlanan çok boyutlu kullanıcı davranışı verilerine, zengin satıcı UGC bilgilerine ve çok boyutlu ayrıntılı etiket verilerine sahibiz. Bu bilgileri birden çok vektör alanına yerleştirmek için derin öğrenmeyi ve kullanıcıların kişiselleştirilmiş tercihlerini ve tüccarların doğru portrelerini karakterize etmek için Gömme'yi kullanıyoruz. Aynı zamanda, vektörleştirilmiş Gömme, derinlik modelinin daha fazla genelleştirilmesi, kombinasyonu ve benzerlik hesaplaması için de uygundur.

3.2.1 Kullanıcı davranışı sırasının yerleştirilmesi

Kullanıcı davranışı dizisi (arama sözcüğü dizisi, tıklama satıcı sırası, tarama davranışı dizisi) zengin kullanıcı tercih bilgilerini içerir. Örneğin, bir kullanıcı "mesafe önceliği" ni seçtiğinde, mevcut kullanıcının muhtemelen anlık bir tüketim sahnesi olduğunu ve mesafeye daha duyarlı olduğunu bilebiliriz. Davranış sırası özelliklerinin genellikle aşağıdaki şekilde gösterildiği gibi üç erişim yöntemi vardır:

- Havuzlama : Seri Gömme işleminden sonra Toplam / Ortalama Havuzlama katmanına erişim. Bu yöntemin erişim maliyeti düşüktür, ancak davranışın zamanlama ilişkisini göz ardı eder.

- RNN : Toplama için döngüsel ağ kullanan LSTM / GRU erişimi. Bu yöntem, davranış dizisinin zamanlama ilişkisini dikkate alabilir; fiyat, artan model karmaşıklığıdır ve çevrimiçi tahmin performansını etkiler.

- Dikkat : Dikkat mekanizması, ağırlıklı Toplam Havuzlama olarak ifade edilen Gömme dizisinden sonra getirilir; LSTM / GRU ile karşılaştırıldığında hesaplama ek yükü daha düşüktür.

Şekil 4 Davranış sırası özelliklerine erişmenin çeşitli yöntemleri

Aynı zamanda, kullanıcıların uzun vadeli ve kısa vadeli tercihlerinin sıralama üzerindeki farklı etkilerini vurgulamak için, davranış sırasını zaman boyutuna göre ayırdık: Oturum, yarım saat, bir gün, bir hafta ve diğer ayrıntılar, bunlar da çevrimiçi avantajlar elde etti.

3.2.2 Kullanıcı kimliğinin yerleştirilmesi

Kullanıcı tercihlerini tanımlamanın daha yaygın bir yolu, kullanıcı kimliğini gömme işleminden sonra bir özellik olarak modele doğrudan entegre etmektir, ancak nihai çevrimiçi etki tatmin edici değildir. Kullanıcı davranışı verilerini analiz ederek, kullanıcı kimliği davranış verilerinin önemli bir kısmının nispeten seyrek olduğunu ve bunun da kullanıcı kimliği gömme işleminin yetersiz yakınsamasına ve kullanıcı tercih bilgilerinin yeterince açıklanamamasına neden olduğunu bulduk.

Airbnb'nin KDD 2018 hakkındaki makalesi, kullanıcı temel portrelerini ve davranış verilerini kullanarak bu sorun kümeleme kullanıcı kimliklerine bir çözüm sağlar. Airbnb'nin ana senaryosu, seyahat kullanıcıları için kısa süreli kiralama hizmetleri sunmaktır.Genel olarak kullanıcılar yılda 1-2 kez seyahat eder.Bu nedenle, Airbnb'nin kullanıcı davranışı verileri inceleme aramasından daha seyrek.

Şekil 5 Kullanıcı portresine ve davranış bilgilerine göre kümeleme

Yukarıdaki şekilde gösterildiği gibi, kullanıcı portre özellikleri ve davranış özellikleri ayrı ayrı bölümlere ayrılmıştır ve küme kimliğini elde etmek için özellik adları ve grup numaraları birbirine eklenir: US_lt1_pn3_pg3_r3_5s4_c2_b1_bd2_bt2_nu3.

Ayrıca Airbnb'ye benzer bir plan uyguladık, seyreklik sorunu çok iyi çözüldü ve bu da bazı ek faydalar sağladı. Dianping'de yerelleştirilmiş bir yaşam bilgisi hizmet platformu olarak, kullanıcıların davranışlarının çoğu ikamet ettikleri yerlerde yoğunlaşıyor ve bu da kullanıcılar yeni bir yere vardıklarında kişiselleştirilmiş sıralama eksikliğine yol açıyor. Bu kümeleme yöntemi sayesinde, aynı davranışa sahip kullanıcıları farklı yerlerde bir araya getirmek, siteler arası kişiselleştirme sorununun bir bölümünü de çözebilir.

3.2.3 Satıcı Bilgilerinin Yerleştirilmesi

Satıcı Gömme, satıcı kimliğini doğrudan modele ekleyebilir, Meituan Brain ayrıca çok sayıda UGC madenciliği yapmak için derin öğrenme teknolojisini kullanır, aşağıdaki şekilde gösterildiği gibi "iyi" gibi tüccarların zevkleri ve özellikleri gibi ince taneli duyguları tam olarak karakterize eder. "Otopark", "enfes yemekler" ve "tekrar ziyaret etmeye istekli" gibi etiketler.

Şekil 6 Meituan Brain tarafından tüccarlar için sağlanan ayrıntılı duygusal etiketler

Basit işletme yıldız derecelendirmesi ve yorum sayısı ile karşılaştırıldığında, bu bilgiler daha fazla açıya ve daha ince ayrıntıya sahiptir. Bu etiketleri yerleştirip modele giriyoruz:

  • Doğrudan bağlantı Etiket özelliklerinin doğrudan modelde birleştirilmesi. Bu erişim yöntemi, uçtan-uca öğrenmeye uygundur; ancak, giriş katmanının boyutuyla sınırlı olarak, yalnızca soyut varlık bilgisini kaybetmesi kolay olan Üst etiket alınabilir.
  • Doğrudan grup bağlantısı : Doğrudan bağlantı yöntemine benzer, ancak önce yemekler / stil / tat kategorileri gibi etiketleri sınıflandırın; her kategori İlk N öğesini alır ve ardından farklı boyutlarda anlamsal vektörler oluşturmak için Havuzlama gerçekleştirir. Gruplamadan doğrudan bağlantı ile karşılaştırıldığında, daha soyut bilgileri tutabilir.
  • Alt model erişimi : Satıcının gömme ifadesini öğrenmek için etiketi satıcı girişi olarak kullanmak için DSSM modelini kullanabilirsiniz. Bu yöntem, etiketin soyut bilgilerinin tutulmasını en üst düzeye çıkarabilir, ancak çevrimiçi uygulama ve hesaplama maliyeti nispeten yüksektir.

3.2.4 Gömme özelliklerinin yakınsamasını hızlandırın

Derin öğrenme sıralama modelimizde Gömme özelliğine ek olarak, Query, Shop ve kullanıcı boyutlarının hızlı bir şekilde birleşebilen çok sayıda güçlü bellek özelliği de bulunmaktadır. Gömme özelliği daha seyrek zayıf bir özelliktir ve yakınsama hızı yavaştır. Gömme özelliğinin yakınsamasını hızlandırmak için aşağıdaki çözümleri denedik:

  • Düşük frekans filtresi : Düşük frekanslı özellikler için filtre uygulamak, parametre miktarını büyük ölçüde azaltabilir ve aşırı uyumu önleyebilir.
  • Ön eğitim : Çok sınıflı modeller kullanarak seyrek Gömme özelliklerini önceden eğitin ve ardından ince ayar için modeli girin:
  • Birlikte oluşma ilişkisi altında tüccar Gömme oluşturmak için kullanıcı-satıcı tıklama ilişkisini modellemek için Word2vec ve Fasttext gibi denetlenmeyen modelleri kullanın.
  • Sorguyu ve satıcının Yerleştirmesini almak için Sorgu-satıcı tıklama davranışını modellemek için DSSM ve diğer gözetim modellerini kullanın.
  • Çoklu görev : Seyrek Gömme özellikleri için, aşağıdaki şekilde gösterildiği gibi ayrı bir alt kayıp işlevi ayarlayın. Şu anda, Gömme özelliğinin güncellenmesi iki kayıp fonksiyonunun gradyanına bağlıdır ve alt kayıp fonksiyonu, Gömme özelliğinin yakınsamasını hızlandırabilen güçlü özelliğe bağımlılıktan sapar.

Şekil 7 Çoklu Görev Gömme özelliği yakınsamasını hızlandırır

3.3 Resim özellikleri

Resimler, arama sonuçları sayfasında geniş bir görüntüleme alanı kaplar. Görselin kalitesi, kullanıcı deneyimini ve tıklamalarını doğrudan etkiler. Yorum yapılan bir satıcının ilk resmi, satıcılar ve kullanıcılar tarafından yüklenen resimlerden gelir ve kalite değişir. Bu nedenle resim özellikleri de sıralama modelinde önemli bir kategoridir. Mevcut inceleme araması esas olarak aşağıdaki görüntü özellikleri türlerini kullanır:

  • Temel özellikler : Resmin parlaklığı, rengi ve doygunluğu gibi temel bilgileri çıkarın ve özellik ayrıştırmasından sonra resmin temel özelliklerini elde edin.
  • Genelleme özelliği : ResNet50'yi görüntü özelliği çıkarmak için kullanın ve kümeleme yoluyla görüntünün genelleştirilmiş özelliklerini elde edin.
  • Kalite özellikleri : Görüntü kalitesinin Gömme özelliği olarak ara katmanın çıktısını çıkarmak için kendi geliştirdiği görüntü kalitesi modelini kullanın.
  • Etiket özellikleri : Resim sınıflandırması ve etiket özellikleri olarak resmin yemek, çevre, fiyat listesi, logo vb. Olup olmadığını çıkarın.

Şekil 8 Resim özelliğine erişim

4. Derin öğrenme Arama senaryolarına uygun Liste şeklinde sıralama algoritması: LambdaDNN

4.1 İşletme göstergeleri ve model optimizasyon hedefleri için Arama Boşluğu

Genel olarak, modelin tahmin hedeflerinde ve iş göstergelerinde her zaman bazı boşluklar olacaktır. Modelin tahmin hedefi iş hedefine daha yakınsa, modelin optimize edilmesini ve iş göstergelerinin de buna göre iyileştirilebilmesini o kadar iyi sağlayabilir; aksi takdirde model çevrimdışı göstergeler artacak, ancak çevrimiçi temel iş göstergeleri önemli ölçüde artmayacak, hatta olumsuz sorun. Endüstrideki derin öğrenme sıralamalarının çoğu, arama işi endeksi ile daha büyük bir boşluğa sahip olan kayıp işlevi olarak Pointwise's Log Loss'u kullanır. Aşağıdaki iki yönden yansıtıldı:

  • Arama hizmetleri için yaygın olarak kullanılan göstergeler QV_CTR veya SSR'dir (Oturum Başarı Oranı) ve kullanıcı aramalarının başarı oranıyla (tıklama davranışı olup olmadığı) daha çok ilgilenirler ve Pointwise'ın Günlük Kaybı daha çok tek bir öğenin tıklama oranıyla ilgilidir.
  • Arama işi, sayfanın başındaki sonuçların kalitesiyle daha fazla ilgilenirken, Pointwise yöntemi tüm konumlardaki örnekleri eşit olarak ele alır.

Şekil 9 Pointwise ve Listwise optimizasyon hedefleri arasındaki fark

Yukarıdaki nedenlere dayanarak, derin öğrenme modelinin kayıp işlevini optimize ettik.

4.2 Optimizasyon hedefi iyileştirmesi: Günlük Kaybından NDCG'ye

Sıralama modelinin optimizasyon hedefini arama iş endeksine olabildiğince yakın hale getirmek için kaybın Sorguya göre hesaplanması ve farklı lokasyonlardaki örneklerin farklı ağırlıkları olması gerekir. Günlük Kaybı ile karşılaştırıldığında, arama sistemlerinde yaygın olarak kullanılan NDCG endeksi (Normalize İndirimli Kümülatif Kazanç), arama işinin gereksinimlerine açıkça daha yakındır.NDCG'nin hesaplama formülü aşağıdaki gibidir:

Kümülatif kısım, pozisyona göre gelir kaybını temsil eden DCG'dir (İndirgenmiş Kümülatif Kazanç). Sorgu altındaki sonuç listesi l için, G fonksiyonu, genellikle üstel bir fonksiyon olan, karşılık gelen Doc'un korelasyon puanını temsil eder, yani G (lj) = 2lj-1 (Lj, {0, 1, 2} gibi korelasyon düzeyini temsil eder); işlevi konum kaybıdır, genellikle (j) = 1 / log (j + 1), Doc ve Query arasındaki korelasyon ne kadar yüksekse Konum ne kadar yüksekse, DCG değeri o kadar büyük olur. Ek olarak, genellikle sıralı liste sayfasının yalnızca ilk k bitlerinin etkisine dikkat ederiz, Zk, DCG @ k'nın maksimum olası değerini temsil eder ve normalleştirilmiş sonuç NDCG @ k'dır.

Sorun, NDCG'nin her yerde sorunsuz olmayan bir işlev olmasıdır ve hedef işlev olarak doğrudan onunla optimize etmek mümkün değildir. LambdaRank bir düşünme yolu sağlar: amaç işlevinin kendisini atlamak, doğrudan özel bir eğim oluşturmak, model parametrelerini eğimin yönüne göre düzeltmek ve son olarak NDCG'yi yerleştirme yöntemine ulaşmak. Bu nedenle, gradyanı derin ağ üzerinden geri yayabilirsek, NDCG'yi optimize eden derin bir ağ eğitebiliriz. Bu gradyan Lambda gradyanı ve bu gradyanla oluşturulan derin öğrenme ağına LambdaDNN denir.

Lambda gradyanını anlamak için LambdaRank'in tanıtılması gerekiyor. LambdaRank modeli Pairwise tarafından oluşturulmuştur.Genellikle aynı Sorgu altındaki tıklama örnekleri ve tıklama olmayan örnekler bir örnek çifti halinde oluşturulur. Modelin temel varsayımı aşağıdaki formülde gösterilmektedir, Pij'in aynı Sorgu altındaki Docj'den daha alakalı olmasına izin verin, burada si ve sj sırasıyla Doci ve Docj model puanlarıdır:

Kayıp fonksiyonu olarak çapraz entropiyi kullanarak, Sij örnek Çiftinin gerçek işaretini temsil etsin.Doci, Docj'den daha alakalı olduğunda (yani, Doci kullanıcı tarafından tıklanır, ancak Docj'ye tıklanmaz), Sij = 1, aksi takdirde -1; İşlev şu şekilde ifade edilebilir:

Örnek Çifti oluştururken, i'yi her zaman daha alakalı bir belge yapabiliriz. Şu anda, her zaman Sij1 vardır. Yukarıdaki denklemi değiştirip türevi türetmek, kayıp fonksiyonunun gradyanı:

Şimdiye kadar, numunelerin konum bilgileri, kayıp fonksiyonunun hesaplanmasında dikkate alınmamıştır. Bu nedenle, gradyan, Doci ve Docj konumlarını değiştirdiğinde NDCG değerindeki değişiklik dikkate alınarak daha da değiştirilir, aşağıdaki formül yukarıda bahsedilen Lambda gradyanıdır. Bu şekilde oluşturulan gradyanın yinelemeli olarak güncellendiği ve NDCG'yi optimize etme amacına nihayet ulaşılabileceği kanıtlanabilir.

Lambda gradyanının fiziksel anlamı aşağıdaki şekilde gösterilmektedir. Bunlar arasında mavi, daha alakalı (kullanıcı tarafından tıklanan) belgeleri temsil eder ve Lambda gradyanı, daha büyük bir iyileştirme elde etmek için (kırmızı okla gösterildiği gibi) daha yüksek Doc'a daha meyillidir. Lambda gradyan hesaplama yöntemi ile eğitimde, aynı sorgu altında Doc skorunu tahmin etmek için derin ağı kullanırız, Lambda gradyanını kullanıcının Dokümandaki gerçek tıklamasına göre hesaplar ve derin ağa geri yayarız, ardından NDCG'yi doğrudan tahmin eden derin bir ağ elde edebiliriz .

Şekil 10 Lambda gradyanının fiziksel anlamı

4.3 LambdaDNN'nin mühendislik uygulaması

LambdaDNN modelini eğitmek için TensorFlow dağıtılmış çerçevesini kullanıyoruz. Daha önce belirtildiği gibi, Lambda gradyanının aynı Sorgu altındaki örnekler üzerinde hesaplanması gerekir, ancak normal şartlar altında tüm örnekler her bir Çalışana rastgele karıştırılır. Bu nedenle, numuneyi önceden işlememiz gerekiyor:

  • QueryId ile karıştırın, aynı Sorgunun örneklerini toplayın ve aynı Sorgunun örneklerini bir TFRecord'a paketleyin.
  • Her sorgu tarafından hatırlanan Doküman sayısı farklı olduğundan, eğitim için veri çekerken değişken boyutlu Sorgu örneklerine dikkat etmeniz gerekir. TF, Mini-Batch'teki her bir numunenin aynı boyutunu otomatik olarak doldurarak büyük miktarda giriş verisi sağlar Anlamsız varsayılan değerlerin bir örneği. Burada iki işleme yöntemi sunuyoruz:
  • Anahtar, MR sürecinde işlenir, böylece birden çok Sorgu örneği bir araya toplanır ve ardından eğitim sırasında dinamik olarak bölümlere ayrılır.
  • Tamamlanan örneği okuyun, ayarlanan tamamlayıcı işaretine göre dizin bitini alın ve tamamlanan verileri çıkarın.

Şekil 11 Lambda gradyanının dağıtılmış uygulaması

Eğitim verimliliğini artırmak için, bir dizi optimizasyon işlemini keşfetmek ve doğrulamak için temel araştırma ve geliştirme platformu veri platformu merkeziyle yakın bir şekilde çalıştık:

  • Kimlik özelliklerinin eşlenmesi gibi işlemler ön işlemede tamamlanır ve birden fazla eğitim turu sırasında tekrarlanan hesaplamalar azalır.
  • Örneği TfRecord'a aktarın, verileri okumak ve işlemeyi hesaplamak için RecordDataSet yöntemini kullanın, Worker'ın hesaplama performansı yaklaşık 10 kat iyileştirildi.
  • Concat'ın birden çok Kategorik özelliği, Harita işlemlerini azaltan ve parametre dilim depolama hesaplamalarına yardımcı olan bir Gömme_Lookup işlemi gerçekleştirmek için Çok Sıcak Tensörde birleştirilir.
  • Seyrek Tensör, gradyan ve düzenlileştirme sürecini hesaplarken indeks değerini korur ve yalnızca değeri olan parçayı günceller.
  • Birden çok PS sunucusu, büyük ölçekli Tensor değişkenlerini parçalar halinde depolar, Çalışan senkronizasyon güncellemelerinin iletişim baskısını azaltır, güncelleme blokajını azaltır ve daha yumuşak bir gradyan güncelleme efekti elde eder.

Genel olarak, yaklaşık 3 milyar örnek boyutu ve yüz milyonlarca özellik boyutları için, bir tur yineleme yaklaşık yarım saatte tamamlanır. Paralel bilgi işlem kaynaklarını uygun şekilde artırmak, dakika düzeyinde eğitim görevlerini gerçekleştirebilir.

4.4 Optimizasyon hedeflerini daha da iyileştirme

NDCG'nin hesaplama formülünde, kaybın ağırlığı konuma göre üssel olarak değişir. Ancak, pozisyonlu gerçek pozlama tıklama oranı eğrisi ile NDCG'nin teorik kayıp değeri arasında büyük bir fark vardır.

Mobil sahne için, kullanıcı aşağı açılır kayan listeye göz attığında, kayan ekran ve sayfa çevirme ile görsel odak değişecektir. Örneğin, kullanıcılar ikinci sayfaya döndüklerinde genellikle yeniden odaklanırlar.Bu nedenle, ikinci sayfanın başındaki gösterim tıklama oranının aslında ilk sayfanın sonundakinden daha yüksek olduğunu göreceklerdir. NDCG'deki dizin konumu kaybına ince ayar yapmak için iki çözüm denedik:

  • Kayıp eğrisini gerçek maruz kalma tıklama oranına göre uydurma : Maruz kalma tıklama oranı verilerinin gerçek istatistiklerine göre, uydurma formülü NDCG'deki üstel kayıp formülünün yerini alır ve çizilen eğri Şekil 12'de gösterilir.
  • Konum Sapmasını konum kaybı olarak hesaplayın : Position Bias endüstride, kullanıcıların bir tüccara tıklama sürecinin iki adıma bölündüğü birçok tartışmaya sahiptir: gözlem ve tıklama: a. Kullanıcının önce satıcıyı görmesi gerekir ve tüccarı görme olasılığı konuma bağlıdır; b Bir işletmeyi gördükten sonra bir işletmeye tıklama olasılığı yalnızca işletmenin alaka düzeyiyle ilgilidir. A adımında hesaplanan olasılık Konum Sapması'dır. Bu içerikte tartışılabilecek pek çok şey var, bu yüzden burada ayrıntılara girmeyeceğim.

Şekil 12 Gerçek pozisyon kaybı ile teorik kayıp arasındaki fark

NDCG hesaplamasının yukarıda belirtilen dönüşümü yoluyla eğitilen LambdaDNN modeli, Base tree modeli ve Pointwise DNN modeline kıyasla iş göstergelerinde çok önemli bir iyileşmeye sahiptir.

Şekil 13 LambdaDNN çevrimdışı NDCG göstergeleri ile çevrimiçi PvCtr etkisinin karşılaştırması

4.5 Lambda Derin Sıralama Çerçevesi

Lambda gradyanını DNN ağı ile birleştirmeye ek olarak, aslında en yaygın ağ yapılarıyla birleştirilebilir. Daha fazla çapraz özellik öğrenmek için LambdaDeepFM ve LambdaDCN ağlarını LambdaDNN temelinde denedik; bunların arasında DCN ağı, Cross ile paralel bir ağ yapısıdır ve çapraz ağın her katmanının çıkış özellikleri ilk katmanınkilerle aynıdır. Orijinal giriş özellikleri, katmanlar arasındaki kalıntıları sığdırmak için her öğrenme özelliği çaprazlama katmanının eşleştirilmesine eşdeğer olan, çiftler halinde açıkça çaprazlanır.

Şekil 14 DCN model yapısı

Çevrimdışı karşılaştırma deneyleri, Lambda gradyanı ve DCN ağı kombinasyonunun, DCN ağının özelliklerine tam anlamıyla hakim olduğunu ve basit polinom çapraz tasarımın, modelin eğitim etkisini etkili bir şekilde iyileştirdiğini göstermektedir. NDCG göstergelerinin karşılaştırma etkisi aşağıdaki şekilde gösterilmektedir:

Şekil 15 Lambda Kaybı ve DCN ağ sonuçlarının etkisi

5. Derin öğrenme sıralama teşhis sistemi

Derin öğrenme sıralama modeli iş göstergelerini büyük ölçüde iyileştirmiş olsa da, derin öğrenme modelinin "kara kutu özelliği" çok büyük açıklama maliyetlerine neden oldu ve ayrıca arama işine bazı sorunlar getirdi:

  • Günlük arama Kötü Durum hızlı yanıt veremez : Arama işi, kullanıcılardan, işletmelerden ve patronlardan gelen birçok "ruh işkencesi" ile başa çıkmalı, "Bu sipariş neden böyle?" Ve "Bu tüccar neden kalite açısından bana benziyor ama benden önde". Derin öğrenme sıralama modeline ilk geçiş yaptığımızda, böyle bir soruna kapıldık ve sorunu bulmak çok zaman aldı.
  • Kötü Durumdan kurallar öğrenilemiyor ve özetlenemiyor ve optimize etmeye devam ediliyor : Sıralama modelinin neden kötü bir sıralama sonucu verdiğini anlamazsanız, doğal olarak modelde neyin yanlış olduğunu bulamayacak ve modelin ve özelliklerin gelecekteki optimizasyon yönünü belirlemek için Kötü Durum'a dayalı kuralları özetleyemeyeceksiniz.
  • Modelin ve özelliklerin tam olarak öğrenilip öğrenilmediğini bilmenin bir yolu yok : Bazı yeni özellikleri araştırdıktan sonra, genellikle özelliğin çevrimiçi olup olmadığına, çevrimdışı değerlendirme dizininin iyileşip iyileşmediğine göre karar veririz. Ancak geliştirilmiş bir özellik olsa bile bu özelliğin performansının yeterince iyi olup olmadığını bilemeyiz. Örneğin, model bağlantı elemanının mesafe özelliği, belirli mesafe aralığında mesafe ne kadar uzak görünürse, puan o kadar yüksek olur.

Bu sorunlar potansiyel olarak kullanıcıların anlayamayacağı bazı sıralama sonuçları getirecektir. Derinlik sıralaması modelini açıkça teşhis etmemiz ve açıklamamız gerekir.

Makine öğrenimi modellerinin yorumlanabilirlik araştırmasıyla ilgili olarak, endüstri şimdiden bazı keşifler yaptı. Kireç (Yerel Yorumlanabilir Model-Agnostik Açıklamalar), aşağıdaki şekilde gösterildiği gibi bunlardan biridir: Tek bir numunenin özelliklerinde bozulmalar oluşturarak komşu numuneler oluşturun ve modelin tahmin davranışını gözlemleyin. Bozulan bu veri noktalarının orijinal verilere olan uzaklığına göre ağırlıklar atanır ve öğrenmelerine göre yorumlanabilir bir model ve tahmin sonucu elde edilir. Örneğin, bir duygu sınıflandırma modelinin "Bu filmden nefret ediyorum" u olumsuz bir duygu olarak nasıl öngördüğünü açıklamamız gerekirse, duyguyu tahmin etmek için bazı kelimeleri çıkarır veya bazı örnekler oluştururuz. Sonunda "Bu filmden nefret ediyorum" a karar verdiğimizi göreceğiz. "Filmler", "nefret" kelimesinden kaynaklanan olumsuz duygulardır.

Şekil 16 Lime tercümanın çalışma prensibi

Lime yorumlayıcı fikrine dayanarak, bir dizi derin model yorumlayıcı aracı geliştirdik - Athena sistemi. Şu anda Athena sistemi, Pairwise ve Listwise olmak üzere iki çalışma modunu desteklemektedir:

  • İkili mod, aynı listedeki iki sonuç arasındaki göreceli sıralamayı açıklamak için kullanılır. Numunenin karakteristiklerini yeniden atama veya değiştirme gibi işlemleri gerçekleştirerek, numunenin puanlama ve sıralamasındaki değişim eğilimini gözlemleyerek ve mevcut numunenin sıralamasının beklentileri karşılayıp karşılamadığını teşhis ederek. Aşağıdaki şekilde gösterildiği gibi, sağdaki özellik sıralaması paneli aracılığıyla, "Nanjing Büyük Marka" sıralamasının neden "Golden Times Shunfeng Limanı" ndan daha yüksek olduğunu hızlı bir şekilde teşhis edebilirsiniz. İlk satırdaki özellik sıralama bilgisi, "Golden Times Shunfeng Limanı" 1.3 km mesafe özelliği, "Nanjing Büyük Marka" nın 0.2 km mesafe özelliği ile değiştirilirse, sıralamanın 10 artacağını; "Nanjing Büyük Marka" sıralamasında ilk sırada yer alan belirleyici faktör yakın mesafedir.
  • Listwise modu temel olarak Lime'ın çalışma moduna benzerdir Pertürbasyon örnekleri tüm listenin örneklerinden üretilir ve doğrusal sınıflandırıcı modeli, modeli yorumlama amacına ulaşmak için özelliklerin önemini çıkarmak üzere eğitilir.

Şekil 17 Derin öğrenme sıralama teşhis sistemi: Athena

6. Özet ve Görünüm

2018'in ikinci yarısında, Yorum Arama, bir ağaç modelinden büyük ölçekli bir derin öğrenme sıralama modeline kapsamlı bir yükseltmeyi tamamladı. Ekip, derin öğrenme özelliği mühendisliği, model yapısı, optimizasyon hedefleri ve mühendislik uygulamasında bazı keşifler yaptı ve temel göstergelerde önemli kazanımlar elde etti. Elbette gelecekte keşfedilebilecek birçok nokta var.

Özellik düzeyinde, çok sayıda bilgi grafiği tarafından sağlanan etiket bilgileri tam olarak araştırılmamıştır. Kullanım açısından bakıldığında metin etiketleri şeklindeki basit erişim bilgi grafiğinin yapısal bilgisini kaybetmektedir, bu nedenle Grafik Gömme ileride denenecek bir yöndür. Ekip aynı zamanda Sorgu ve tüccar metninin derin anlamsal ifadesi üzerinde bazı çalışmalar yapmak için BERT'i de kullanacak.

Model yapısı düzeyinde, mevcut çevrimiçi yapı hala tam olarak bağlı DNN ağ yapısı tarafından hakimdir, ancak DNN ağ yapısı, düşük seviyeli verilerin öğrenilmesinde DeepFM ve DCN kadar iyi değildir. Şu anda, LambdaDeepFM ve LambdaDCN çevrimdışı avantajlar elde etti ve ağ yapısı gelecekte daha da optimize edilecek.

Model optimizasyon hedefleri açısından, Lambda Loss kaybı hesaplarken yalnızca tıklama içeren ve sorgu içinde tıklama içermeyen örnek çiftleri dikkate alır. Çok sayıda tıklamasız sorgu atılır.Aynı zamanda aynı kullanıcının farklı sorgular altında kısa sürede davranışı da dahil edilir. Bazı bilgiler kullanılabilir. Bu nedenle, ekip şu anda Log Loss ve Lambda Loss'u kapsamlı bir şekilde ele alan ve modelin Multi-Task ve Shuffle örnekleriyle farklı boyutlara göre tam olarak öğrenmesine olanak tanıyan bir modeli araştırmaktadır. Şu anda, bazı faydaları çevrimdışı olarak elde ettik.

Son olarak, Google'ın açık kaynak TF Ranking tarafından yakın zamanda önerilen Groupwise modeli de bize biraz ilham verdi. Şu anda Listwise yönteminin çoğu sadece model eğitim aşamasında yansıtılmaktadır.Puanlama tahmin aşamasında hala Pointwise yani sadece mevcut üye işyerinin özellikleri dikkate alınacak ve liste bağlamının sonuçları dikkate alınmayacaktır.Gelecekte de bu yönde olacağız. Biraz keşif yapın.

Referans

  • Meituan Beyni: Modelleme Yöntemi ve Bilgi Grafiğinin Uygulanması
  • Öneri Sistemleri için Geniş ve Derin Öğrenme
  • Görüntü Tanıma için Derin Artık Öğrenme
  • Tek İhtiyacınız Olan Dikkat
  • Yerel Yorumlanabilir Mod l- Agnostik Açıklamalar: KİREÇ
  • RankNet'ten LambdaRank'e LambdaMART'a: Genel Bakış
  • Tarafsız Öğrenmenin Sıralaması İçin Yeni Bir Algoritma
  • Taraflı Geribildirim ile Tarafsız Sıralamaya Göre Öğrenme
  • Airbnb'de Arama Sıralaması için Yerleştirmeleri kullanarak Gerçek Zamanlı Kişiselleştirme
  • Maden gelmezse grafik kartı düşmeyecek! Tekrar tekrar düşündüm ve GTX1050'ye girdim
    önceki
    9.9 ücretsiz Apple iPhone7 telefon kılıfı çalışabilir mi? Herkesin ne dediğini görün
    Sonraki
    Yeni iPhone burada! Ancak en pahalı iPhone X, netizenler tarafından hacklendi
    Meituan'da yoğun öğrenim uygulaması "Sanırım beğendin"
    I5 performansı I3'ten daha iyi değil mi? Ama yine de i54590 işlemciyi kullanıyorum
    Qualcomm Apple ile alay ediyor: Android yalan söylüyor
    Meituan Beyni: Modelleme Yöntemi ve Bilgi Grafiğinin Uygulanması
    Kişilik inanılmaz, böyle bir Apple iPhone7 cep telefonu kılıfı ile geri dönüş oranı çok yüksek
    Üç yıl daha fırlatıp atın, önce eski grafik kartının tozunu atmayı unutmayın
    Yatai: Temelde ilk takım personel ayarlamasını tamamlayın, ayrılan dört oyuncuyu kutsayın
    Bu sakız pilidir, birçok üst düzey müzik dinleme eseri onu kullanır
    10 yıl boyunca 1.8 milyon kiralamak mı? Emlak şirketlerinin "ev sahibi" olması mümkün mü?
    Apple iPhone7'nin çıplak metal hissini geri kazanmasına yardımcı olun, bu cep telefonu kılıfları süper ince ve kullanımı kolay
    Makineler öğrenmiyor: kullanıcı davranışı-item2vec ve uygulamalarının içeriğini anlama
    To Top