Offlineutvärdering

Offlineutvärdering är en metod som gör att du kan testa och utvärdera effektiviteten i Personanpassartjänsten utan att ändra din kod eller påverka användarupplevelsen. Offlineutvärderingen använder tidigare data, som skickas från ditt program till RANK- och belönings-API:erna, för att jämföra hur olika rangordningar har presterat.

Offlineutvärderingen utförs på ett datumintervall. Intervallet kan avslutas så sent som den aktuella tiden. Början av intervallet får inte vara längre än det antal dagar som anges för datalagring.

Offlineutvärdering kan hjälpa dig att besvara följande frågor:

  • Hur effektiva är Personanpassningsr rankning för lyckad personanpassning?
    • Vilka är de genomsnittliga förmånerna som uppnås av onlineinlärningspolicyn för Personanpassare?
    • Hur är Personanpassare jämfört med hur effektivt programmet skulle ha gjort som standard?
    • Vad skulle ha varit den komparativa effektiviteten för ett slumpmässigt val för anpassning?
    • Vad skulle ha varit den relativa effektiviteten för olika inlärningsprinciper som angetts manuellt?
  • Vilka funktioner i kontexten bidrar mer eller mindre till en lyckad personanpassning?
  • Vilka funktioner i åtgärderna bidrar mer eller mindre till en lyckad personanpassning?

Dessutom kan offlineutvärdering användas för att identifiera mer optimerade utbildningsprinciper som Personanpassare kan använda för att förbättra resultaten i framtiden.

Offlineutvärderingar ger inte vägledning om procentandelen händelser som ska användas för utforskning.

Förutsättningar för offlineutvärdering

Följande är viktiga överväganden för den representativa offlineutvärderingen:

  • Ha tillräckligt med data. Det rekommenderade minimiantalet är minst 50 000 händelser.
  • Samla in data från perioder med representativt användarbeteende och trafik.

Identifiera den optimerade inlärningsprincipen

Personanpassare kan använda offlineutvärderingsprocessen för att automatiskt identifiera en mer optimal inlärningsprincip.

När du har utfört offlineutvärderingen kan du se den relativa effektiviteten hos Personanpassare med den nya principen jämfört med den aktuella onlineprincipen. Du kan sedan använda den utbildningspolicyn för att göra den effektiv direkt i Personanpassaren genom att ladda ned den och ladda upp den på panelen Modeller och princip. Du kan också ladda ned den för framtida analys eller användning.

Aktuella principer som ingår i utvärderingen:

Learning inställningar Syfte
Onlineprincip Den aktuella Learning princip som används i Personanpassaren
Baslinje Programmets standard (bestäms av den första åtgärden som skickas i Rank-anrop)
Slumpmässig princip Ett föreställt rangordningsbeteende som alltid returnerar slumpmässigt val av åtgärder från de angivna.
Anpassade principer Ytterligare Learning-principer som laddades upp när utvärderingen startades.
Optimerad princip Om utvärderingen startades med alternativet att identifiera en optimerad princip jämförs den också, och du kan ladda ned den eller göra den till onlineinlärningsprincip och ersätta den aktuella.

Förstå relevansen för offlineutvärderingsresultat

När du kör en offlineutvärdering är det mycket viktigt att analysera resultatens konfidensbundna gränser. Om de är breda innebär det att ditt program inte har fått tillräckligt med data för att uppskattningen av belöningen ska vara exakt eller betydande. När systemet ackumulerar mer data och du kör offlineutvärderingar under längre perioder blir konfidensintervallen smalare.

Så här görs offlineutvärderingar

Offlineutvärderingar görs med hjälp av en metod som heter Counterfactual Evaluation ( Kontrafaktisk utvärdering).

Personanpassaren bygger på antagandet att användarnas beteende (och därmed förmåner) är omöjliga att förutsäga i efterhand (Personanpassaren kan inte veta vad som skulle ha hänt om användaren hade visat något annat än vad de såg) och bara lära sig av uppmätta förmåner.

Det här är den konceptuella process som används för utvärderingar:

[For a given _learning policy), such as the online learning policy, uploaded learning policies, or optimized candidate policies]:
{
    Initialize a virtual instance of Personalizer with that policy and a blank model;

    [For every chronological event in the logs]
    {
        - Perform a Rank call

        - Compare the reward of the results against the logged user behavior.
            - If they match, train the model on the observed reward in the logs.
            - If they don't match, then what the user would have done is unknown, so the event is discarded and not used for training or measurement.

    }

    Add up the rewards and statistics that were predicted, do some aggregation to aid visualizations, and save the results.
}

Offlineutvärderingen använder bara observerat användarbeteende. Den här processen tar bort stora mängder data, särskilt om programmet gör Rank-anrop med ett stort antal åtgärder.

Utvärdering av funktioner

Offlineutvärderingar kan ge information om hur mycket av de specifika funktionerna för åtgärder eller kontext som krävs för högre förmåner. Informationen beräknas med utvärderingen mot den angivna tidsperioden och data och kan variera beroende på tid.

Vi rekommenderar att du tittar på funktionsutvärderingar och frågar:

  • Vilka andra, ytterligare, funktioner kan ditt program eller system tillhandahålla i linje med dem som är mer effektiva?
  • Vilka funktioner kan tas bort på grund av låg effektivitet? Funktioner med låg effektivitet ger brus i maskininlärning.
  • Finns det några funktioner som ingår av misstag? Exempel på detta är användaridentifierande information, dubblett-ID:er osv.
  • Finns det några oönskade funktioner som inte bör användas för att anpassa på grund av regelmässiga eller ansvarsfulla användningsöverväganden? Finns det funktioner som kan proxy (det vill säga nära spegla eller korrelera med) oönskade funktioner?

Nästa steg

Konfigurera personanpassare Köra offlineutvärderingar Förstå hur personanpassare fungerar