Dela via


Poäng för SVD-rekommenderare

I den här artikeln beskrivs hur du använder komponenten Poängsätta SVD-rekommenderare i Azure Machine Learning-designern. Använd den här komponenten för att skapa förutsägelser med hjälp av en tränad rekommendationsmodell baserat på SVD-algoritmen (Single Value Decomposition).

SVD-rekommendationer kan generera två olika typer av förutsägelser:

När du skapar den andra typen av förutsägelser kan du arbeta i något av följande lägen:

  • Produktionsläget tar hänsyn till alla användare eller objekt. Den används vanligtvis i en webbtjänst.

    Du kan skapa poäng för nya användare, inte bara användare som visas under träningen. Mer information finns i de tekniska anteckningarna.

  • Utvärderingsläget fungerar på en reducerad uppsättning användare eller objekt som kan utvärderas. Den används vanligtvis under pipelineåtgärder.

Mer information om algoritmen för SVD-rekommenderare finns i forskningsdokumentet Matrisfaktoriseringstekniker för rekommenderade system.

Så här konfigurerar du poängrekommendator för SVD

Den här komponenten stöder två typer av förutsägelser, var och en med olika krav.

Förutsägelse av klassificeringar

När du förutsäger klassificeringar beräknar modellen hur en användare kommer att reagera på ett visst objekt med tanke på träningsdata. Indata för bedömning måste ge både en användare och objektet att betygsätta.

  1. Lägg till en tränad rekommendationsmodell i pipelinen och anslut den till den tränade SVD-rekommenderaren. Du måste skapa modellen med hjälp av komponenten Träna SVD-rekommenderare .

  2. För Förutsägelsetyp för rekommenderare väljer du Omdömesförutsägelse. Inga andra parametrar krävs.

  3. Lägg till de data som du vill göra förutsägelser för och anslut dem till Datauppsättning för att göra poäng.

    För att modellen ska kunna förutsäga klassificeringar måste indatauppsättningen innehålla användarobjektpar.

    Datamängden kan innehålla en valfri tredje kolumn med klassificeringar för användarobjektparet i de första och andra kolumnerna. Men den tredje kolumnen ignoreras under förutsägelsen.

  4. Skicka pipelinen.

Resultat för omdömesförutsägelser

Utdatauppsättningen innehåller tre kolumner: användare, objekt och den förväntade klassificeringen för varje indataanvändare och objekt.

Rekommendationer för användare

Om du vill rekommendera objekt för användare anger du en lista över användare och objekt som indata. Utifrån dessa data använder modellen sina kunskaper om befintliga objekt och användare för att generera en lista över objekt med sannolikt tilltalande för varje användare. Du kan anpassa antalet rekommendationer som returneras. Och du kan ange ett tröskelvärde för antalet tidigare rekommendationer som krävs för att generera en rekommendation.

  1. Lägg till en tränad rekommendationsmodell i pipelinen och anslut den till den tränade SVD-rekommenderaren. Du måste skapa modellen med hjälp av komponenten Träna SVD-rekommenderare .

  2. Om du vill rekommendera objekt för en lista över användare anger du Rekommendationsprediktionstyp till Objektrekommendations.

  3. För Val av rekommenderat objekt anger du om du använder bedömningskomponenten i produktion eller för modellutvärdering. Välj något av följande värden:

    • Från Alla objekt: Välj det här alternativet om du konfigurerar en pipeline som ska användas i en webbtjänst eller i produktion. Det här alternativet aktiverar produktionsläge. Komponenten ger rekommendationer från alla objekt som visas under träningen.

    • Från Klassificerade objekt (för modellutvärdering): Välj det här alternativet om du utvecklar eller testar en modell. Det här alternativet aktiverar utvärderingsläge. Komponenten ger endast rekommendationer från de objekt i indatauppsättningen som har klassificerats.

    • Från Oklassificerade objekt (för att föreslå nya objekt för användare): Välj det här alternativet om du vill att komponenten endast ska ge rekommendationer från de objekt i träningsdatauppsättningen som inte har klassificerats.

  4. Lägg till den datauppsättning som du vill göra förutsägelser för och anslut den till Datauppsättning för att göra poäng.

    • För Från alla objekt ska indatauppsättningen bestå av en kolumn. Den innehåller identifierare för användare som du kan ge rekommendationer för.

      Datamängden kan innehålla ytterligare två kolumner med objektidentifierare och klassificeringar, men dessa två kolumner ignoreras.

    • För Från klassificerade objekt (för modellutvärdering) ska indatauppsättningen bestå av användarobjektpar. Den första kolumnen ska innehålla användaridentifieraren. Den andra kolumnen ska innehålla motsvarande objektidentifierare.

      Datamängden kan innehålla en tredje kolumn med klassificeringar av användarobjekt, men den här kolumnen ignoreras.

    • För Från oklassificerade objekt (för att föreslå nya objekt till användare)bör indatauppsättningen bestå av användarobjektpar. Den första kolumnen ska innehålla användaridentifieraren. Den andra kolumnen ska innehålla motsvarande objektidentifierare.

    Datamängden kan innehålla en tredje kolumn med klassificeringar av användarobjekt, men den här kolumnen ignoreras.

  5. Maximalt antal objekt att rekommendera till en användare: Ange antalet objekt som ska returneras för varje användare. Som standard rekommenderar komponenten fem objekt.

  6. Minsta storlek på rekommendationspoolen per användare: Ange ett värde som anger hur många tidigare rekommendationer som krävs. Som standard är den här parametern inställd på 2, vilket innebär att minst två andra användare har rekommenderat objektet.

    Använd endast det här alternativet om du bedömer i utvärderingsläge. Alternativet är inte tillgängligt om du väljer Från alla objekt eller Från oklassificerade objekt (för att föreslå nya objekt för användare).

  7. För Från ej klassificerade objekt (för att föreslå nya objekt till användare)använder du den tredje indataporten med namnet Träningsdata för att ta bort objekt som redan har klassificerats från förutsägelseresultatet.

    Om du vill använda det här filtret ansluter du den ursprungliga träningsdatauppsättningen till indataporten.

  8. Skicka pipelinen.

Resultat av objektrekommendering

Den poängsatta datamängden som returneras av Score SVD Recommender visar de rekommenderade objekten för varje användare:

  • Den första kolumnen innehåller användaridentifierarna.
  • Ett antal ytterligare kolumner genereras, beroende på det värde som du anger för Maximalt antal objekt att rekommendera till en användare. Varje kolumn innehåller ett rekommenderat objekt (efter identifierare). Rekommendationerna sorteras efter mappning mellan användare och objekt. Objektet med högsta tillhörighet placeras i kolumnen Objekt 1.

Tekniska anteckningar

Om du har en pipeline med SVD-rekommenderaren och du flyttar modellen till produktion bör du vara medveten om att det finns viktiga skillnader mellan att använda rekommendationsverktyget i utvärderingsläge och att använda den i produktionsläge.

Utvärdering kräver per definition förutsägelser som kan verifieras mot den grundläggande sanningen i en testuppsättning. När du utvärderar rekommendationen måste den bara förutsäga objekt som har klassificerats i testuppsättningen. Detta begränsar de möjliga värden som förutsägs.

När du operationaliserar modellen ändrar du vanligtvis förutsägelseläget för att ge rekommendationer baserat på alla möjliga objekt för att få bästa möjliga förutsägelser. För många av dessa förutsägelser finns det ingen motsvarande grundsanning. Rekommendationens noggrannhet kan därför inte verifieras på samma sätt som vid pipelineåtgärder.

Nästa steg

Se den uppsättning komponenter som är tillgängliga för Azure Machine Learning.