Pemfilteran Kolaboratif

Untuk mengatasi beberapa batasan pemfilteran berbasis konten, pemfilteran kolaboratif menggunakan kemiripan antara pengguna dan item secara bersamaan untuk memberikan rekomendasi. Hal ini memungkinkan rekomendasi yang tidak terduga; yaitu, model pemfilteran kolaboratif dapat merekomendasikan item kepada pengguna A berdasarkan minat pengguna B yang serupa. Selain itu, penyematan dapat dipelajari secara otomatis, tanpa mengandalkan fitur teknis.

Contoh Rekomendasi Film

Pertimbangkan sistem rekomendasi film yang menggunakan data pelatihan yang terdiri dari matriks masukan tempat:

  • Setiap baris mewakili pengguna.
  • Setiap kolom mewakili item (film).

Masukan tentang film termasuk dalam salah satu dari dua kategori:

  • Eksplisit—pengguna menentukan seberapa mereka menyukai film tertentu dengan memberikan rating numerik.
  • Implisit—jika pengguna menonton film, sistem akan menyimpulkan bahwa pengguna tertarik.

Untuk menyederhanakannya, kita akan mengasumsikan bahwa matriks masukan adalah biner; yaitu, nilai 1 menunjukkan minat pada film.

Saat pengguna mengunjungi halaman beranda, sistem harus merekomendasikan film berdasarkan keduanya:

  • kemiripan dengan film yang pernah disukai pengguna
  • film yang disukai pengguna serupa

Sebagai ilustrasi, mari kita rekayasa beberapa fitur untuk film yang dijelaskan dalam tabel berikut:

Film Rating Deskripsi
Dark Knight Rises BO-13 Batman berupaya menyelamatkan Gotham City dari nuklir nuklir dalam sekuel dari The Dark Knight, yang berlatar di dunia Komik DC.
Harry Potter and the Sorcerer's Stone PG Seorang anak laki-laki yatim piatu mendapati bahwa dia adalah seorang penyihir dan mendaftar di Sekolah Penyihir Hogwarts, tempat dia memulai pertempuran pertamanya melawan Lord Voldemort yang jahat.
Shrek PG Ogre yang menggemaskan dan pasangan keledainya memulai misi untuk menyelamatkan Putri Fiona yang dikurung di kastilnya oleh naga.
The Triplet of Belleville BO-13 Saat Juara pesepeda profesional diculik selama Tour de France, nenek dan anjing gemuknya melakukan perjalanan ke luar negeri untuk menyelamatkannya, dengan bantuan dari tiga penyanyi jazz tua.
Memento R Seorang penderita amnesia dengan gigih berusaha memecahkan pembunuhan istrinya dengan menato petunjuk ke tubuhnya.

Penyematan 1D

Misalnya kita menetapkan skalar untuk setiap film \([-1, 1]\) yang menjelaskan apakah film ditujukan untuk anak-anak (nilai negatif) atau dewasa (nilai positif). Misalnya kita juga menetapkan skalar ke setiap pengguna dalam \([-1, 1]\) yang mendeskripsikan minat pengguna terhadap film anak-anak (lebih mendekati -1) atau film dewasa (mendekati +1). Produk dari penyematan film dan penyematan pengguna harus lebih tinggi (mendekati 1) untuk film yang diharapkan pengguna.

Gambar yang menampilkan beberapa film dan pengguna disusun di sepanjang ruang sematan satu dimensi. Posisi setiap film di sepanjang sumbu ini menjelaskan apakah ini adalah film anak-anak (kiri) atau film dewasa (kanan). Posisi pengguna menjelaskan minat pada film anak-anak atau orang dewasa.

Pada diagram di bawah, setiap tanda centang mengidentifikasi film yang ditonton pengguna tertentu. Pengguna ketiga dan keempat memiliki preferensi yang dijelaskan dengan baik oleh fitur ini—pengguna ketiga lebih memilih film untuk anak-anak dan pengguna keempat lebih memilih film untuk orang dewasa. Namun, preferensi pengguna pertama dan kedua tidak dijelaskan dengan baik oleh fitur tunggal ini.

Gambar matriks masukan, dengan baris yang sesuai dengan pengguna dan kolom yang sesuai dengan film. Setiap pengguna dan setiap film dipetakan ke penyematan satu dimensi (seperti yang dijelaskan dalam gambar sebelumnya), sehingga produk dari dua penyematan ini mendekati nilai kebenaran dasar dalam matriks masukan.

Embedding 2D

Satu fitur tidak cukup untuk menjelaskan preferensi semua pengguna. Untuk mengatasi masalah ini, mari kita tambahkan fitur kedua: sejauh mana setiap film merupakan film laris atau film arthouse. Dengan fitur kedua, kini kita dapat mewakili setiap film dengan penyematan dua dimensi berikut:

Gambar yang menampilkan beberapa film dan pengguna ditempatkan di ruang penyematan dua dimensi. Posisi setiap film di sepanjang sumbu horizontal menjelaskan apakah ini adalah film anak-anak (kiri) atau film dewasa (kanan); posisinya di sepanjang sumbu vertikal menjelaskan apakah ini adalah film laris (atas) atau film arthouse (bawah). Posisi pengguna mencerminkan minat mereka di setiap kategori.

Sekali lagi, kita menempatkan pengguna di ruang penyematan yang sama untuk menjelaskan matriks masukan dengan baik: untuk setiap pasangan (pengguna, item), kita ingin produk dot dari penyematan pengguna dan penyematan item mendekati 1 saat pengguna menonton film, dan ke 0 jika sebaliknya.

Gambar dari matriks masukan yang sama. Kali ini, setiap pengguna dan setiap film dipetakan ke penyematan dua dimensi (seperti yang dijelaskan pada gambar sebelumnya), sehingga produk titik dari dua penyematan mendekati nilai kebenaran dasar dalam matriks masukan.

Dalam contoh ini, kami merekayasa penyematan. Dalam praktiknya, penyematan dapat dipelajari secara otomatis, yang merupakan kekuatan model pemfilteran kolaboratif. Dalam dua bagian berikutnya, kita akan membahas berbagai model untuk mempelajari penyematan ini, dan cara melatihnya.

Sifat kolaboratif pendekatan ini terlihat jelas saat model mempelajari penyematan. Misalnya vektor penyematan untuk film bersifat tetap. Kemudian, model tersebut dapat mempelajari vektor penyematan untuk pengguna agar dapat menjelaskan preferensi mereka dengan baik. Akibatnya, penyematan pengguna dengan preferensi serupa akan saling berdekatan. Demikian pula, jika penyematan untuk pengguna diperbaiki, kita dapat mempelajari penyematan film untuk menjelaskan matriks masukan dengan cara terbaik. Akibatnya, sematan film yang disukai oleh pengguna serupa akan ditutup di ruang penyematan.

Periksa Pemahaman Anda

Model merekomendasikan aplikasi belanja kepada pengguna karena baru-baru ini mereka menginstal aplikasi serupa. Apa jenis pemfilteran ini?
Pemfilteran berbasis konten
Bagus! Pemfilteran berbasis konten tidak mempertimbangkan pengguna lain.
Pemfilteran kolaboratif
Pemfilteran kolaboratif mempertimbangkan pengguna lain. Dalam skenario tertentu, kami hanya memperhatikan satu pengguna.