Farklı kağıt yorumları: 2018 KDD en iyi makalesi "Airbnb'de Gömme"

AI Technology Review Press: Bu makalenin yazarı Wu Haibo ilk olarak Zhihu'da yayınlandı ve AI Technology Review tarafından yeniden basılması için yetki verildi.

Airbnb'nin Airbnb'de Arama Sıralaması için Katıştırmayı kullanarak Airbnb'nin Gerçek Zamanlı Kişiselleştirme makalesi, 2016'da Google'ın WD'ye benzeyen, süslü değil, ancak çok pratik ve okumaya değer KDD ADS Yolundan en iyi makaleyi aldı. Neyse ki bildiğim kadarıyla yerli birinci kademe ekibinin uygulama seviyesi kağıtta anlatılanlardan daha kötü değil ve WD.Ayrıca makale yayınlanmadan önce benzer sonuçlar veren yerli takımlar da var.Bu tür senaryoları tavsiye ederken, Herkes aynı seviyede. Umarım gelecekte yerli şirketler de kulağa hoş gelenleri değil, gerçekten pratik bazı makaleler yayınlarlar.

Word2vec çıktığından beri çeşitli alanlarda hızlı bir şekilde uygulandı, abartılı açıklamalar, her şey gömülebilir. NLP'de bir zorluk, kelimelerin nasıl tanımlanacağıdır.Geleneksel olarak, one-hot ve n-gram gibi çeşitli yöntemler vardır, ancak kelimeler arasındaki anlamsal ilişkiyi ifade etmek zordur. Basit terimlerle, kelimeler arasındaki mesafe ilişki. Her kelimenin Gömme vektörünü kelime tablosu uzayındaki konumu olarak yorumluyoruz, yani pozisyon hangi kelimelerin ilişkili olduğunu ve hangi kelimelerin olmadığını açıklayabilir.

E-ticaret ve haber gibi internet senaryoları için, bilgisayarın bu varlıkların anlamını anlaması için uygun bir ifade bulmamız da bizim için zor. Geleneksel yöntem, genellikle haberlerde eğlence, spor, dedikodu vb. Varlıkları etiketlemektir. Yüksek kaliteli bir etiketleme sistemi kurmanın maliyetinden bahsetmiyorum bile, gerçek etkisi açısından, sadece yetersiz olarak kabul edilebilir. NLP'ye benzer şekilde, ürünün kendisi veya haberin kendisi gömülmesi gereken bir varlık olarak kabul edilebilir. Gömme çözümleri uygularken, genellikle aşağıdaki sorunlarla yüzleşmemiz gerekir:

1. Gömme'nin neyi ifade etmesini istiyorsunuz, yani bütünlüğü oluşturmak için hangi yöntemi seçmelisiniz

2. Vektör yerleştirmenin bir şeyler öğrenmesine nasıl izin verilir

3. Vektörlerin etkisi nasıl değerlendirilir

4. Çevrimiçi nasıl kullanılır

Aşağıda yukarıdaki soruları makalenin bakış açısına göre cevaplayacağız, seviye sınırlıdır, hata varsa lütfen belirtiniz.

Gömme'nin neyi ifade etmesini istiyorsunuz?

Daha önce Gömme vektörünün nihayet belirli bir uzaydaki varlıkların uzaklık ilişkisini ifade edebileceğinden bahsetmiştik, ancak bu uzayın ne olduğunu söylemedik. NLP alanında bu sorunun cevaplanmasına gerek yoktur, var olan çeşitli metin külliyatından oluşan anlamsal uzaydır. Diğer senaryolarda, örnek olarak e-ticareti ele alarak, ürün kimliğini doğrudan yerleştireceğiz Eğitim külliyatı kullanıcının davranış günlüğünden gelir, bu nedenle bu alan kullanıcının ilgi alanlarından oluşur. Farklı davranış günlükleri, tıklama davranışları, satın alma davranışları ve kullanıcı ilgi alanlarını ifade etme gibi ifade edilen farklı ilgi alanlarına sahiptir. Bu nedenle, emtia Gömme vektörünün son işlevi, kullanıcının faiz alanındaki farklı malların konumunu ifade etmektir.

Pek çok öğrenci çeşitli word2vec varyantlarını denemek için çok zaman harcar, ancak derlem oluşturmanın ayrıntılarına zaman ayırmak daha iyidir. Her şeyden önce, külliyatın büyük olması gerekiyor. Kağıt, 800 milyon arama tıklaması oturumu kullandıklarından bahsetti. Gömme uygulamamızda, etkili olması için külliyatın en az 100 milyonun üzerinde olması gerekir. İkincisi, oturumun tanımı çok önemlidir. Word2vec, kelime vektörlerini hesapladığında, bağlamıyla çok büyük bir ilişkiye sahiptir.Kullanıcı davranış günlüklerinde, sözcüklerin bağlamını ayırt etmek için noktalama eşleşmeleri, paragraflar ve diğer işaretler bulunur.

Örneğin, kullanıcının tıklama davranışını bir bütün olarak kullandığımızı varsayalım. Bir kullanıcının liste (ürün A, ürün B, ürün C, ürün D) gibi geçmiş tıklama davranışını aldığımızda, büyük olasılıkla B ürününün kullanıcı Kıyafet arandıktan sonra tıklanan son ürün ve C ürünü, kullanıcının cep telefonunu aradıktan sonra tıkladığı üründür.Ayrım yapmazsak model B ve C'nin bir bağlam içinde olduğunu düşünecektir.

Spesifik oturum tanımı, kendi iş gereksinimlerinize dayanmalıdır.Standart bir cevap yoktur.Örneğin, yukarıdaki örnekte, kullanıcıların ifadelerini ilgi çekici noktalara göre değiştirmek isterseniz, bu da mümkündür. Airbnb kuralları kağıtta verilmiştir:

Ardışık iki kullanıcı tıklaması arasında 30 dakikadan fazla bir zaman aralığı olduğunda yeni bir oturum başlatılır.

Makalede, tıklama davranışının kısa vadeli ilgiyi temsil ettiğini ve rezervasyon davranışının uzun vadeli ilgiyi temsil ettiğini ve Gömme vektörünün ayrı olarak yapılandırıldığını belirtmek gerekir. Sektörde uzun vadeli ve kısa vadeli çıkarlarla ilgili birçok tartışma var. Anladığım kadarıyla uzun vadeli çıkarlar daha istikrarlı, ancak tek bir kullanıcının davranışları doğrudan eğitilemeyecek kadar seyrek. Genellikle kullanıcılar eğitimden önce kümelenecek.

Vektör yerleştirmenin bir şeyler öğrenmesine nasıl izin verilir?

Model ayrıntıları

Normal şartlar altında, doğrudan Word2vec kullanıyoruz, etki oldukça iyi. Airbnb'nin ticari özelliklerine göre, makalenin yazarı, esas olarak daha parlak olan amaç işlevinin ayrıntılarına odaklanarak bazı dönüşümler yaptı. İlk önce bir resme bakın:

Ana fikir, küresel bir bağlam eklemektir.Sıradan word2vec'in eğitim sürecinde, kelimenin içeriği pencere kaydırıldıkça değişir. Bu genel bağlam değişmez. Orijinal açıklama aşağıdaki gibidir:

Her ikisi de bağlamsal benzerliği yakalama açısından kullanışlıdır, ancak ayrılmış oturumlar optimizasyonu her adımda yalnızca komşu tıklanan listeleri değil, aynı zamanda nihai olarak rezerve edilen listelemeyi de tahmin edecek şekilde uyarlamak için kullanılabilir. Bu uyarlama rezerve edilenler eklenerek sağlanabilir. bağlam penceresi içinde olup olmadığına bakılmaksızın her zaman tahmin edilecek şekilde genel bağlam olarak listelenir.

Formülüne tekrar bakın, anlamak daha kolay:

Formülün son terimi ile ilk iki terim arasındaki farka dikkat edin. Biriktirme işaretinin altında, D'yi değiştirmede herhangi bir kısıtlama yoktur. Anladığım kadarıyla word2vec'in algoritmasının denetimsiz olduğu ve Airbnb'nin işi nihayetinde kullanıcıların Rezervasyon yapıp bir kısıtlama ekleyerek öğrenilen Gömme vektörünü iş hedefine daha da yaklaştırabileceğini umuyor. Arkasında bir formül var, fikir benzer, bu yüzden tekrar etmeyeceğim.

Bu fikir başka bir basit çok nesneli füzyon stratejisi olarak da anlaşılabilir.Başka bir Ali'nin makalesi de okumaya değer.Bunu çözmek için Tüm Alan Çok Görevli Modeli (ESMM) önerir.

Veri seyrekliği temel zorluktur

Word2vec algoritması sihirli değildir. Hala varlığın ortaya çıkış sıklığına dayanır. Zeki bir kadının pirinçsiz yemek pişirmesi zordur. Varlığın kendisi külliyatta çok az görünüyorsa, iyi bir ifade öğrenmek kolaydır. Bir keresinde Ali'nin sınıf arkadaşlarıyla Embedding'ın lansmanının etkisinin analizi hakkında konuştum ve etkinin herkesin anladığı uzun kuyruklu ürünlerden değil, orta bölgedeki ürünlerin ifadesinden geldiğine inandım. Baş ürünün bol verisi nedeniyle i2i gibi algoritmalar da iyi öğrenebilirken, kuyruk kısmı seyrek veri nedeniyle çok seyrek ve genellikle iyi öğrenilemez.Bu nedenle, gömme teknolojisi iyi getiri elde edecekse, bir parti merkezi ürün olması gerekir.

Yazıda ayrıca varlık üzerinde bir frekans süzgeci yapacaklarından bahsediliyor ve süzgeç koşulu 5-10 oluşumdur. İlginç olan, bunu daha önce Toutiao'dan öğrencilerle konuşmuştum ve orada da benzer frekansları var. Bizimki burada biraz daha büyük olacak. Bunu çok dikkatli yapmadım ve bu değer değişikliğinin etki üzerindeki etkisini araştırmadım, bu alanda deneyiminiz varsa lütfen belirtiniz.

Aynı zamanda çok yaygın olan başka bir yöntem de, kimlikleri seyrek olarak kümelemektir. Kağıt bir kural önermektedir, ancak Airbnb'nin işi ile çok derinden bağlantılı. Diğer işletmeleri doğrudan uygulamak zordur, ancak referans için kullanılabilir. Ali, bu sorunu hafifletmek için bir tür altı sıcak kodlamadan bahsetti, ancak etkisini bilmiyorum. Doğrudan hash de yapabilirsiniz.Kişisel olarak bunun kayıplı olacağını düşünüyorum, ancak tensorflow resmi web sitesi eğitiminde, özellik sütunları bölümünde kayıpsız olan Hashed Column hakkında bir paragraf var:

Bu noktada, haklı olarak şunu düşünebilirsiniz: "Bu çılgınlık!" Sonuçta, farklı girdi değerlerini daha küçük bir kategori kümesine zorluyoruz. Bu, muhtemelen ilgisiz iki girdinin aynı kategoriye eşleneceği ve sonuç olarak Aynı şey sinir ağı için de geçerlidir.Aşağıdaki şekil bu ikilemi göstermektedir ve hem mutfak eşyalarının hem de sporun kategori (hash kova) 12'ye atandığını göstermektedir:

Makine öğrenimindeki pek çok mantığa aykırı fenomende olduğu gibi, hashing uygulamasında sıklıkla işe yarıyor. Bunun nedeni, hash kategorilerinin modele bir miktar ayrım sağlamasıdır.Model, mutfak gereçlerini spordan daha fazla ayırmak için ek özellikler kullanabilir.

Çevrimdışı etki nasıl değerlendirilir

Vektör değerlendirme yöntemi temelde kümeleme ve yüksek boyutlu görselleştirme gibi bazı yöntemleri kullanır, bu makalede açıklanan fikir ve benim başka bir makalem Mogujie'de vektör geri çağırma uygulaması (Https://zhuanlan.zhihu.com/p/35491904) daha benzer. Airbnb'nin araçları daha iyi sonuç verdiğinde, değerlendirmeye yardımcı olmak için doğrudan bir sistem uyguladı.

Makalenin ayrıca gerçek kullanıcı geri bildirim verileriyle karşılaştırmak için sıralama için yerleştirme vektörleri kullanan bir değerlendirme yöntemi önerdiğini ve airbnb Zhihu'nun resmi hesap açıklamasını doğrudan alıntı yaptığını belirtmekte fayda var:

Daha spesifik olarak, son tıklanan listeleri ve kullanıcının nihayet rezerve ettiği listeler dahil sıralanması gereken aday listeleri elde ettiğimizi varsayalım; tıklanan listelerin ve gömme alanındaki aday listelerin kosinüs benzerliğini hesaplayarak, Aday evleri sıralayabilir ve son rezerve edilen evin sıralamadaki konumunu gözlemleyebilir.

Yukarıdaki şekilden de görülebileceği gibi, d32 book + neg en iyi etkiye sahiptir.

Çevrimiçi nasıl kullanılır

Makalede defalarca bahsedilen gerçek zamanlı kişiselleştirme zor değildir. Kullanıcıların gerçek zamanlı davranışlarını toplayan bir sistemi desteklediği sürece, gerçek zamanlı kişiselleştirmeyi gerçekleştirmek için birçok çözüm vardır. En basit olanı, kullanıcının son tıklama dizisinde varlık Gömme vektörünü ağırlıklandırmaktır. Ortalama ve ardından sıralama için aday kümesindeki varlıklarla kosinüs mesafesini hesaplayın. Çevrimiçi olarak kullanılan daha fazla ayrıntı var ve kağıtta iki parlak nokta daha var:

  • Çok varlıklı gömme vektör uzayı tutarlılık sorunu

Bu, kolayca gözden kaçan bir sorundur.Gömme için birden fazla varlığa ihtiyaç duyulduğunda, tek boşlukta olup olmadıklarına dikkat edilmelidir, aksi takdirde mesafe hesaplaması çok tuhaf hale gelecektir. Airbnb uzun vadeli ilgi alanları oluşturduğunda, kullanıcıları ve listeleri kümeler. Asıl açıklama aşağıdaki gibidir:

Aynı vektör uzayında user_type ve listin_type yerleştirmelerini öğrenmek için user_type'ı rezervasyon oturumlarına dahil ediyoruz.

Bu, ikisini eğitim için doğrudan bir külliyatın içine koymak ve tek bir alanda olmalarını sağlamaktır. Bu şekilde hesaplanan kosinüs mesafesi pratik bir öneme sahiptir.

  • Olumsuz geribildirim

İster tıklama davranışı ister işlem davranışı olsun, kullanıcıların büyük bir maliyet ödemesini gerektiren olumlu geri bildirimler ve nadiren kullandığımız başka bir örtük olumsuz geri bildirimdir (esas olarak gürültü çok güçlü olduğu için). Mevcut ana akım kişiselleştirme, benzer içerik nedeniyle en çok eleştirildi. Benzer içeriğin kullanıcılara sunulması, yaygın olarak doğrulanmış ve etkili bir strateji olmuştur, ancak kullanıcıların ilgi alanlarının zamanında ve etkili bir şekilde değişip değişmediğini, bu da kullanıcı deneyimine zarar verip vermediğini algılayamıyoruz. Bu nedenle, olumsuz geribildirim iyi bir fikirdir, airbnb, atlanan listeleme_idleri stratejisini verir.

Kağıt adresi:

https://www.kdd.org/kdd2018/accepted-papers/view/real-time-personalization-using-embeddings-for-search-ranking-at-airbnb

Bu çift ekran, göz korumasından daha fazlasıdır! Nubia X canlı uygulamalı
önceki
Yuan Weihao bir aslan ve He Guangpei bir tavşandır TVB'nin erkek tanrısı hangi hayvan?
Sonraki
360 Tian Ge'ye yatırım yapıyor, Tian Ge, Huajiao'ya yatırım yapıyor, Zhou Hongyi'nin sermaye artırma becerilerinden biri?
Honor Magic 2 setleri nasıl giyilir, Zhao Ming resmi cevabı verdi: neden olmasın?
Yeni lanse edilen Michelin Bingchi 3+ kar ve buzda sürüşün tadını çıkarın
Gigi Lai ile 22 yıllık yakınlığın ardından, Ekin Chengin kadın ilişkileri her zaman bir eklenti oldu!
"Ode to Joy 2" OST'sinin kodunu çözme: Maliyet% 1'den az, yüz milyonlarca Kore dizisinden ne kadar uzakta?
Çift ekran, size en iyi tam ekran deneyimini sunar! Nubia X güzel resimler
Kullandıktan sonra sırt ağrınız olacak mı? Çocuklar aptallaşacak mı? Ağrısız doğum çok daha az korkutucu
Özet Fan Shuiyong, Pekin Kentsel Meteoroloji Enstitüsü: Sayısal Hava Tahminine Giriş
Bir çaylaktan milyon dolarlık maaşı olan bir senariste, CloudLlywood nasıl bir platform oluşturur?
Vivo City for the City, X23 ile efsanevi "Eden" i keşfetmek için Seyşeller'e gitti
2019'da Hong Kong yapımı en iyi 10 filmin envanteri: Ah Sa, film için dövüştükten sonra vücuduna tekrar ihanet mi etti?
YEEZY POWERPHASE önümüzdeki yıl sadece 90 dolar mı? ! Birlikte duyurulan gizli renkler de var!
To Top