Delen via


Beloningsscores geven aan dat persoonlijke instellingen zijn geslaagd

Belangrijk

Vanaf 20 september 2023 kunt u geen nieuwe Personalizer-resources maken. De Personalizer-service wordt op 1 oktober 2026 buiten gebruik gesteld.

De beloningsscore geeft aan hoe goed de keuze voor persoonlijke instellingen, RewardActionID, heeft geresulteerd in de gebruiker. De waarde van de beloningsscore wordt bepaald door uw bedrijfslogica, op basis van waarnemingen van gebruikersgedrag.

Personalizer traint zijn machine learning-modellen door de beloningen te evalueren.

Meer informatie over het configureren van de standaard beloningsscore in Azure Portal voor uw Personalizer-resource.

Reward-API gebruiken om beloningsscore te verzenden naar Personalizer

Rewards worden verzonden naar Personalizer door de Reward-API. Normaal gesproken is een beloning een getal tussen 0 en 1. Een negatieve beloning, met de waarde van -1, is mogelijk in bepaalde scenario's en mag alleen worden gebruikt als u ervaring hebt met versterkingsleer (RL). Personalizer traint het model om de hoogst mogelijke som van beloningen in de loop van de tijd te bereiken.

Rewards worden verzonden nadat het gebruikersgedrag is gebeurd, wat dagen later kan zijn. De maximale hoeveelheid tijd die Personalizer wacht totdat een gebeurtenis wordt beschouwd als geen beloning of een standaardbeloning is geconfigureerd met de wachttijd voor beloning in Azure Portal.

Als de beloningsscore voor een gebeurtenis niet is ontvangen binnen de wachttijd voor beloning, wordt de standaardbeloning toegepast. Normaal gesproken is de standaardbeloning zo geconfigureerd dat deze nul is.

Gedrag en gegevens om rekening mee te houden voor beloningen

Houd rekening met deze signalen en gedragingen voor de context van de beloningsscore:

  • Directe gebruikersinvoer voor suggesties wanneer er opties betrokken zijn ('Bedoelt u X?').
  • Sessielengte.
  • Tijd tussen sessies.
  • Sentimentanalyse van de interacties van de gebruiker.
  • Directe vragen en mini-enquêtes waarbij de bot de gebruiker vraagt om feedback over bruikbaarheid, nauwkeurigheid.
  • Reactie op waarschuwingen of vertraging bij reactie op waarschuwingen.

Beloningsscores opstellen

Een Beloningsscore moet worden berekend in uw bedrijfslogica. De score kan worden weergegeven als:

  • Eén getal dat eenmaal is verzonden
  • Een score die onmiddellijk is verzonden (zoals 0,8) en een extra score die later wordt verzonden (meestal 0,2).

Standaardbeloningen

Als er geen beloning wordt ontvangen binnen de wachttijd voor beloning, past Personalizer impliciet de standaardbeloning toe op die rangschikkingsgebeurtenis.

Beloningen opbouwen met meerdere factoren

Voor effectieve personalisatie kunt u de beloningsscore opbouwen op basis van meerdere factoren.

U kunt bijvoorbeeld deze regels toepassen voor het personaliseren van een lijst met video-inhoud:

Gebruikersgedrag Gedeeltelijke scorewaarde
De gebruiker heeft op het bovenste item geklikt. +0,5 beloning
De gebruiker heeft de werkelijke inhoud van dat item geopend. +0,3 beloning
De gebruiker heeft 5 minuten van de inhoud of 30% bekeken, afhankelijk van wat langer is. +0,2 beloning

Vervolgens kunt u de totale beloning naar de API verzenden.

De Reward-API meerdere keren aanroepen

U kunt de Reward-API ook aanroepen met dezelfde gebeurtenis-id, waarbij verschillende beloningsscores worden verzonden. Wanneer Personalizer deze beloningen krijgt, wordt de uiteindelijke beloning voor die gebeurtenis bepaald door deze te aggregeren zoals opgegeven in de Personalizer-configuratie.

Aggregatiewaarden:

  • Eerste: Neemt de eerste beloningsscore die is ontvangen voor de gebeurtenis en negeert de rest.
  • Som: Neemt alle beloningsscores die zijn verzameld voor de eventId en voegt ze samen toe.

Alle beloningen voor een gebeurtenis, die worden ontvangen na de wachttijd voor beloning, worden verwijderd en hebben geen invloed op de training van modellen.

Als u beloningsscores optelt, kan uw uiteindelijke beloning buiten het verwachte scorebereik liggen. Hierdoor mislukt de service.

Aanbevolen procedures voor het berekenen van beloningsscore

  • Houd rekening met echte indicatoren van succesvolle personalisatie: het is gemakkelijk om te denken in termen van klikken, maar een goede beloning is gebaseerd op wat uw gebruikers moeten bereiken in plaats van wat u wilt dat mensen doen. Het belonen van klikken kan bijvoorbeeld leiden tot het selecteren van inhoud die gevoelig is voor clickbait.

  • Gebruik een beloningsscore voor hoe goed de personalisatie werkte: het personaliseren van een filmsuggestie zou hopelijk resulteren in de gebruiker die de film bekijkt en deze een hoge waardering geeft. Aangezien de filmclassificatie waarschijnlijk afhankelijk is van veel dingen (de kwaliteit van het acteren, de stemming van de gebruiker), is het geen goed beloningssignaal voor hoe goed de personalisatie werkte. De gebruiker die de eerste paar minuten van de film bekijkt, kan echter een beter signaal zijn van de effectiviteit van persoonlijke instellingen en het verzenden van een beloning van 1 na 5 minuten is een beter signaal.

  • Rewards zijn alleen van toepassing op RewardActionID: Personalizer past de beloningen toe om inzicht te krijgen in de werkzaamheid van de actie die is opgegeven in RewardActionID. Als u andere acties wilt weergeven en de gebruiker deze selecteert, moet de beloning nul zijn.

  • Houd rekening met onbedoelde gevolgen: beloningsfuncties maken die leiden tot verantwoorde resultaten met ethiek en verantwoord gebruik.

  • Incrementele beloningen gebruiken: het toevoegen van gedeeltelijke beloningen voor kleinere gebruikersgedrag helpt Personalizer om betere beloningen te bereiken. Met deze incrementele beloning kan het algoritme weten dat het dichter bij de gebruiker komt te staan bij het uiteindelijke gewenste gedrag.

    • Als u een lijst met films weergeeft en de gebruiker de eerste voor een tijdje aanwijst om meer informatie te zien, kunt u bepalen of er sprake is van gebruikersbetrokkenheid. Het gedrag kan tellen met een beloningsscore van 0,1.
    • Als de gebruiker de pagina heeft geopend en vervolgens is afgesloten, kan de beloningsscore 0,2 zijn.

Wachttijd voor beloning

Personalizer correleert de informatie van een Rank-aanroep met de beloningen die in Reward-aanroepen worden verzonden om het model te trainen, wat op verschillende momenten kan komen. Personalizer wacht op de beloningsscore voor een gedefinieerde beperkte tijd, te beginnen wanneer de bijbehorende Rank-aanroep heeft plaatsgevonden. Dit gebeurt zelfs als de Rank-aanroep is uitgevoerd met behulp van uitgestelde activering](concept-active-inactive-events.md).

Als de beloningswachttijd verloopt en er geen beloningsgegevens zijn, wordt er een standaardbeloning toegepast op die gebeurtenis voor training. U kunt een beloningswachttijd van 10 minuten, 4 uur, 12 uur of 24 uur selecteren. Als voor uw scenario langere wachttijden voor beloning zijn vereist (bijvoorbeeld voor marketing-e-mailcampagnes), bieden we een privévoorbeeld van langere wachttijden. Open een ondersteuningsticket in Azure Portal om contact op te kunnen maken met het team en te zien of u in aanmerking komt en het aan u kan worden aangeboden.

Aanbevolen procedures voor wachttijd voor beloning

Volg deze aanbevelingen voor betere resultaten.

  • Maak de wachttijd voor beloning zo kort mogelijk en laat voldoende tijd over om feedback van gebruikers te krijgen.

  • Kies geen duur die korter is dan de tijd die nodig is om feedback te krijgen. Als een aantal van uw beloningen bijvoorbeeld binnenkomt nadat een gebruiker 1 minuut van een video heeft bekeken, moet de lengte van het experiment ten minste verdubbeld zijn.

Volgende stappen