Bagikan melalui


Evaluasi Pemberi Rekomendasi

Penting

Dukungan untuk Studio Azure Machine Learning (klasik) akan berakhir pada 31 Agustus 2024. Sebaiknya Anda transisi ke Azure Machine Learning sebelum tanggal tersebut.

Mulai 1 Desember 2021, Anda tidak akan dapat membuat sumber daya Studio Azure Machine Learning (klasik) baru. Hingga 31 Agustus 2024, Anda dapat terus menggunakan sumber daya Pembelajaran Mesin Studio (klasik) yang ada.

ML Dokumentasi Studio (klasik) sedang berhenti dan mungkin tidak diperbarui di masa mendatang.

Mengevaluasi keakuratan prediksi model recommender

Kategori: Pembelajaran Mesin / Evaluasi

Catatan

Berlaku untuk: Pembelajaran Mesin Studio (klasik) saja

Modul drag-and-drop serupa tersedia di Azure Machine Learning desainer.

Ringkasan Modul

Artikel ini menjelaskan cara menggunakan modul Evaluat Recommender di Pembelajaran Mesin Studio (klasik), untuk mengukur keakuratan prediksi yang dibuat oleh model rekomendasi. Dengan menggunakan modul ini, Anda dapat mengevaluasi empat jenis rekomendasi yang berbeda:

  • Peringkat yang diprediksi untuk pengguna dan item tertentu

  • Item yang direkomendasikan untuk pengguna tertentu

  • Daftar pengguna yang ditemukan terkait dengan pengguna tertentu

  • Daftar item yang ditemukan terkait dengan item tertentu

Saat Anda membuat prediksi menggunakan model rekomendasi, hasil yang sedikit berbeda dikembalikan untuk masing-masing jenis prediksi yang didukung ini. Modul Evaluat Recommender menyimpulkan jenis prediksi dari format kolom himpunan data yang dicetak. Misalnya, himpunan data yang dinilai mungkin berisi:

  • peringkat user-item tiga kali lipat
  • pengguna dan item yang direkomendasikan
  • Pengguna dan pengguna terkait mereka
  • item dan item terkaitnya

Modul ini juga menerapkan metrik performa yang sesuai, berdasarkan jenis prediksi yang dibuat.

Tip

Pelajari semua yang perlu Anda ketahui tentang pengalaman end-to-end membangun sistem rekomendasi dalam tutorial ini dari tim pengembangan .NET. Termasuk kode sampel dan diskusi tentang cara menelepon Pembelajaran Mesin dari aplikasi.

Membangun mesin rekomendasi untuk aplikasi .NET menggunakan Pembelajaran Mesin

Cara mengonfigurasi Evaluasi Pemberi Rekomendasi

Modul Evaluat Recommender membandingkan output prediksi dengan model rekomendasi dengan data "kebenaran dasar" yang sesuai. Misalnya, modul Score Matchbox Recommender menghasilkan himpunan data yang dicetak yang dapat dianalisis dengan Evaluate Recommender.

Persyaratan

Evaluasi Recommender memerlukan himpunan data berikut sebagai input.

Himpunan data pengujian

Dataset pengujian berisi data "kebenaran dasar" dalam bentuk peringkat item pengguna tiga kali lipat.

Jika Anda sudah memiliki himpunan data yang berisi peringkat item pengguna tiga kali lipat, Anda dapat menerapkan modul Split Data , menggunakan opsi RecommenderSplit , untuk membuat himpunan data pelatihan dan kumpulan pengujian terkait dari himpunan data yang ada.

Himpunan data dengan skor

Himpunan data yang dinilai berisi prediksi yang dihasilkan oleh model rekomendasi.

Kolom dalam himpunan data kedua ini bergantung pada jenis prediksi yang Anda lakukan selama penilaian. Misalnya, himpunan data yang dicetak mungkin berisi salah satu hal berikut:

  • Pengguna, item, dan peringkat yang kemungkinan akan diberikan pengguna untuk item tersebut
  • Daftar pengguna dan item yang direkomendasikan untuk pengguna
  • Daftar pengguna, dengan pengguna yang mungkin mirip dengan mereka
  • Daftar item, bersama dengan item smiliar

Metrik

Metrik performa untuk model dihasilkan berdasarkan jenis input. Untuk detailnya, lihat bagian berikut:

Mengevaluasi prediksi peringkat

Saat mengevaluasi peringkat yang diprediksi, himpunan data yang dinilai (input kedua untuk Mengevaluasi Recommender) harus berisi peringkat item pengguna tiga kali lipat, memenuhi persyaratan ini:

  • Kolom pertama himpunan data berisi pengidentifikasi pengguna.

  • Kolom kedua berisi ID item.

  • Kolom ketiga berisi peringkat pengguna-item terkait.

Penting

Agar evaluasi berhasil dilakukan, masing-masing nama kolom harus berupa User, Item, dan Rating.

Evaluate Recommender membandingkan peringkat dalam himpunan data kebenaran dasar dengan peringkat yang diprediksi dari himpunan data yang dicetak, dan menghitung kesalahan absolut rata-rata (MAE) dan kesalahan kuadrat rata-rata akar (RMSE).

Parameter lain dari Evaluat Recommender tidak berpengaruh pada evaluasi prediksi peringkat.

Mengevaluasi rekomendasi item

Saat mengevaluasi rekomendasi item, gunakan himpunan data yang dinilai yang menyertakan item yang direkomendasikan untuk setiap pengguna:

  • Kolom pertama himpunan data harus berisi ID pengguna.

  • Semua kolom berikutnya harus berisi ID item yang direkomendasikan yang sesuai, diurutkan berdasarkan seberapa relevan item tersebut bagi pengguna.

    Sebelum menghubungkan himpunan data ini, kami sarankan Anda mengurutkan himpunan data sehingga item yang paling relevan menjadi yang utama.

Parameter lain dari Evaluat Recommender tidak berpengaruh pada evaluasi rekomendasi item.

Penting

Agar Evaluat Recommender berfungsi, nama kolom harus User, , Item 1, Item 2, Item 3 dan sebagainya.

Evaluasi Recommender menghitung rata-rata keuntungan kumulatif diskon yang dinormalisasi (NDCG) dan mengembalikannya dalam himpunan data output.

Karena tidak mungkin untuk mengetahui "kebenaran dasar" yang sebenarnya untuk item yang direkomendasikan, Evaluat Recommender menggunakan peringkat item pengguna dalam dataset pengujian sebagai keuntungan dalam perhitungan NDCG. Untuk mengevaluasi, modul penilaian recommender hanya boleh menghasilkan rekomendasi untuk item dengan peringkat kebenaran dasar (dalam himpunan data pengujian).

Mengevaluasi prediksi pengguna terkait

Saat mengevaluasi prediksi pengguna terkait, gunakan himpunan data yang dinilai yang berisi pengguna terkait untuk setiap pengguna yang menarik:

  • Kolom pertama harus berisi pengidentifikasi untuk setiap pengguna yang menarik.

  • Semua kolom berikutnya berisi pengidentifikasi untuk pengguna terkait yang diprediksi. Pengguna terkait dipesan oleh kekuatan realtionship (sebagian besar pengguna terkait terlebih dahulu).

  • Agar Evaluat Recommender berfungsi, nama kolom harus User, , Related User 1, Related User 2, Related User 3, dan sebagainya.

Tip

Anda dapat memengaruhi evaluasi dengan menetapkan jumlah minimum item yang harus dimiliki pengguna dan pengguna terkaitnya.

Evaluate Recommender menghitung rata-rata keuntungan kumulatif diskon yang dinormalisasi (NDCG), berdasarkan jarak Manhattan (L1 Sim NDCG) dan Euclidean (L2 Sim NDCG), dan mengembalikan kedua nilai dalam himpunan data output. Karena tidak ada kebenaran dasar yang sebenarnya untuk pengguna terkait, Evaluate Recommender menggunakan prosedur berikut untuk menghitung NDCGs rata-rata.

Untuk setiap pengguna yang tertarik dengan himpunan data yang dicetak:

  1. Temukan semua item dalam himpunan data pengujian yang telah dinilai oleh pengguna yang menarik dan pengguna terkait yang sedang dipertimbangkan.

  2. Buat dua vektor dari peringkat item ini: satu untuk pengguna yang menarik, dan satu untuk pengguna terkait yang sedang dipertimbangkan.

  3. Hitung keuntungan sebagai kesamaan dari dua vektor peringkat yang dihasilkan, dalam hal jarak Manhattan (L1) atau Euclidean (L2) mereka.

  4. Hitung L1 Sim NDCG dan L2 Sim NDCG, menggunakan keuntungan dari semua pengguna terkait.

  5. Rata-rata nilai NDCG atas semua pengguna dalam himpunan data yang dicetak.

Dengan kata lain, keuntungan dihitung sebagai kesamaan (dinormalisasi Manhattan atau jarak Euclidian) antara pengguna yang menarik (entri di kolom pertama dataset yang dinilai) dan pengguna terkait yang diberikan (entri di kolom ke-n dari dataset yang dicetak). Keuntungan dari pasangan pengguna ini dihitung menggunakan semua item yang kedua item telah dinilai dalam data asli (set uji). NDCG kemudian dihitung dengan menggabungkan keuntungan individu untuk satu pengguna yang menarik dan semua pengguna terkait, menggunakan diskon logaritmik. Artinya, satu nilai NDCG dihitung untuk setiap pengguna yang menarik (setiap baris dalam himpunan data yang dicetak). Angka yang akhirnya dilaporkan adalah rata-rata aritmatika atas semua pengguna yang tertarik pada dataset yang dicetak (yaitu barisnya).

Oleh karena itu, untuk mengevaluasi, modul penilaian recommender hanya boleh memprediksi pengguna terkait yang memiliki item dengan peringkat kebenaran dasar (dalam dataset pengujian).

Mengevaluasi prediksi item terkait

Saat mengevaluasi prediksi item terkait, gunakan himpunan data yang dicetak yang berisi item terkait untuk setiap item yang menarik:

  • Kolom pertama harus berisi pengidentifikasi untuk item yang menarik.

  • Semua kolom berikutnya harus berisi pengidentifikasi untuk item terkait yang diprediksi, dipesan oleh seberapa terkaitnya dengan item yang menarik (sebagian besar item terkait terlebih dahulu).

  • Agar Evaluat Recommender berfungsi, nama kolom harus Item, , Related Item 1, Related Item 2, Related Item 3, dan sebagainya.

Tip

Anda dapat memengaruhi evaluasi dengan menetapkan jumlah minimum pengguna yang harus dimiliki oleh item yang menarik dan item terkaitnya.

Evaluate Recommender menghitung rata-rata keuntungan kumulatif diskon yang dinormalisasi (NDCG) berdasarkan jarak Manhattan (L1 Sim NDCG) dan Euclidean (L2 Sim NDCG) dan mengembalikan kedua nilai dalam himpunan data output. Karena tidak ada kebenaran dasar yang sebenarnya untuk item terkait, Evaluat Recommender menghitung NDCGs rata-rata sebagai berikut:

Untuk setiap item yang menarik dalam himpunan data yang dicetak:

  1. Temukan semua pengguna dalam himpunan data pengujian yang telah menilai item yang menarik dan item terkait yang sedang dipertimbangkan.

  2. Buat dua vektor dari peringkat pengguna ini, satu untuk item yang menarik dan untuk item terkait yang sedang dipertimbangkan.

  3. Hitung keuntungan sebagai kesamaan dari dua vektor peringkat yang dihasilkan dalam hal jarak Manhattan (L1) atau Euclidean (L2) mereka.

  4. Hitung L1 Sim NDCG dan L2 Sim NDCG menggunakan keuntungan dari semua item terkait.

  5. Rata-rata nilai NDCG atas semua item yang menarik dalam himpunan data yang dicetak.

Dengan kata lain, keuntungan dihitung sebagai kesamaan (dinormalisasi Manhattan atau jarak Euclidian) antara item yang menarik (entri di kolom pertama dataset yang dicetak) dan item terkait yang diberikan (entri di kolom ke-n dari dataset yang dicetak). Keuntungan dari pasangan item ini dihitung menggunakan semua pengguna yang telah menilai kedua item ini dalam data asli (set pengujian). NDCG kemudian dihitung dengan menggabungkan keuntungan individu untuk satu item yang menarik dan semua item terkait, menggunakan diskon logaritmik. Artinya, satu nilai NDCG dihitung untuk setiap item yang menarik (setiap baris dalam himpunan data yang dicetak). Angka yang akhirnya dilaporkan adalah rata-rata aritmatika atas semua item yang menarik dalam dataset yang dicetak (yaitu barisnya).

Oleh karena itu, untuk mengevaluasi, modul penilaian recommender hanya boleh memprediksi item terkait dengan peringkat kebenaran dasar (dalam dataset pengujian).

Contoh

Untuk contoh bagaimana model rekomendasi digunakan dalam Pembelajaran Mesin, lihat Galeri AI Azure:

Input yang diharapkan

Nama Jenis Deskripsi
Himpunan data pengujian Tabel Data Himpunan data pengujian
Himpunan data dengan skor Tabel Data Himpunan data dengan skor

Parameter modul

Nama Rentang Jenis Default Deskripsi
Jumlah minimum item yang pengguna kueri dan pengguna terkait harus memiliki nilai yang sama >=1 Bilangan bulat 2 Tentukan jumlah minimum item yang harus dinilai oleh pengguna kueri dan pengguna terkait

Parameter ini bersifat opsional
Jumlah minimum pengguna bahwa item kueri dan item terkait harus dinilai secara umum >=1 Bilangan bulat 2 Tentukan jumlah minimum pengguna yang harus menilai item kueri dan item terkait

Parameter ini bersifat opsional

Output

Nama Jenis Deskripsi
Metrik Tabel Data Tabel metrik evaluasi

Pengecualian

Pengecualian Deskripsi
Kesalahan 0022 Pengecualian terjadi jika jumlah kolom yang dipilih dalam himpunan data input tidak sama dengan angka yang diharapkan.
Kesalahan 0003 Pengecualian terjadi jika satu atau beberapa input null atau kosong.
Kesalahan 0017 Pengecualian terjadi jika satu atau beberapa kolom tertentu memiliki jenis yang tidak didukung oleh modul saat ini.
Kesalahan 0034 Pengecualian terjadi jika ada lebih dari satu peringkat untuk pasangan item pengguna yang diberikan.
Kesalahan 0018 Pengecualian terjadi jika input himpunan data tidak valid.
Kesalahan 0002 Pengecualian terjadi jika satu atau beberapa parameter tidak dapat diurai atau dikonversi dari jenis yang ditentukan menjadi diperlukan oleh jenis metode target.

Untuk daftar kesalahan khusus untuk modul Studio (klasik), lihat Pembelajaran Mesin Kode kesalahan.

Untuk daftar pengecualian API, lihat Pembelajaran Mesin Kode Kesalahan REST API.

Lihat juga

Rekomendasi Kotak Korek Api Kereta Api
Peng recommender Matchbox Skor