Träna SVD-rekommenderare

Den här artikeln beskriver hur du använder komponenten Train SVD Recommender i Azure Machine Learning Designer. Använd den här komponenten för att träna en rekommendationsmodell baserat på SVD-algoritmen (Single Value Decomposition).

Komponenten Train SVD Recommender läser en datauppsättning med trippelklassificering av användarobjekt. Den returnerar en tränad SVD-rekommenderare. Du kan sedan använda den tränade modellen för att förutsäga klassificeringar eller generera rekommendationer genom att ansluta komponenten Poängsätta SVD-rekommenderare .

Mer om rekommendationsmodeller och SVD-rekommenderare

Huvudsyftet med ett rekommendationssystem är att rekommendera en eller flera objekt till användare av systemet. Exempel på ett objekt kan vara en film, restaurang, bok eller sång. En användare kan vara en person, en grupp med personer eller en annan entitet med objektinställningar.

Det finns två huvudsakliga metoder för att rekommendera system:

  • En innehållsbaserad metod använder funktioner för både användare och objekt. Användare kan beskrivas av egenskaper som ålder och kön. Objekt kan beskrivas av egenskaper som författare och tillverkare. Du hittar vanliga exempel på innehållsbaserade rekommendationssystem på webbplatser för social matchmaking.
  • Samarbetsfiltrering använder endast identifierare för användare och objekt. Den hämtar implicit information om dessa entiteter från en (gles) matris med omdömen från användarna till objekten. Vi kan lära oss om en användare från de objekt som de har betygsatt och från andra användare som har betygsatt samma objekt.

SVD-rekommendationsverktyget använder identifierare för användarna och objekten samt en matris med klassificeringar som användarna ger objekten. Det är en samarbetsrekommendator.

Mer information om SVD-rekommenderaren finns i relevant forskningsdokument: Matrisfaktoriseringstekniker för rekommenderade system.

Så här konfigurerar du train SVD Recommender

Förbereda data

Innan du använder komponenten måste dina indata vara i det format som rekommendationsmodellen förväntar sig. En träningsdatauppsättning med trippelklassificering av användarobjekt krävs.

  • Den första kolumnen innehåller användaridentifierare.
  • Den andra kolumnen innehåller objektidentifierare.
  • Den tredje kolumnen innehåller klassificeringen för användarobjektparet. Klassificeringsvärdena måste vara numeriska.

Datauppsättningen Filmklassificeringar i Azure Machine Learning-designern (välj Datauppsättningar och sedan Exempel) visar det förväntade formatet:

Filmklassificeringar

I det här exemplet kan du se att en enskild användare har betygsatt flera filmer.

Träna modellen

  1. Lägg till komponenten Train SVD Recommender (Träna SVD-rekommenderare) i pipelinen i designern och anslut den till träningsdata.

  2. För Antal faktorer anger du antalet faktorer som ska användas med rekommenderaren.

    Varje faktor mäter hur mycket användaren är relaterad till objektet. Antalet faktorer är också dimensionaliteten i latent faktorutrymme. När antalet användare och objekt ökar är det bättre att ange ett större antal faktorer. Men om talet är för stort kan prestandan minska.

  3. Antalet iterationer av rekommendationsalgoritmer anger hur många gånger algoritmen ska bearbeta indata. Ju högre det här talet är, desto mer exakta är förutsägelserna. Ett högre tal innebär dock långsammare träning. Standardvärdet är 30.

  4. För Inlärningsfrekvens anger du ett tal mellan 0,0 och 2,0 som definierar stegstorleken för inlärning.

    Inlärningsfrekvensen avgör storleken på steget vid varje iteration. Om stegstorleken är för stor kan du felsöka den optimala lösningen. Om stegstorleken är för liten tar det längre tid att träna för att hitta den bästa lösningen.

  5. Skicka pipelinen.

Resultat

När pipelinejobbet har slutförts ansluter du train SVD Recommender till Score SVD Recommender för att förutsäga värden för nya indataexempel för att använda modellen för bedömning.

Nästa steg

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