Aanbevelingsfunctie voor evaluatie

In dit artikel wordt beschreven hoe u het onderdeel Evaluate Recommender gebruikt in de Azure Machine Learning-ontwerpfunctie. Het doel is om de nauwkeurigheid te meten van voorspellingen die een aanbevelingsmodel heeft gemaakt. Met behulp van dit onderdeel kunt u verschillende soorten aanbevelingen evalueren:

  • Classificaties voorspeld voor een gebruiker en een item
  • Aanbevolen items voor een gebruiker

Wanneer u voorspellingen maakt met behulp van een aanbevelingsmodel, worden iets andere resultaten geretourneerd voor elk van deze ondersteunde voorspellingstypen. Het onderdeel Evaluate Recommender leidt het soort voorspelling af uit de kolomindeling van de scoregegevensset. De scoregegevensset kan bijvoorbeeld het volgende bevatten:

  • Driemaal aantal gebruikersitems beoordelen
  • Gebruikers en hun aanbevolen items

Het onderdeel past ook de juiste metrische prestatiegegevens toe, op basis van het type voorspelling dat wordt gedaan.

Evaluate Recommender configureren

Het onderdeel Evaluate Recommender vergelijkt de voorspellingsuitvoer met behulp van een aanbevelingsmodel met de bijbehorende 'ground truth'-gegevens. Het onderdeel Score SVD Recommender produceert bijvoorbeeld scored gegevenssets die u kunt analyseren met behulp van Evaluate Recommender.

Vereisten

Evaluate Recommender vereist de volgende gegevenssets als invoer.

Gegevensset testen

De testgegevensset bevat de 'ground truth'-gegevens in de vorm van triples voor de beoordeling van gebruikersitems.

Scored gegevensset

De scoregegevensset bevat de voorspellingen die door het aanbevelingsmodel zijn gegenereerd.

De kolommen in deze tweede gegevensset zijn afhankelijk van het type voorspelling dat u hebt uitgevoerd tijdens het scoreproces. De scoregegevensset kan bijvoorbeeld een van de volgende items bevatten:

  • Gebruikers, items en de beoordelingen die de gebruiker waarschijnlijk voor het item zou geven
  • Een lijst met gebruikers en items die voor hen worden aanbevolen

Metrische gegevens

Metrische prestatiegegevens voor het model worden gegenereerd op basis van het type invoer. In de volgende secties vindt u meer informatie.

Voorspelde beoordelingen evalueren

Wanneer u voorspelde classificaties evalueert, moet de scoregegevensset (de tweede invoer voor Evaluate Recommender) drievoudige classificaties voor gebruikersitems bevatten die voldoen aan deze vereisten:

  • De eerste kolom van de gegevensset bevat de gebruikers-id's.
  • De tweede kolom bevat de item-id's.
  • De derde kolom bevat de bijbehorende classificaties van gebruikersitems.

Belangrijk

De evaluatie slaagt alleen als de kolomnamen respectievelijk , Itemen Rating, zijnUser.

Evaluate Recommender vergelijkt de classificaties in de gegevensset 'ground truth' met de voorspelde beoordelingen van de scoregegevensset. Vervolgens worden de gemiddelde absolute fout (MAE) en de wortel van de gemiddelde kwadratische fout (RMSE) berekend.

Aanbevelingen voor items evalueren

Wanneer u aanbevelingen voor items evalueert, gebruikt u een scoregegevensset die de aanbevolen items voor elke gebruiker bevat:

  • De eerste kolom van de gegevensset moet de gebruikers-id bevatten.
  • Alle volgende kolommen moeten de bijbehorende aanbevolen item-id's bevatten, geordend op hoe relevant een item is voor de gebruiker.

Voordat u deze gegevensset koppelt, wordt u aangeraden de gegevensset zo te sorteren dat de meest relevante items als eerste worden weergegeven.

Belangrijk

Aanbeveling evalueren werkt alleen als de kolomnamen , Item 1, Item 2enzovoort Item 3 zijnUser.

Evaluate Recommender berekent de gemiddelde genormaliseerde genormaliseerde cumulatieve winst (NDCG) en retourneert deze in de uitvoergegevensset.

Omdat het onmogelijk is om de werkelijke 'grondwaar' voor de aanbevolen items te weten, gebruikt Evaluate Recommender de classificaties van gebruikersitems in de testgegevensset als winst in de berekening van de NDCG. Om te kunnen evalueren, moet het beoordelingsonderdeel van de aanbeveling alleen aanbevelingen produceren voor items met 'grondwaar'-classificaties (in de testgegevensset).

Volgende stappen

Bekijk de set onderdelen die beschikbaar zijn voor Azure Machine Learning.