Ö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.
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.
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.