Önereni Değerlendirme

Önemli

Machine Learning Stüdyosu (klasik) desteği 31 Ağustos 2024'te sona erecektir. Bu tarihe kadar Azure Machine Learning'e geçmenizi öneririz.

1 Aralık 2021'den başlayarak artık yeni Machine Learning Stüdyosu (klasik) kaynakları oluşturamayacaksınız. 31 Ağustos 2024'e kadar mevcut Machine Learning Stüdyosu (klasik) kaynaklarını kullanmaya devam edebilirsiniz.

ML Stüdyosu (klasik) belgeleri kullanımdan kaldırılacak ve gelecekte güncelleştirilmeyecektir.

Öneren model tahminlerinin doğruluğunu değerlendirir

kategori: Machine Learning/değerlendir

Not

uygulama hedefi: yalnızca Machine Learning Studio (klasik)

benzer sürükle ve bırak modülleri Azure Machine Learning tasarımcısındakullanılabilir.

Modüle genel bakış

bu makalede, bir öneri modeli tarafından yapılan tahminlerinin doğruluğunu ölçmek için Machine Learning Studio 'daki değerlendir öneren modülünün (klasik) nasıl kullanılacağı açıklanır. Bu modülü kullanarak dört farklı öneri türünü değerlendirebilirsiniz:

  • Belirli bir Kullanıcı ve öğe için tahmin edilen derecelendirmeler

  • Belirli bir kullanıcı için önerilen öğeler

  • Belirli bir kullanıcıyla ilgili olarak bulunan kullanıcıların listesi

  • Belirli bir öğeyle ilgili olarak bulunan öğelerin listesi

Öneri modeli kullanarak Öngörüler oluşturduğunuzda, bu desteklenen tahmin türlerinin her biri için biraz farklı sonuçlar döndürülür. Değerlendirin öneren modülü, puanlanmış veri kümesinin sütun biçiminden tahmin türünü çıkarır. Örneğin, puanlanmış veri kümesi şunları içerebilir:

  • Kullanıcı-öğe-derecelendirme Üçlü
  • Kullanıcılar ve bunların önerilen öğeleri
  • Kullanıcılar ve ilgili kullanıcılar
  • öğeler ve ilgili öğeleri

Modül, yapılan tahmin türüne göre uygun performans ölçümlerini de uygular.

İpucu

.NET geliştirme ekibinin bu öğreticide bir öneri sistemi oluşturma hakkında bilgi edinmek için gereken her şeyi öğrenin. , bir uygulamadan Machine Learning nasıl çağrılacağını gösteren örnek kodu ve tartışmayı içerir.

Machine Learning kullanarak .NET uygulamaları için öneri altyapısı oluşturma

Öneren değerlendir yapılandırma

Değerlendir öneren modülü, tahmine dayalı çıktıyı karşılık gelen "temel olan" verilerle bir öneri modeliyle karşılaştırır. Örneğin, Score Matchbox öneren modülü, değerlendir önerenile çözümlenebilecek puanlanmış veri kümeleri üretir.

Gereksinimler

Değerlendirme öneren , aşağıdaki veri kümelerini giriş olarak gerektirir.

Test veri kümesi

Test veri kümesi , Kullanıcı-öğe derecelendirme Üçlübiçiminde "toprak" verileri içerir.

Zaten Kullanıcı-öğe derecelendirmesi içeren bir veri kümeniz varsa, bir eğitim veri kümesi ve mevcut veri kümesinden ilgili bir test kümesi oluşturmak için RecommenderSplit seçeneğini kullanarak bölünmüş veri modülünü uygulayabilirsiniz.

Puanlanmış veri kümesi

Puanlanmış veri kümesi , öneri modeli tarafından oluşturulan tahminleri içerir.

Bu ikinci veri kümesindeki sütunlar, Puanlama sırasında gerçekleştirdiğiniz tahmin türüne bağlıdır. Örneğin, puanlanmış veri kümesi aşağıdakilerden birini içerebilir:

  • Kullanıcılar, öğeler ve kullanıcının öğe için büyük olasılıkla sahip olacağı derecelendirmeler
  • Kendileri için önerilen kullanıcıların ve öğelerin listesi
  • Büyük olasılıkla bunlara benzer kullanıcılarla kullanıcıların listesi
  • Bir öğe listesi, smıar öğeleriyle birlikte

Ölçümler

Model için performans ölçümleri, giriş türüne göre oluşturulur. Ayrıntılar için aşağıdaki bölümlere bakın:

Tahmin edilen derecelendirmeleri değerlendir

Tahmin edilen derecelendirmeleri değerlendirirken, puanlanmış veri kümesi ( öneren değerlendirmekiçin ikinci giriş), bu gereksinimleri karşılamak için Kullanıcı-öğe derecelendirme üçlü öğeleriiçermelidir:

  • Veri kümesinin ilk sütunu Kullanıcı tanımlayıcıları içerir.

  • İkinci sütunda öğe tanımlayıcıları bulunur.

  • Üçüncü sütun karşılık gelen Kullanıcı öğesi derecelendirmelerini içerir.

Önemli

Değerlendirmenin başarılı olması için, sütun adlarının sırasıyla, Item ve Rating , olması User gerekir.

Değerlendirin öneren , toprak gerçek veri kümesindeki derecelendirmeleri, puanlanmış veri kümesinin öngörülen derecelendirmelerine göre karşılaştırır ve Ortalama mutlak hatayı (Mae) ve kök ortalama kare hatası 'nı (RMSA) hesaplar.

Öneren değerlendir 'in diğer parametrelerinin, değerlendirme tahminleri değerlendirmesi üzerinde hiçbir etkisi yoktur.

Öğe önerilerini değerlendir

Öğe önerisi değerlendirilirken, her kullanıcı için önerilen öğeleri içeren bir puanlanmış veri kümesi kullanın:

  • Veri kümesinin ilk sütununun Kullanıcı tanımlayıcısı içermesi gerekir.

  • Sonraki tüm sütunlar, ilgili önerilen öğe tanımlayıcılarını içermesi gerekir ve ilgili bir öğenin kullanıcıya ait olduğu şekilde sıralanır.

    Bu veri kümesini bağlamadan önce, en ilgili öğelerin ilk olması için veri kümesini sıralamayı öneririz.

Öneren değerlendirmek için diğer parametrelerin, öğe önerilerinin değerlendirmesi üzerinde hiçbir etkisi yoktur.

Önemli

Öneren 'ın çalışmasını değerlendirmek için, sütun adları, Item 2Item 3Item 1 , vb. olmalıdır. User

Öneren değerlendir , ortalama normalleştirilmiş indirimli kümülatif kazancı (ndcg) hesaplar ve bunu çıkış veri kümesinde döndürür.

Önerilen öğeler için gerçek "zemin gerçeği" hakkında bilgi sahibi olmadığı için, öneren değerlendirin , test veri kümesindeki Kullanıcı öğesi derecelendirmelerini NDCG hesaplamasında kazanç olarak kullanır. Değerlendirmek için, öneren Puanlama modülünün yalnızca, temel gerçeği derecelendirmesi olan öğeler için öneriler üretmesi gerekir (test veri kümesinde).

İlgili kullanıcıların tahminlerini değerlendirin

İlgili kullanıcıların tahminlerini değerlendirirken, ilgilendiğiniz her bir kullanıcı için ilgili kullanıcıları içeren bir puanlanmış veri kümesi kullanın:

  • İlk sütun, ilgilendiğiniz her bir kullanıcı için tanımlayıcıları içermelidir.

  • Sonraki tüm sütunlar, tahmin edilen ilgili kullanıcılar için tanımlayıcıları içerir. İlgili kullanıcılar, realtionsevkiyat (ilk olarak en son ilgili Kullanıcı) gücüne göre sıralanır.

  • Öneren 'ın çalışmasını değerlendirmek için, sütun adları, Related User 2Related User 3Related User 1 ,, vb. olmalıdır. User

İpucu

Bir kullanıcının ilgilendiği ve ilgili kullanıcılarının ortak olması gereken en az öğe sayısını ayarlayarak değerlendirmeyi etkileyebilirsiniz.

Değerlendirin öneren , Manhattan (L1 SIM ndcg) ve Euclidean (L2 SIM ndcg) uzaklıkları temelinde ortalama normalleştirilmiş Indirimli kümülatif kazancı (ndcg) hesaplar ve her iki değeri de çıkış veri kümesinde döndürür. İlgili kullanıcılar için gerçek bir temel olmadığından, öneren değerlendirin , ortalama NDCGs 'yi hesaplamak için aşağıdaki yordamı kullanır.

Puanlanmış veri kümesinde ilgilendiğiniz her kullanıcı için:

  1. Test veri kümesindeki hem ilgilendiğiniz kullanıcı hem de ilgili Kullanıcı tarafından derecelendirilen tüm öğeleri bulun.

  2. Bu öğelerin derecelendirmelerinden iki vektör oluşturun: ilgilendiğiniz kullanıcı için bir tane ve ilgili Kullanıcı için göz önünde bulundurulmalıdır.

  3. Manhattan (L1) veya Euclidea (L2) mesafesi açısından, elde edilen iki derecelendirme vektörüne ilişkin benzerlik olarak kazancı hesaplama.

  4. Tüm ilgili kullanıcıların kazançlarını kullanarak L1 SIM NDCG ve L2 SIM NDCG 'sini hesaplama.

  5. Puanlanmış veri kümesindeki tüm kullanıcılar için NDCG değerlerini ortalama.

Diğer bir deyişle, bir Kullanıcı (puanlanmış veri kümesinin ilk sütunundaki girdi) ve belirli bir ilgili Kullanıcı (puanlanmış veri kümesinin n-th sütununda giriş) arasında benzerlik (normalleştirilmiş Manhattan veya Euclienkıs uzaklıkları) olarak hesaplanır. Bu Kullanıcı çiftinin kazancı, her iki öğenin de özgün verilerde (test kümesi) derecelendirildikleri tüm öğeler kullanılarak hesaplanır. Daha sonra, bir İlgilendiğiniz tek bir Kullanıcı ve tüm ilgili kullanıcılar için, logaritmik bir değer elde etmek için bireysel kazanç toplayarak hesaplanır. Diğer bir deyişle, bir NDCG değeri her bir kullanıcı için hesaplanır (puanlanmış veri kümesindeki her satır). Son bildirilen sayı, puanlanmış veri kümesinde (yani, satırları) tüm kullanıcıları ilgilendiren aritmetik ortalamadır.

Bu nedenle, öneren Puanlama modülünün yalnızca, temel gerçeği olan öğeleri olan ilgili kullanıcıları tahmin edebilmesi gerekir (test veri kümesinde).

İlgili öğelerin tahminlerini değerlendirme

İlgili öğelerin tahminini değerlendirirken, ilgi alan her öğe için ilgili öğeleri içeren puanlı bir veri kümesi kullanın:

  • İlk sütunda ilgi alan öğelerin tanımlayıcıları olmalıdır.

  • Sonraki tüm sütunlarda, tahmin edilen ilgili öğeler için, ilgili öğeyle ilgili olanlarla (en ilgili öğe önce) ilgili olacak şekilde sıralandıklarından tanımlayıcılar içermesi gerekir.

  • Evaluate Recommender'ın çalışması için sütun adlarının Item, , Related Item 1, Related Item 2vb Related Item 3. olması gerekir.

İpucu

Bir ilgi öğesinin ve ilgili öğelerinin ortak olması gereken minimum kullanıcı sayısını ayarerek değerlendirmeyi etkileyebilirsiniz.

Evaluate Recommender,Clide (L1 Sim NDCG) ve Öklid (L2 Sim NDCG) uzaklıklarını temel alarak ortalama normalleştirilmiş indirimli kümülatif kazancı (NDCG) hesaplar ve çıkış veri kümesinde her iki değeri de döndürür. İlgili öğeler için gerçek bir gerçek yoktur, evaluate Recommender ortalama NDCG'leri aşağıdaki gibi hesaplar:

Puanlı veri kümesinde ilgi alan her öğe için:

  1. Test veri kümesinde hem ilgi öğesini hem de ilgili öğeyi değerlendiren tüm kullanıcıları bulun.

  2. Bu kullanıcıların derecelendirmelerinden, biri ilgi öğesi ve göz önünde bulundurulan ilgili öğe için olmak için iki vektör oluşturun.

  3. Elde edilen kazancı, elde edilen iki derecelendirme vektörü arasındaki benzerlik olarak Hesapla(L1) veya Euclidean (L2) uzaklığı açısından.

  4. Tüm ilgili öğelerin kazançlarını kullanarak L1 Sim NDCG ve L2 Sim NDCG'yi hesapla.

  5. Puanlı veri kümesinde, NDCG değerlerinin tüm ilgi öğeleri üzerinde ortalamasını verir.

Başka bir deyişle kazanç, ilgi alan bir öğe (puanlı veri kümesinde ilk sütundaki giriş) ile ilgili bir öğe (puanlı veri kümesi n. sütunundaki giriş) arasındaki benzerlik (normalleştirilmiş Euclidian uzaklıkları) olarak hesaplanır. Bu öğe çiftinin kazancı, özgün verilerde (test kümesi) bu öğelerin her ikisini de derecelendiren tüm kullanıcılar kullanılarak hesaplanır. NDCG daha sonra logatik indirim kullanılarak tek bir ilgi öğesi ve tüm ilgili öğeler için bireysel kazançlar toplanacak şekilde hesaplanır. Diğer bir ifadeyle, her bir ilgi öğesi (puanlı veri kümesinde her satır) için bir NDCG değeri hesaplanır. Son olarak raporlanacak sayı, puanlı veri kümesinde (yani satırları) tüm ilgi alanlarına göre aritmetik ortalamadır.

Bu nedenle, değerlendirme yapmak için, öneri puanlama modülünün yalnızca temel doğruluk derecelendirmeleri olan ilgili öğeleri tahmin etmek gerekir (test veri kümesinde).

Örnekler

Örneklerde öneri modellerinin nasıl Machine Learning için bkz. Azure Yapay Zeka Galerisi:

Beklenen girişler

Ad Tür Description
Veri kümelerini test etmek Veri Tablosu Veri kümelerini test etmek
Puanlı veri kümesi Veri Tablosu Puanlı veri kümesi

Modül parametreleri

Name Aralık Tür Varsayılan Description
Sorgu kullanıcı ve ilgili kullanıcının ortak olarak derecelendirilmiş olması gereken minimum öğe sayısı >=1 Tamsayı 2 Hem sorgu kullanıcısı hem de ilgili kullanıcı tarafından derecelendirilmiş olması gereken minimum öğe sayısını belirtin

Bu parametre isteğe bağlıdır
Sorgu öğesinin ve ilgili öğenin ortak olarak derecelendirilmiş olması gereken minimum kullanıcı sayısı >=1 Tamsayı 2 Hem sorgu öğesini hem de ilgili öğeyi derecelendirilmiş olması gereken minimum kullanıcı sayısını belirtin

Bu parametre isteğe bağlıdır

Çıkışlar

Ad Tür Description
Metric Veri Tablosu Değerlendirme ölçümleri tablosu

Özel durumlar

Özel durum Description
Hata 0022 Giriş veri kümesinde seçilen sütun sayısı beklenen sayıya eşit yoksa özel durum oluşur.
Hata 0003 Bir veya daha fazla giriş null veya boşsa özel durum oluşur.
Hata 0017 Belirtilen bir veya daha fazla sütun türü geçerli modül tarafından desteklenmiyorsa özel durum oluşur.
Hata 0034 Bir kullanıcı öğesi çifti için birden fazla derecelendirme varsa özel durum oluşur.
Hata 0018 Giriş veri kümesi geçerli değilse özel durum oluşur.
Hata 0002 Bir veya daha fazla parametre ayrıştırılana veya belirtilen türden hedef yöntem türü için gerekliye dönüştürülememesi özel durum oluşur.

Studio (klasik) modüllerine özgü hataların listesi için bkz. Machine Learning kodları.

API özel durumlarının listesi için bkz. Machine Learning REST API Kodları.

Ayrıca bkz.

Train Matchbox Recommender
Puan Eşleşme Kutusu Önerici