Vyhodnocení doporučovacího systému

Tento článek popisuje, jak používat komponentu Evaluate Recommender v návrháři služby Azure Machine Learning. Cílem je změřit přesnost předpovědí, které model doporučení provedl. Pomocí této komponenty můžete vyhodnotit různé druhy doporučení:

  • Hodnocení predikovaná pro uživatele a položku
  • Položky doporučené pro uživatele

Při vytváření předpovědí pomocí modelu doporučení se pro každý z těchto podporovaných typů predikcí vrátí mírně odlišné výsledky. Komponenta Evaluate Recommender odvodit druh předpovědi z formátu sloupce vyhodnocené datové sady. Datová sada se skóre může například obsahovat:

  • Hodnocení položky uživatele – trojice
  • Uživatelé a jejich doporučené položky

Komponenta také použije odpovídající metriky výkonu na základě typu vytvářené předpovědi.

Postup konfigurace nástroje Evaluate Recommender

Komponenta Evaluate Recommender porovnává výstup předpovědi pomocí modelu doporučení s odpovídajícími daty "základní pravdy". Například komponenta Score SVD Recommender vytvoří vyhodnocené datové sady, které můžete analyzovat pomocí funkce Evaluate Recommender.

Požadavky

Funkce Evaluate Recommender vyžaduje jako vstup následující datové sady.

Testovací datová sada

Testovací datová sada obsahuje "základní pravdivá" data ve formě trojitých hodnocení položek uživatele.

Datová sada se skóre

Datová sada se skóre obsahuje předpovědi, které model doporučení vygeneroval.

Sloupce v této druhé datové sadě závisí na druhu předpovědi, kterou jste provedli během procesu vyhodnocování. Datová sada se skóre může například obsahovat některou z následujících položek:

  • Uživatelé, položky a hodnocení, která by uživatel pravděpodobně dal pro danou položku
  • Seznam uživatelů a doporučených položek

Metriky

Metriky výkonu pro model se generují na základě typu vstupu. Podrobnosti najdete v následujících částech.

Vyhodnocení predikovaných hodnocení

Při vyhodnocování predikovaných hodnocení musí datová sada se skóre (druhý vstup funkce Evaluate Recommender) obsahovat trojice hodnocení položek uživatele, které splňují tyto požadavky:

  • První sloupec datové sady obsahuje identifikátory uživatelů.
  • Druhý sloupec obsahuje identifikátory položek.
  • Třetí sloupec obsahuje odpovídající hodnocení uživatelských položek.

Důležité

Aby bylo vyhodnocení úspěšné, musí být Usernázvy sloupců , Itema Rating.

Evaluate Recommender porovnává hodnocení v datové sadě "základní pravdy" s predikovanými hodnoceními hodnocené datové sady. Pak vypočítá střední absolutní chybu (MAE) a odmocněnou střední kvadratickou chybu (RMSE).

Vyhodnocení doporučení pro položky

Při vyhodnocování doporučení položek použijte datovou sadu se skóre, která obsahuje doporučené položky pro každého uživatele:

  • První sloupec datové sady musí obsahovat identifikátor uživatele.
  • Všechny následující sloupce by měly obsahovat odpovídající doporučené identifikátory položek seřazené podle toho, jak relevantní je položka pro uživatele.

Před připojením této datové sady doporučujeme datovou sadu seřadit tak, aby nejdůležitější položky byly jako první.

Důležité

Aby funkce Vyhodnotit doporučovací nástroj fungovala, musí být Usernázvy sloupců , Item 1, Item 3Item 2atd.

Funkce Evaluate Recommender vypočítá průměrný normalizovaný diskontovaný kumulativní zisk (NDCG) a vrátí ho ve výstupní datové sadě.

Vzhledem k tomu, že není možné zjistit skutečnou "základní pravdu" doporučených položek, použije funkce Evaluate Recommender hodnocení položek uživatele v testovací datové sadě jako zisky ve výpočtu NDCG. Při vyhodnocování musí komponenta bodování doporučujícího vygenerovat doporučení pouze pro položky s hodnocením základní pravdy (v testovací datové sadě).

Další kroky

Podívejte se na sadu komponent dostupných pro Azure Machine Learning.