Ringkasan Pembuatan Kandidat

Pembuatan kandidat adalah tahap pertama rekomendasi. Mengingat kueri, sistem akan menghasilkan kumpulan kandidat yang relevan. Tabel berikut menunjukkan dua pendekatan pembuatan kandidat umum:

JenisDefinisiContoh
pemfilteran berbasis konten Menggunakan kemiripan antar-item untuk merekomendasikan item yang mirip dengan yang disukai pengguna. Jika pengguna A menonton dua video kucing lucu, sistem dapat merekomendasikan video hewan lucu kepada pengguna tersebut.
pemfilteran kolaboratif Menggunakan kemiripan antara kueri dan item secara bersamaan untuk memberikan rekomendasi. Jika pengguna A mirip dengan pengguna B, dan pengguna B menyukai video 1, maka sistem dapat merekomendasikan video 1 kepada pengguna A (meskipun pengguna A belum melihat video yang mirip dengan video 1).

Menyematkan Ruang

Pemfilteran berbasis konten dan kolaboratif memetakan setiap item dan setiap kueri (atau konteks) ke vektor penyematan dalam ruang penyematan umum\(E = \mathbb R^d\). Biasanya, ruang penyematan memiliki dimensi rendah (yaitu, \(d\) jauh lebih kecil dari ukuran korpus), dan menangkap beberapa struktur laten item atau kumpulan kueri. Item yang mirip, seperti video YouTube yang biasanya ditonton oleh pengguna yang sama, pada akhirnya berkumpul di ruang penyematan. Konsep "kesamaan" ditentukan oleh ukuran kesamaan.

Ukuran Kesamaan

Ukuran kesamaan adalah fungsi \(s : E \times E \to \mathbb R\) yang mengambil sepasang penyematan dan menampilkan skalar yang mengukur kemiripannya. Embeddings dapat digunakan untuk pembuatan kandidat sebagai berikut: dengan mempertimbangkan kueri \(q \in E\), sistem akan mencari sematan item \(x \in E\) yang mendekati \(q\), yaitu, sematan yang memiliki kemiripan tinggi \(s(q, x)\).

Untuk menentukan tingkat kesamaan, sebagian besar sistem rekomendasi mengandalkan satu atau beberapa hal berikut:

  • cosinus
  • produk dot
  • Jarak Euclidean

Kosinus

Ini hanyalah kosinus sudut antara dua vektor, \(s(q, x) = \cos(q, x)\)

Produk Titik

Produk titik dari dua vektor adalah\(s(q, x) = \langle q, x \rangle = \sum_{i = 1}^d q_i x_i\). Hal ini juga diberikan oleh \(s(q, x) = \|x\| \|q\| \cos(q, x)\) (kosinus sudut yang dikalikan dengan hasil perkalian). Jadi, jika penyematan dinormalkan, maka produk titik dan kosinus bertepatan.

Jarak Euclidean

Ini adalah jarak biasa di ruang Euclidean, \(s(q, x) = \|q - x\| = \left[ \sum_{i = 1}^d (q_i - x_i)^2\right]^{\frac{1}{2}}\). Jarak yang lebih kecil berarti kesamaan yang lebih tinggi. Perhatikan bahwa saat penyematan dinormalkan, jarak Euclidean kuadrat bertepatan dengan produk titik (dan kosinus) hingga konstan, karena dalam kasus tersebut \(\frac{1}{2}\|q - x\|^2 = 1 - \langle q, x \rangle\).

Gambar yang menampilkan ruang penyematan dua dimensi, yang berisi penyematan kueri dan tiga item kandidat.

Membandingkan Tindakan Kesamaan

Perhatikan contoh pada gambar di sebelah kanan. Vektor hitam menggambarkan penyematan kueri. Tiga vektor penyematan lainnya (Item A, Item B, Item C) mewakili item kandidat. Bergantung pada ukuran kesamaan yang digunakan, peringkat item dapat berbeda.

Dengan menggunakan gambar, coba tentukan peringkat item menggunakan ketiga ukuran kemiripan: cosinus, produk titik, dan jarak Euclidean.

Manakah Ukuran Kesamaan yang Harus Dipilih?

Dibandingkan dengan kosinus, kemiripan produk titik sensitif terhadap norma penyematan. Artinya, semakin besar norma penyematan, semakin tinggi kesamaan (untuk item dengan sudut lancip) dan semakin besar kemungkinan item akan direkomendasikan. Hal ini dapat memengaruhi rekomendasi sebagai berikut:

  • Item yang muncul sangat sering dalam kumpulan pelatihan (misalnya, video YouTube populer) cenderung memiliki sematan dengan norma besar. Jika ingin mendapatkan informasi popularitas, sebaiknya pilih produk titik. Namun, jika Anda tidak berhati-hati, item populer mungkin akan mendominasi rekomendasi. Dalam praktiknya, Anda dapat menggunakan varian lain dari tindakan kesamaan yang tidak terlalu menekankan batasan item. Misalnya, tentukan \(s(q, x) = \|q\|^\alpha \|x\|^\alpha \cos(q, x)\) untuk beberapa \(\alpha \in (0, 1)\).

  • Item yang sangat jarang muncul mungkin tidak akan sering diperbarui selama pelatihan. Akibatnya, jika item baris tersebut diinisialisasi dengan norma besar, sistem mungkin akan merekomendasikan item yang langka daripada item yang lebih relevan. Untuk menghindari masalah ini, berhati-hatilah saat menyematkan inisialisasi, dan gunakan regularisasi yang sesuai. Kami akan menjelaskan masalah ini pada latihan pertama.