Pengambilan

Misalkan Anda memiliki model penyematan. Untuk pengguna, bagaimana Anda memutuskan item mana yang akan direkomendasikan?

Pada waktu penayangan, berdasarkan kueri, Anda mulai dengan melakukan salah satu hal berikut:

  • Untuk model faktorisasi matriks, penyematan kueri (atau pengguna) diketahui secara statis, dan sistem dapat langsung mencarinya dari matriks penyematan pengguna.
  • Untuk model DNN, sistem menghitung penyematan kueri \(\psi(x)\) pada waktu penayangan dengan menjalankan jaringan pada vektor fitur \(x\).

Setelah Anda memiliki kueri yang menyematkan \(q\), telusuri penyematan item \(V_j\) yang mendekati \(q\) dalam ruang penyematan. Ini adalah masalah tetangga terdekat. Misalnya, Anda dapat menampilkan k item teratas berdasarkan skor kesamaan \(s(q, V_j)\).

Gambar spektrum dua dimensi dengan beberapa film dan pengguna yang diatur dari film anak-anak hingga dewasa. Satu pengguna ditandai serta dua film di dekatnya.

Anda dapat menggunakan pendekatan serupa dalam rekomendasi item terkait. Misalnya, saat pengguna menonton video YouTube, sistem pertama-tama dapat mencari penyematan item tersebut, lalu mencari penyematan item lain \(V_j\) yang berada dekat dalam ruang sematan.

Pengambilan skala besar

Untuk menghitung tetangga terdekat dalam ruang penyematan, sistem dapat menilai setiap calon kandidat secara lengkap. Untuk skor yang rendah, korpora yang sangat besar ini bisa jadi mahal, tetapi Anda dapat menggunakan salah satu strategi berikut untuk membuatnya lebih efisien:

  • Jika penyematan kueri diketahui secara statis, sistem dapat melakukan penskoran lengkap secara offline, menghitung terlebih dahulu, dan menyimpan daftar kandidat teratas untuk setiap kueri. Ini adalah praktik umum untuk rekomendasi item terkait.
  • Menggunakan perkiraan tetangga terdekat.