Softmax Eğitimi

Önceki sayfada, bir öneri sistemi için derin sinir ağına softmax katmanının nasıl dahil edileceği açıklanmaktadır. Bu sayfa, bu sistemin eğitim verilerini daha yakından incelemektedir.

Eğitim Verileri

Softmax eğitim verileri, sorgu özelliklerinden \(x\) ve kullanıcının etkileşim kurduğu öğelerin vektöründen (olasılık dağılımı olarak temsil edilir \(p\)) oluşur. Bunlar, aşağıdaki şekilde mavi renkte işaretlenmiştir. Modelin değişkenleri, farklı katmanlardaki ağırlıklardır. Bunlar, aşağıdaki şekilde turuncu olarak işaretlenmiştir. Model genellikle bölgesel gradyan inişinin herhangi bir varyantı kullanılarak eğitilir.

Softmax derin sinir ağının eğitimini gösteren resim

Olumsuz Örnekleme

Kayıp işlevi iki olasılık vektörünü karşılaştırdığından (\(p, \hat p(x) \in \mathbb R^n\) (sırasıyla kesin bilgi ve modelin çıkışı),) kayıp gradyanının hesaplanması (tek bir sorgu için \(x\)) topluluk boyutu çok büyükse yasaklayıcı olabilir \(n\)

Gradyanları yalnızca pozitif öğelerde ( kesin referans vektöründe etkin olan öğeler) hesaplayacak bir sistem ayarlayabilirsiniz. Bununla birlikte, sistem yalnızca pozitif çiftleri eğitiyorsa modelin aşağıda açıklandığı gibi katlanması sorun yaşayabilir.

Katlama
Sorguları temsil eden 3 farklı kare grubunu ve öğeleri temsil eden daireleri yarıya katlanmış bir uçağın resmi. Her grubun farklı bir rengi vardır ve sorgular yalnızca aynı gruptaki öğelerle etkileşim kurar. Aşağıdaki şekilde, her bir rengin farklı sorgu ve öğe kategorilerini temsil ettiğini varsayalım. Her sorgu (kare olarak gösterilir) yalnızca aynı renkteki öğelerle (daire olarak temsil edilir) etkileşime girer. Örneğin, her kategoriyi YouTube'da farklı bir dil olarak düşünün. Tipik bir kullanıcı genellikle tek bir dildeki videolarla etkileşim kurar.

Model, belirli bir rengin sorgu/öğe yerleştirmelerini birbiriyle göreli olarak nasıl yerleştireceğini öğrenebilir (bu renkteki benzerliği doğru bir şekilde yakalayabilir), ancak farklı renklerdeki yerleştirmeler, şans eseri şansla yerleştirme alanının aynı bölgesinde bulunabilir. Katlama olarak bilinen bu olgu, sahte önerilere yol açabilir: Sorgu sırasında, model farklı bir gruptaki bir öğenin yüksek puanını yanlış bir şekilde tahmin edebilir.

Negatif örnekler, belirli bir sorguyla "alakasız" etiketli öğelerdir. Eğitim sırasında modelin negatif örneklerini göstermek, modele farklı grupların yerleştirmelerinin birbirinden uzaklaştırılması gerektiğini öğretir.

Gradyanı hesaplamak için tüm öğeleri (çok pahalı olabilir) veya yalnızca pozitif öğeleri (modelin katlanmaya açık hale gelmesi) kullanmak yerine negatif örneklemeyi kullanabilirsiniz. Daha kesin belirtmek gerekirse aşağıdaki öğeleri kullanarak yaklaşık bir gradyan hesaplanır:

  • Tüm pozitif öğeler (hedef etikette görünenler)
  • Negatif öğe örneği (\(j\) \({1, …, n}\))

Negatif öğeleri örneklemek için farklı stratejiler vardır:

  • Eşit olarak örnek alabilirsiniz.
  • Daha yüksek puana sahip j öğelerine daha yüksek bir olasılık sağlayabilirsiniz \(\psi(x) . V_j\). Sezgisel açıdan, gradyana en fazla katkıda bulunan örnekler bunlardır. Bu örneklere genellikle negatif negatifler denir.

Matrisi Çarpanlara Göre Karşılaştırma veya Softmax

DNN modelleri, Matrisi Çarpanlara Ayırma birçok kısıtlamasını çözer ancak eğitilmesi ve sorgulanması genellikle daha pahalıdır. Aşağıdaki tabloda, iki model arasındaki önemli farklılıklardan bazıları özetlenmiştir.

Matrisi Çarpanlarına Ayırma Softmax DNN
Sorgu özellikleri Eklenmesi kolay değildir. Dahil edilebilir.
Baştan başlatma Yer işareti içeren sorguları veya öğeleri kolayca işlemez. Bazı buluşsal yöntemler kullanılabilir (örneğin, yeni bir sorgu için benzer sorguların ortalama yerleştirmeleri). Yeni sorguları kolayca işler.
Katlama KALDIRMA, WALS'teki gözlemlenmeyen ağırlığı ayarlayarak kolayca azaltılabilir. Katlamaya eğilimli. Negatif örnekleme veya yerçekimi gibi tekniklerin kullanılması gerekir.
Eğitim ölçeklenebilirliği Giriş matrisi seyrek olduğu için çok büyük bir gruba (yüzlerce veya daha fazla öğe) kolayca ölçeklendirilebilir. Çok büyük bir toplulukta ölçeklendirilmesi daha zordur. Karma oluşturma, negatif örnekleme gibi bazı teknikler kullanılabilir.
Ölçeklenebilirlik sunma U, V yerleştirilmiş öğeleri statiktir ve bir dizi aday, önceden hesaplanıp depolanabilir. Öğe yerleştirme V statiktir ve depolanabilir.

Sorgu yerleştirmenin genellikle sorgu zamanında hesaplanması gerektiğinden modelin sunulması daha pahalı hale gelir.

Özet olarak:

  • Matrisi çarpanlara ayırma genellikle büyük işletmeler için daha iyi bir seçenektir. Ölçeklendirmek, sorgulamak daha ucuz ve katlamaya daha az eğilimli.
  • DNN modelleri, kişiselleştirilmiş tercihleri daha iyi yakalayabilir, ancak eğitilmesi daha zordur ve sorgulanması daha pahalıdır. DNN modelleri, alaka düzeyini daha iyi yakalamak için daha fazla özellik kullanabileceğinden, puanlama için matrisi çarpanlara ayırma tercih edilir. Ayrıca, çoğunlukla alakalı olduğu varsayılarak önceden filtre uygulanmış bir aday grubunu sıralamayı önemsediğiniz için DNN modellerinin katlanması kabul edilebilir.