Alibaba, DIN ve Google WDL'den daha iyi olan Taobao e-ticaret önerisi için Transformer kullanıyor

Derin öğrenmeye dayalı yöntemler, endüstriyel öneri sistemlerinde (RS'ler) yaygın olarak kullanılmaktadır. Önceki çalışma genellikle gömme ve MLP paradigmalarını benimser: orijinal özellikler düşük boyutlu vektörlere gömülür ve daha sonra nihai öneri sonuçlarını elde etmek için MLP'ye girilir. ancak, Bu çalışmaların çoğu, kullanıcı davranışının sürekliliğini göz ardı ederek yalnızca farklı özellikleri birbirine bağlar. . Kısa süre önce, Alibaba'nın Arama Önerileri Bölümü yeni bir çalışma yayınladı, İlk kez, güçlü Transformer modeli, e-ticaret senaryolarının öneri sisteminde kullanılmak üzere kullanıcı davranış dizilerinin sıra sinyallerini yakalamak için kullanılıyor. . Model, Taobao'da uygulandı Deneysel sonuçlar, iki taban çizgisine kıyasla, çevrimiçi tıklama oranının (TO) önemli ölçüde arttığını gösteriyor. Bu makale, AI Frontline hakkındaki 79. makale için bir kılavuzdur.Bu araştırma çalışmasını ayrıntılı olarak yorumlayacağız. Makalenin yazarları AI Frontline tarafından derlenen Alibaba Qiwei Chen, Huan Zhao, Wei Li, Pipei Huang, Wenwu Ou'dur. Orijinal makaleye bağlantı: https://arxiv.org/pdf/1905.06874.pdf

Giriş

Öneri sistemleri (RS'ler) sektörde on yıldan fazla bir süredir popülerdir. Son beş yılda, derin öğrenmeye dayalı yöntemler sektörde yaygın olarak kullanılmaktadır. Örneğin, Google'ın geniş ve derin modeli ve Airbnbnin "Gerçek zamanlı kişiselleştirme arama sıralaması için yerleştirmeler ". Ali e-ticaret platformunda, RS'ler GMV ve gelir için anahtar bir motor haline geldi ve zengin e-ticaret senaryolarında çeşitli derin öğrenmeye dayalı öneri yöntemleri uygulandı. RS'ler Alibaba'da iki aşamaya ayrılır: eşleşme ve sıralama. Eşleştirme aşamasında, kullanıcı ile ürün arasındaki etkileşime bağlı olarak, aday set olarak bazı benzer ürünler seçilir ve ardından, kullanıcının belirli bir aday ürün setini tıklama olasılığını tahmin etmek için ince ayarlı bir tahmin modeli öğrenilir.

Bu yazıda Alibaba Taobao'nun sıralama aşamasına odaklanıyoruz. Ali e-ticaret platformunda milyonlarca aday ürün bulunmaktadır.Bir kullanıcının belirli bir aday ürüne tıklama olasılığını, kullanıcının geçmiş davranışına göre tahmin etmemiz gerekir. Derin öğrenme çağında, gömme ve MLP, endüstriyel RS'lerin standart paradigması haline geldi: çok sayıda orijinal özellik, vektör olarak düşük boyutlu bir alana gömülür ve daha sonra, kullanıcıların yapıp yapmayacağını tahmin etmek için tamamen bağlantılı bir katmana, yani çok katmanlı bir algılayıcıya (MLP) giriş yapılır. Bir öğeye tıklayın. Temsili işi, Google'ın geniş kapsamlı ağı (WDL) ve Alibaba'nın derin ilgi ağıdır (DIN).

Taobao'da, ürün kategorileri ve marka özellikleri, ürün istatistiksel özellikleri ve kullanıcı profili özellikleri gibi çeşitli özelliklerin Gömme ve MLP paradigmalarını kullandığı WDL ağına dayalı bir sıralama modeli oluşturuyoruz. Bu çerçevenin başarısına rağmen, özünde tatmin edici olmaktan uzaktır, çünkü pratikte çok önemli bir sinyali, yani kullanıcı davranışı dizisinin arkasındaki sıra sinyalini, yani kullanıcı sırayla ürüne tıklar. Aslında bu sıra, kullanıcının gelecekteki tıklamalarını tahmin etmek için çok önemlidir. Örneğin, Taobao'da bir iPhone satın aldıktan sonra, kullanıcılar genellikle telefon kılıfına tıklar veya bir pantolon satın aldıktan sonra uygun ayakkabıları bulmaya çalışırlar. Bu anlamda, Taobao sıralama aşamasında bir tahmine dayalı model uygularken bu faktörü dikkate almamak sorunludur. WDL'de, yalnızca tüm özellikleri birbirine bağlar, ancak kullanıcı davranış dizileri arasındaki sıra bilgilerini yakalamaz. DIN, aday öğeler ile kullanıcının önceki tıklamaları arasındaki benzerliği yakalamak için dikkat mekanizmasını kullanmayı önerdi, ancak kullanıcının davranış dizisinin arkasındaki sıranın doğasını dikkate almadı.

Bu nedenle, bu çalışmada, WDL ve DIN'nin karşılaştığı yukarıda belirtilen sorunları çözmek için, Taobao'daki kullanıcı davranış dizilerinin sıralı sinyallerini RS'ye entegre etmeye çalışıyoruz. Transformer'in doğal dil işlemedeki (NLP) makine çevirisi görevinin büyük başarısından esinlenilmiştir , Gömme aşamasının sıra bilgisini dikkate alarak, kullanıcı davranış dizisindeki her bir ürün için daha iyi bir temsil öğrenmek için öz-dikkat mekanizmasını kullanırız. Ardından, aday ürünlerle ilgili kullanıcı geri bildirimlerini tahmin etmek için bunları MLP'ye girin.

Transformer'in temel avantajı, cümlelerdeki kelimeler arasındaki bağımlılıkları daha iyi yakalayabilmesidir.Kendi kendine dikkat mekanizması sayesinde, sezgisel olarak konuşursak, kullanıcı davranış dizilerindeki öğeler arasındaki "bağımlılıklar" Transformer tarafından çıkarılabilir. bu nedenle Taobao e-ticaret önerisinde bir kullanıcı davranışı dizisi Transformer (BST) öneriyoruz. Çevrimdışı deneyler ve çevrimiçi A / B testi, BST'nin mevcut yöntemlere göre bariz avantajları olduğunu göstermektedir. Şu anda, BST, her gün yüz milyonlarca tüketiciye öneri hizmetleri sunan Taobao tavsiyesinin aşama aşamasında konuşlandırılmıştır.

Bu makalenin 2. Bölümü BST mimarisini detaylandıracak ve 3. Bölüm çevrimdışı ve çevrimiçi testleri içeren deneysel sonuçları tanıtacaktır. İlgili çalışma Bölüm 4'te incelenmiştir ve son olarak bu çalışmanın özetidir.

Mimari

Sıralama aşamasında, öneri görevini, aşağıdaki şekilde tanımlanan bir tıklama oranı (CTR) tahmin problemi olarak modelleriz: Kullanıcının u kullanıcı tarafından tıklanan S (u) = {v1, v2,, vn} davranış dizisi göz önüne alındığında, öğrenmemiz gerekir Kullanıcının vt'ye tıklama olasılığını tahmin etmek için bir F fonksiyonu kullanılır, burada vt aday öğelerden biridir. Diğer özellikler arasında kullanıcı portresi, bağlam, öğe ve geçiş özellikleri bulunur.

BST'yi WDL'nin üzerine kuruyoruz ve genel mimari Şekil 1'de gösteriliyor. Şekil 1'den, önceki tıklanan öğenin ve ilgili özelliklerin önce düşük boyutlu vektöre gömüldüğü ve ardından MLP'ye girildiği popüler EmbeddingMLP paradigmasını takip ettiğini görebiliriz. BST ve WDL arasındaki temel fark, temel sıralı sinyali yakalayarak kullanıcı tarafından tıklanan öğeyi daha iyi karakterize etmeyi öğrenmek için bir Transformer katmanı eklememizdir. Aşağıdaki bölümde, BST'nin temel bileşenlerini aşağıdan yukarıya doğru tanıtıyoruz: Gömme katmanı, Transformer katmanı ve MLP.

Şekil 1 BST'nin genel mimarisi

BST, hedef öğe ve diğer özellikler dahil olmak üzere kullanıcının davranış sırasını girdi olarak alır. Önce bu girdi özelliklerini düşük boyutlu vektörler olarak gömer. Davranış sırasındaki öğeler arasındaki ilişkiyi daha iyi yakalamak için Transformer katmanı, dizideki her bir öğenin daha derin bir temsilini öğrenmek için kullanılır. Daha sonra diğer özelliklerin gömülmesini ve Transformer katmanının çıktısını bağlayarak, gizli özelliklerin etkileşimini öğrenmek için üç katmanlı MLP kullanılır ve son çıktıyı oluşturmak için Sigmoid işlevi kullanılır.

Not: "Konum özelliği", "Sıra özelliğine" dahildir.

2.1 Gömme katmanı

İlk bileşen, tüm girdi özelliklerini sabit boyutlu, düşük boyutlu bir vektöre yerleştiren Gömme katmanıdır. Sahnemizde, kullanıcı portre özellikleri, öğe özellikleri, bağlam özellikleri ve çeşitli birleşik özellikler gibi çeşitli özellikler vardır. Bu çalışmanın odak noktası, davranış dizilerini modellemek için Transformer'ı kullanmak olduğundan, basitlik açısından, tüm bu özellikleri "diğer özellikler" olarak gösteriyoruz ve Tablo 1'de bazı örnekler veriyoruz. Yukarıdaki Şekil 1'de gösterildiği gibi, soldaki "diğer özellikleri" birleştirip düşük boyutlu vektörlere gömüyoruz. Bu özellikler için bir gömme matrisi oluşturuyoruz W oR (| D | × do), burada boyutun boyutu.

Ek olarak, hedef öğe de dahil olmak üzere her bir öğenin davranış sırasına yerleştirilmesini de elde ettik. Şekil 1'de gösterildiği gibi, bir öğeyi karakterize etmek için iki tür özellik kullanıyoruz, "sıralı öğe özelliği" (kırmızı kısım) ve "konum özelliği" (koyu mavi). Bunların arasında, "sıra öğesi özellikleri" arasında item_id ve category_id bulunur.

Lütfen bir öğenin genellikle yüzlerce özelliğe sahip olduğunu unutmayın, ancak bu öğeyi karakterize etmek için bunların tümünü davranış sıralamasında seçmek çok pahalıdır. Bir önceki çalışmamız olan "Alibaba'da e-ticaret önerisi için milyarlarca ölçekli emtia gömme" tanıtıldığından, item_id ve category_id performans için yeterince iyidir.

Gömülü kullanıcı davranışı dizisinde, her bir öğeyi karakterize etmek için bu ikisini seyrek özellikler olarak seçiyoruz. "Konum özelliği", aşağıdaki "yerleştirme konumu" na karşılık gelir. Daha sonra, her bir öğe için, bir gömme matrisi oluşturmak için sıralama özelliklerini konum özellikleriyle birleştiririz W v R (| V | × dv), burada dv gömme boyutudur ve | V | öğe sayısıdır. Kullanırız e i R (dv) i-inci öğenin belirli bir davranış dizisine yerleştirilmesini temsil eder.

Konum yerleştirme: "Tek ihtiyacın olan dikkat" belgesinde, yazar cümledeki sipariş bilgilerini yakalamak için bir konum yerleştirme önerdi. Benzer şekilde, sıra kullanıcının davranış dizisinde de mevcuttur. Bu nedenle, alt katmandaki her bir öğenin giriş özelliği olarak "konum" ekliyoruz ve ardından bunu düşük boyutlu bir vektör olarak yansıtıyoruz. Vi öğesinin konum değerinin pos (vi) = t (vt) -t (vi) olarak hesaplandığına dikkat edin, burada t (vt) önerilen zamanı temsil eder ve t (vi), kullanıcı vi öğesini tıkladığında zaman damgasını temsil eder. Bu yöntemi kullanıyoruz çünkü bizim senaryomuzda "Dikkat, tek ihtiyacın olan" kağıdında kullanılan günah ve cos fonksiyonlarından daha üstündür.

2.2 Transformatör katmanı

Transformer katmanı, davranış dizisindeki diğer öğelerle olan ilişkiyi yakalayarak her öğe için daha derin bir temsili öğrenir.

Öz dikkat katmanı

Ölçeklendirilmiş nokta ürün dikkat, "Tek ihtiyacınız olan dikkat" belgesinde aşağıdaki gibi tanımlanmıştır:

onların arasında, Q Sorgu anlamına gelir, K Anahtarı temsil eder, V Değeri temsil eder. Senaryomuzda, öz-dikkat operasyonu öğenin gömülmesini girdi olarak alır, bunları doğrusal projeksiyonla üç matrise dönüştürür ve dikkat katmanına girer. "İhtiyacınız olan tek şey dikkat" kâğıdı gibi, çok başlı dikkat kullanıyoruz:

Bunların arasında projeksiyon matrisi W (Q), W (K), W (V) R (d × d), E, tüm öğelerin gömülü olduğu matristir. h kafa sayısıdır.

#### Noktasal İleri Beslemeli Ağ

"İhtiyacınız olan tek şey dikkat" başlıklı makaleye dayanarak, modelin doğrusal olmayan yeteneğini daha da geliştirmek için aşağıdaki gibi tanımlanan, noktasal bir İleri Besleme Ağı (FFN) ekledik:

Aşırı uydurmaktan kaçınmak ve hiyerarşik bir seviyeden anlamlı özellikler öğrenmek için, hem öz dikkat hem de FFN'de bırakma ve LeakyReLU kullanıyoruz.

Öz dikkat ve FFN katmanının genel çıktısı aşağıdaki gibidir:

onların arasında, W (1), b (1), W (2), b (2) Hepsi öğrenilebilir parametrelerdir ve LayerNorm katmanı standart bir normalleştirme katmanıdır.

Öz dikkat bloklarını yığınlayın

Özbakımdan sonra, önceki tüm öğelerin düğünlerini bir araya toplar. Öğe sırasına dayalı karmaşık ilişkiyi daha ileri modellemek için, kendi kendini inşa eden blokları yığıyoruz ve b-inci bloğun tanımı aşağıdaki gibidir:

Uygulamada, deneylerde b = 1'in b = 2,3'ten daha iyi performans gösterdiğini gözlemledik (aşağıdaki Tablo 4'e bakın). Verimlilik için, daha büyük bir b denemedik, işin bu kısmı bir sonraki bölümde daha fazla incelenecek.

2.3 MLP katmanı ve kayıp işlevi

Diğer özelliklerin gömülmesini ve hedef öğeye uygulanan Transformer katmanının çıktısını bağlayarak, sektörde standart bir uygulama olan yoğun özellikler arasındaki kesişimi daha da öğrenmek için üç tam bağlantılı katman kullanıyoruz.

Kullanıcının hedef öğe vt'yi tıklayıp tıklamadığını tahmin etmek için, çıktı birimi olarak sigmoid işlevini kullanarak bunu bir ikili sınıflandırma problemi olarak modelliyoruz. Bu modeli eğitmek için, çapraz entropi kaybı fonksiyonunu kullanıyoruz:

Bunlar arasında, D tüm örnekleri temsil eder, y {0, 1} kullanıcının bir öğeyi tıklayıp tıklamadığını belirten etikettir ve p (x) sigmoid biriminden sonra ağ tarafından çıkarılan olasılık değeridir ve tıklanan örnek x'in tahmin edilen olasılığını belirtir.

Deney

3.1 Ayarlar

veri seti

Veri seti, Taobao Uygulamasının günlüklerine göre oluşturulmuştur. Kullanıcıların 8 gün içindeki davranışlarına göre bir çevrimdışı veri kümesi oluşturduk. İlk yedi günü eğitim seti, son günü ise test seti olarak kullanıyoruz. Veri setinin istatistiksel verileri Tablo 2'de gösterilmektedir. Veri setinin çok büyük ve seyrek olduğunu görebiliriz.

Temel

BST'nin etkinliğini göstermek için, onu iki modelle karşılaştırıyoruz: WDL ve DIN. Ek olarak, daha önce tıklanan öğelerin yerleştirmelerini ortalama olarak toplayan WDL (+ Seq) adı verilen sıra bilgilerini WDL'ye entegre ederek bir kıyaslama oluşturduk. Çerçevemiz, Transformer'in sıralı modellemesinin eklenmesi yoluyla WDL'ye dayanmaktadır ve dikkat mekanizması, hedef öğe ile önceden tıklanan öğe arasındaki tanığı yakalamak için kullanıldığından DIN önerilmiştir.

Değerlendirme indeksi

Çevrimdışı sonuçlar için, farklı modellerin performansını değerlendirmek için AUC puanını kullanırız. Çevrimiçi A / B testi için, tüm modelleri değerlendirmek için CTR ve ortalama RT kullanırız. RT, yanıt süresinin kısaltmasıdır; bu, belirli bir sorgunun önerilen sonuçları üretmesi için geçen süre anlamına gelir. Farklı çevrimiçi üretim ortamlarının verimliliğini değerlendirmek için ortalama RT'yi bir ölçüm olarak kullanıyoruz.

Yapılandırma

Modelimiz Python 2.7 ve TensorFlow 1.4 ile uygulanmıştır ve optimize edici olarak "Adagrad" ı seçer. Ayrıca Tablo 3'te model parametreleri hakkında detaylı bilgi veriyoruz.

3.2 Sonuç analizi

Sonuçlar, BST'nin taban çizgisine göre avantajlarını görebileceğimiz Tablo 4'te gösterilmektedir.

Spesifik olarak, çevrimdışı deneyin AUC'si 0.7734 (WDL) ve 0.7866'dan (DIN) 0.7894'e (BST) yükseldi. WDL ve WDL'yi (+ Seq) karşılaştırırken, sıralı bilgileri basit bir ortalama şekilde entegre etmenin etkinliğini görebiliriz. Bu, kişisel dikkatin yardımıyla BST'nin, kullanıcı davranış dizilerinin sıralı sinyallerini yakalama konusunda güçlü bir yetenek sağladığı anlamına gelir. Dikkat, Pratik deneyimlerimize göre, çevrimdışı AUC'nin küçük kazanımları bile çevrimiçi TO'da büyük kazançlar sağlayabilir. WDL'de Google araştırmacıları da benzer bir fenomeni bildirdiler.

Ek olarak, verimlilik açısından, ortalama BST RT'si, WDL ve DIN'nin ortalama RT'sine yakındır ve bu, gerçekçi öneri senaryolarında Transformer gibi karmaşık modellerin büyük ölçekli dağıtımının fizibilitesini sağlar.

Son olarak, öz-ilgi katmanlarını istiflemenin etkisini de gösteriyoruz. Tablo 4'ten b = 1'in en iyi çevrimdışı AUC'yi verdiği görülebilir. Bunun nedeni, kullanıcı davranışı sırasındaki sıra bağımlılığının makine çevirisi görevindeki cümle kadar karmaşık olmaması olabilir.Bu nedenle, iyi performans elde etmek için az sayıda blok yeterlidir. Benzer bir gözlem raporu "Öz özenli sıralı öneri" belgesinde bulunabilir. Bu nedenle, BST'yi bir üretim ortamında dağıtmak için b = 1'i seçiyoruz ve Tablo 4'te yalnızca çevrimiçi TO'nun faydalarını b = 1 ile rapor ediyoruz.

Alakalı iş

WDL önerildiğinden beri, sektördeki araştırma meslektaşları Deepfm, Xdeepfm ve DeepCross ağı gibi bir dizi derin öğrenmeye dayalı yöntem önermiştir. Bununla birlikte, önceki çalışmaların tümü, gerçek öneri senaryolarında kullanıcı davranış dizilerinin sırasını göz ardı ederek, sinir ağlarının özellik kombinasyonuna ve farklı mimarilerine odaklandı. 2017 yılında, Alimamanın hassas hedefli erişim ve temel algoritma ekibi, kullanıcı davranış dizilerini işlemek için dikkat mekanizmasını kullanan derin ilgi ağı DIN'yi önerdi.

Modelimiz ile DIN arasındaki temel fark, kullanıcı davranışı dizisindeki her bir öğenin daha derin temsilini öğrenmek için Transformer'ı kullanmayı önermemizdir; DIN ise önceden tıklanan öğe ile hedef öğe arasındaki farklı benzerlikleri yakalamaya çalışır. Başka bir deyişle, Transformer modelimiz sıralı sinyalleri yakalamak için daha uygundur. "Öz Dikkatli Sıralı Öneriler" ve "Transformatörden Çift Yönlü Kodlayıcı Gösterimleri ile Sıralı Öneriler" belgesinde, sıralı öneri problemini çözmek için Transformer önerilmiştir.Aynı zamanda CTR tahmini açısından mimari modelimizden farklıdır.

sonuç olarak

Bu makalede, Transformer'in Taobao önerilerine nasıl uygulanacağına dair teknik ayrıntıları tanıttık. Güçlü dizi ilişkisi yakalama yeteneğini kullanan çok sayıda deney, Transformer'in kullanıcı davranış dizisi modellemesindeki üstünlüğünü kanıtlamıştır. Buna ek olarak, modeli Taobao üretim ortamında dağıtmanın ayrıntılarını da tanıttık.Şu anda BST, Çin'deki yüz milyonlarca kullanıcıya Taobao'da öneri hizmetleri sağlıyor.

Ses içeriğini anlamanın temel teknolojisi
önceki
KNN optimizasyon algoritması 1: mesafe ağırlıklandırma
Sonraki
Başkan Xinin ordu için yetenek geliştirme sorumluluğunu aklınızda bulundurun
Genişletilmiş Evrişim (Genişletilmiş Evrişim): Karlı olan, ancak yararlı olmayan nedir
GOTCHA! Dolandırıcılık Tespitinde Kişiselleştirilmiş PageRank Uygulaması
Ev yapımı köpek pirinci hızlı, lezzetli ve besleyicidir, bu nedenle köpekler bırakamaz ~
Pony.ai altyapı zorlukları ve uygulamaları
Kuru mal paylaşımı | Alibaba'nın PB seviyesi Kubernetes günlük platformu inşaat uygulaması
Yaz geliyor, köpeğimde sıcak çarpması varsa ne yapmalıyım?
Oğlan, 3 yaşındayken komşu bir köyde Tibet çoban köpeği tarafından ısırıldı. Şimdi normal bir yaşam sürmesi bekleniyor.
Google gerçek zamanlı uçtan uca binoküler sistem derin öğrenme ağı stereonet
ABD medyası, Boeing için yabancı netizenleri "aklamaya" çalışıyor: Çin karşılık veriyor
Poop kürek memurları, köpeğin anoreksisinin nedenini buldunuz mu?
Hangi köpek türlerinin sıcak çarpmasına yatkın olduğunu biliyor musunuz? Kürek memurları dikkat ediyor ~
To Top