İçeriğe dayalı filtreleme, başka öğeler önermek için öğe özelliklerini kullanır önceki işlemlerine dayalı olarak kullanıcının beğendiklerine benzer veya uygunsuz içerikler geri bildirim.
İçeriğe dayalı filtrelemeyi göstermek için, bazı özelliklere manuel olarak kullanıma sunuyoruz. Aşağıdaki şekilde bir özellik matrisi gösterilmektedir her satır bir uygulamayı, her sütun da bir özelliği temsil eder. Özellikler kategoriler (Eğitim, Gündelik, Sağlık gibi) içerebilir. ve daha pek çok uygulama geliştiriyor. Basitleştirmek için, bu özellik matrisinin ikili olduğunu varsayalım: uygulamanın bu özelliğe sahip olduğu anlamına gelir.
Ayrıca kullanıcıyı aynı özellik alanında temsil edersiniz. Kullanıcılarla ilgili bazı özellikler kullanıcı tarafından açıkça sağlanabilirdi. Örneğin, bir kullanıcı "Eğlence uygulamaları" tercih edebilirsiniz. Diğer özellikler üstü kapalı, otomatik olarak seçim yapmasını sağlar. Örneğin, kullanıcı Science R Us tarafından yayınlanan başka bir uygulamayı yükledi.
Modelin bu kullanıcıyla alakalı öğeler önermesi gerekir. Bunu yapmak için: önce bir benzerlik metriği (ör. nokta çarpımı) seçin. Daha sonra sistemi, her aday öğeyi bu benzerliğe göre puanlayacak şekilde ayarlamalıdır metriğine karşılık gelir. Kullanıcı modelinde ilişkilendirme modeli olduğundan, önerilerin bu kullanıcıya özel diğer kullanıcılarla ilgili hiçbir bilgiyi kullanmadı.
Benzerlik ölçüsü olarak nokta çarpımı kullanma
Kullanıcının uygulamayı yerleştirdiği \(x\) ve uygulamanın yerleştirilmiş \(y\) k de ikili vektörlerdir. Şu tarihten beri: \(\langle x, y \rangle = \sum_{i = 1}^d x_i y_i\), her ikisinde de görünen \(x\) ve \(y\) onlara 1 katkıda bulunur. toplamıdır. Başka bir deyişle, \(\langle x, y \rangle\) aynı anda her iki vektörde de etkin olan özellikleri içerir. Yüksek nokta çarpımı daha ortak özellikleri ve dolayısıyla daha yüksek bir benzerliği belirtir.
Kendiniz deneyin
Önceki uygulama sorunundaki her uygulamanın nokta çarpımını hesaplayın. Ardından bu bilgileri kullanarak aşağıdaki soruyu cevaplayın: