På et grundlæggende niveau lærer Machine Learning (ML) teknologi af data for at lave forudsigelser. Virksomheder bruger deres data med en ML-drevet personaliseringstjeneste for at forbedre deres kundeoplevelse. Denne tilgang giver virksomheder mulighed for at bruge data til at udlede handlingsorienteret indsigt og hjælpe med at øge deres omsætning og varemærkeloyalitet.
Amazon Tilpas accelererer din digitale transformation med ML, hvilket gør det nemmere at integrere personlige anbefalinger i eksisterende websteder, applikationer, e-mailmarketingsystemer og mere. Amazon Personalize gør det muligt for udviklere hurtigt at implementere en tilpasset personaliseringsmotor uden at kræve ML-ekspertise. Amazon Personalize sørger for den nødvendige infrastruktur og administrerer hele maskinlæringspipelinen (ML), inklusive behandling af data, identifikation af funktioner, brug af de mest passende algoritmer og træning, optimering og hosting af modellerne. Du modtager resultater gennem en API og betaler kun for det, du bruger, uden minimumsgebyrer eller forhåndsforpligtelser.
Stillingen Arkitektering af personlige anbefalinger i næsten realtid med Amazon Personalize viser, hvordan man udarbejder personlige anbefalinger i næsten realtid ved hjælp af Amazon Personalize og AWS specialbyggede datatjenester. I dette indlæg leder vi dig gennem en referenceimplementering af et personligt anbefalingssystem i realtid ved hjælp af Amazon Personalize.
Løsningsoversigt
Realtidsløsningen med personlige anbefalinger implementeres vha Amazon Tilpas, Amazon Simple Storage Service (Amazon S3), Amazon Kinesis datastrømme, AWS Lambdaog Amazon API Gateway.
Arkitekturen er implementeret som følger:
- Forberedelse af data - Start med oprettelse af en datasætgruppe, skemaer og datasæt repræsenterer dine varer, interaktioner og brugerdata.
- Træn modellen – Når du har importeret dine data, skal du vælge den opskrift, der matcher din brugssituation, og derefter skabe en løsning at træne en model ved skabe en løsningsversion. Når din løsningsversion er klar, kan du oprette en kampagne for din løsningsversion.
- Få næsten realtidsanbefalinger – Når du har en kampagne, kan du integrere opkald til kampagnen i din ansøgning. Det er her opkald til Få anbefalinger or Få personlig rangering API'er er lavet til at anmode om næsten realtidsanbefalinger fra Amazon Personalize.
For mere information henvises til Arkitektering af personlige anbefalinger i næsten realtid med Amazon Personalize.
Følgende diagram illustrerer løsningsarkitekturen.
Implementering
Vi demonstrerer denne implementering med en use case om at lave filmanbefalinger i realtid til en slutbruger baseret på deres interaktioner med filmdatabasen over tid.
Løsningen implementeres ved hjælp af følgende trin:
- Forudsætning (dataforberedelse)
- Konfigurer dit udviklingsmiljø
- Implementer løsningen
- Opret en løsningsversion
- Opret en kampagne
- Opret en begivenhedssporing
- Få anbefalinger
- Indtag interaktioner i realtid
- Validere anbefalinger i realtid
- Ryd op
Forudsætninger
Før du går i gang, skal du sørge for at have følgende forudsætninger:
- Forbered dine træningsdata – Forbered og upload dataene til en S3-bøtte ved hjælp af anvisninger. For denne særlige brugssag vil du uploade interaktionsdata og varedata. En interaktion er en hændelse, som du optager og derefter importerer som træningsdata. Amazon Personalize genererer anbefalinger primært baseret på de interaktionsdata, du importerer til et interaktionsdatasæt. Du kan optage flere begivenhedstyper, såsom klik, se eller like. Selvom modellen skabt af Amazon Personalize kan foreslå baseret på en brugers tidligere interaktioner, kan kvaliteten af disse forslag forbedres, når modellen besidder data om tilknytningerne mellem brugere eller varer . Hvis en bruger har engageret sig i film, der er kategoriseret som Drama i elementdatasættet, vil Amazon Personalize foreslå film (genstande) med samme genre.
- Konfigurer dit udviklingsmiljø - Installer AWS Command Line Interface (AWS CLI).
- Konfigurer CLI med din Amazon-konto - Konfigurer AWS CLI med dine AWS-kontooplysninger.
- Installer og bootstrap AWS Cloud Development Kit (AWS CDK)
Implementer løsningen
Gør følgende for at implementere løsningen:
- Klon lageret til en ny mappe på dit skrivebord.
- Implementer stakken til dit AWS-miljø.
Opret en løsningsversion
En løsning refererer til kombinationen af en Amazon Personalize-opskrift, tilpassede parametre og en eller flere løsningsversioner (uddannede modeller). Når du implementerer CDK-projektet i det foregående trin, oprettes der automatisk en løsning med en brugertilpasningsopskrift til dig. En løsningsversion refererer til en trænet maskinlæringsmodel. Lave en løsningsversion for implementeringen.
Opret en kampagne
En kampagne implementerer en løsningsversion (trænet model) med en klargjort transaktionskapacitet til at generere anbefalinger i realtid. Lave en kampagne for implementeringen.
Opret en begivenhedssporing
Amazon Personalize kan kun komme med anbefalinger baseret på hændelsesdata i realtid, kun historiske hændelsesdata eller begge dele. Optag begivenheder i realtid for at opbygge dine interaktionsdata og tillade Amazon Personalize at lære af din brugers seneste aktivitet. Dette holder dine data friske og forbedrer relevansen af Amazon Personalize anbefalinger. Før du kan optage begivenheder, skal du oprette en begivenhedssporing. En hændelsessporing dirigerer nye hændelsesdata til interaktionsdatasættet i din datasætgruppe. Opret og begivenhed tracker for implementeringen.
Få anbefalinger
I dette tilfælde er interaktionsdatasættet sammensat af film-id'er. Som følge heraf vil de anbefalinger, der præsenteres for brugeren, bestå af film-id'er, der passer bedst til deres personlige præferencer, bestemt ud fra deres historiske interaktioner. Du kan bruge getRecommendations
API til at hente personlige anbefalinger til en bruger ved at sende dens tilknyttede userID
, antallet af resultater for anbefalinger, som du har brug for til brugeren samt kampagnen ARN. Du kan finde kampagnen ARN i Amazon Personalize-konsolmenuen.
For eksempel vil følgende anmodning hente 5 anbefalinger til den bruger, hvis userId
er 429:
Svaret fra anmodningen vil være:
De elementer, der returneres af API-kaldet, er de film, som Amazon Personalize anbefaler til brugeren baseret på deres historiske interaktioner.
Scoreværdierne, der er angivet i denne sammenhæng, repræsenterer flydende kommatal, der ligger mellem nul og 1.0. Disse værdier svarer til den aktuelle kampagne og de tilhørende opskrifter for denne use case. De bestemmes ud fra de samlede scorer, der er tildelt alle elementer, der er til stede i dit omfattende datasæt.
Indtag interaktioner i realtid
I det foregående eksempel blev der opnået anbefalinger til brugeren med et ID på 429 baseret på deres historiske interaktioner med filmdatabasen. For anbefalinger i realtid skal brugerens interaktioner med elementerne indlæses i Amazon Personalize i realtid. Disse interaktioner indtages i anbefalingssystemet gennem Amazon Personalize Event Tracker. Typen af interaktion, også kaldet EventType
, er givet af kolonnen af samme navn i interaktionsdatasættet (EVENT_TYPE
). I dette eksempel kan begivenhederne være af typen "se" eller "klik", men du kan have dine egne typer begivenheder i henhold til behovene i din applikation.
I dette eksempel modtager den eksponerede API, der genererer hændelser for brugerne med elementerne, parameteren "interaktioner", der svarer til antallet af hændelser (interactions
) af en bruger (UserId
) med et enkelt element (itemId
) lige nu. Det trackingId
parameter kan findes i Amazon Personalize-konsollen og i svaret på oprettelsen af Event Tracker-anmodningen.
Dette eksempel viser en putEvent
anmodning: Generer 1 interaktion af kliktype, med et element-id på '185' for bruger-id'et '429', ved hjælp af det aktuelle tidsstempel. Bemærk, at i produktionen skal 'sentAt' indstilles til tidspunktet for brugerens interaktion. I det følgende eksempel satte vi dette til tidspunktet i epoketidsformat, da vi skrev API-anmodningen til dette indlæg. Hændelserne sendes til Amazon Kinesis Data Streams gennem en API-gateway, hvorfor du skal sende stream-navn og PartitionKey-parametrene.
Du vil modtage et bekræftelsessvar svarende til følgende:
Validere anbefalinger i realtid
Fordi interaktionsdatasættet er blevet opdateret, vil anbefalingerne automatisk blive opdateret for at tage hensyn til de nye interaktioner. For at validere anbefalingerne, der er opdateret i realtid, kan du kalde getRecommendations API igen for det samme bruger-id 429, og resultatet bør være anderledes end det forrige. Følgende resultater viser en ny anbefaling med et id på 594, og anbefalingerne med id'erne 16, 596, 153 og 261 ændrede deres score. Disse elementer bragte i den nye filmgenre ('Animation|Børn|Drama|Fantasy|Musical') de 5 bedste anbefalinger.
Anmodning:
Svar:
Svaret viser, at anbefalingen fra Amazon Personalize blev opdateret i realtid.
Ryd op
For at undgå unødvendige gebyrer skal du rydde op i løsningsimplementeringen ved at bruge Oprydning af ressourcer.
Konklusion
I dette indlæg viste vi dig, hvordan du implementerer et personaliseret anbefalingssystem i realtid ved hjælp af Amazon Personalize. Interaktionerne med Amazon Personalize for at indtage interaktioner i realtid og få anbefalinger blev udført gennem et kommandolinjeværktøj kaldet curl, men disse API-kald kan integreres i en forretningsapplikation og få det samme resultat.
For at vælge en ny opskrift til din brugssag, se Realtids personalisering. For at måle virkningen af anbefalingerne fra Amazon Personalize henvises til Måling af effekt af anbefalinger.
Om forfatterne
Cristian Marquez er Senior Cloud Application Architect. Han har stor erfaring med at designe, bygge og levere software på virksomhedsniveau, høj belastning og distribuerede systemer og cloud-native applikationer. Han har erfaring med backend og frontend programmeringssprog, samt systemdesign og implementering af DevOps praksis. Han hjælper aktivt kunder med at bygge og sikre innovative cloud-løsninger, løse deres forretningsproblemer og nå deres forretningsmål.
Anand Komandooru er Senior Cloud Architect hos AWS. Han kom til AWS Professional Services organisation i 2021 og hjælper kunder med at bygge cloud-native applikationer på AWS cloud. Han har over 20 års erfaring med at bygge software, og hans foretrukne Amazon-ledelsesprincip er "Ledere har ret meget."
- SEO Powered Content & PR Distribution. Bliv forstærket i dag.
- PlatoData.Network Vertical Generative Ai. Styrk dig selv. Adgang her.
- PlatoAiStream. Web3 intelligens. Viden forstærket. Adgang her.
- PlatoESG. Kulstof, CleanTech, Energi, Miljø, Solenergi, Affaldshåndtering. Adgang her.
- PlatoHealth. Bioteknologiske og kliniske forsøgs intelligens. Adgang her.
- Kilde: https://aws.amazon.com/blogs/machine-learning/implement-real-time-personalized-recommendations-using-amazon-personalize/
- :har
- :er
- :hvor
- $OP
- 1
- 100
- 11
- 150
- 16
- 17
- 20
- 20 år
- 200
- 2021
- 24
- 49
- 7
- 8
- a
- Om
- accelererer
- Ifølge
- Konto
- opnå
- handlingsrettede
- aktivt
- aktivitet
- Efter
- igen
- algoritmer
- tilpasse
- Alle
- tillade
- tillader
- også
- Skønt
- Amazon
- Amazon Kinesis
- Amazon Tilpas
- Amazon Web Services
- blandt
- an
- ,
- api
- API'er
- Anvendelse
- applikationer
- tilgang
- passende
- arkitektur
- ER
- AS
- tildelt
- hjælper
- forbundet
- foreninger
- At
- Forsøg på
- automatisk
- undgå
- AWS
- AWS Professional Services
- Bagende
- baseret
- grundlæggende
- BE
- været
- før
- mellem
- Bootstrap
- både
- brand
- bragte
- bygge
- Bygning
- virksomhed
- virksomheder
- men
- by
- ringe
- kaldet
- Opkald
- Kampagne
- CAN
- Kapacitet
- tilfælde
- ændret
- afgifter
- Vælg
- ren
- klik
- nøje
- Cloud
- kollektive
- Kolonne
- kombination
- forpligtelser
- sammensat
- omfattende
- bekræftelse
- følgelig
- Overvej
- Konsol
- sammenhæng
- svarer
- skabe
- oprettet
- skabelse
- Nuværende
- kunde
- Kundeoplevelse
- Kunder
- tilpassede
- data
- Dataforberedelse
- Database
- leverer
- demonstrere
- indsætte
- udruller
- udlede
- Design
- designe
- desktop
- bestemmes
- udviklere
- Udvikling
- forskellige
- digital
- Digital Transformation
- dirigerer
- distribueret
- distribuerede systemer
- do
- Drama
- lettere
- element
- OPHØJE
- Email Marketing
- muliggør
- ende
- beskæftiget
- Engine (Motor)
- forbedret
- enterprise-niveau
- Hele
- Miljø
- epoke
- begivenhed
- begivenheder
- eksempel
- henrettet
- eksisterende
- erfaring
- ekspertise
- udsat
- Favorit
- Funktionalitet
- Gebyrer
- Finde
- efter
- følger
- Til
- format
- fundet
- frisk
- fra
- frontend
- gateway
- generere
- genererer
- generere
- genre
- få
- given
- Mål
- gruppe
- Grow
- Have
- he
- hjælpe
- hjælper
- Høj
- hans
- historisk
- Hosting
- Hvordan
- How To
- HTML
- HTTPS
- ID
- identificere
- id'er
- if
- illustrerer
- KIMOs Succeshistorier
- gennemføre
- implementering
- implementeret
- importere
- importere
- forbedrer
- in
- Herunder
- oplysninger
- Infrastruktur
- innovativ
- indsigt
- integrere
- integreret
- interaktion
- interaktioner
- grænseflade
- ind
- IT
- Varer
- ITS
- sluttede
- jpg
- holder
- Kinesis datastrømme
- Sprog
- Leadership" (virkelig menneskelig ledelse)
- LÆR
- læring
- lærer
- Niveau
- ligesom
- Line (linje)
- belastning
- Lot
- Loyalitet
- maskine
- machine learning
- lavet
- lave
- Making
- administrerer
- Marketing
- matchende
- måle
- Menu
- besked
- minimum
- ML
- model
- modeller
- mere
- mest
- film
- Film
- flere
- skal
- navn
- indfødte
- I nærheden af
- nødvendig
- Behov
- behov
- Ny
- ingen
- nu
- nummer
- numre
- opnået
- of
- on
- ONE
- kun
- optimering
- or
- organisation
- ud
- Resultat
- i løbet af
- egen
- parameter
- parametre
- særlig
- forbi
- Betal
- personale
- Personalisering
- Tilpas
- Personlig
- pipeline
- plato
- Platon Data Intelligence
- PlatoData
- Punkt
- besidder
- Indlæg
- praksis
- Forudsigelser
- præferencer
- forberedelse
- Forbered
- forudsætninger
- præsentere
- forelagt
- tidligere
- primært
- princippet
- problemer
- forarbejdning
- produktion
- professionel
- Programmering
- programmeringssprog
- projekt
- forudsat
- kvalitet
- hurtigt
- rækkevidde
- klar
- realtid
- modtage
- modtager
- nylige
- opskrift
- Anbefaling
- anbefalinger
- anbefaler
- optage
- henvise
- henvisningen
- refererer
- relevans
- Repository
- repræsentere
- repræsenterer
- anmode
- svar
- resultere
- Resultater
- indtægter
- højre
- samme
- score
- sikker
- send
- afsendelse
- senior
- sendt
- tjeneste
- Tjenester
- sæt
- bør
- Vis
- viste
- Shows
- lignende
- Simpelt
- enkelt
- Software
- løsninger
- Løsninger
- Løsning
- stable
- starte
- påbegyndt
- Trin
- Steps
- opbevaring
- vandløb
- Succesfuld
- sådan
- tyder
- sikker
- systemet
- Systemer
- Teknologier
- at
- deres
- derefter
- Disse
- de
- denne
- Gennem
- tid
- tidsstempel
- til
- værktøj
- top
- top 5
- Tog
- uddannet
- Kurser
- transaktion
- Transformation
- typen
- typer
- unødvendig
- opdateret
- Uploading
- brug
- brug tilfælde
- Bruger
- brugere
- ved brug af
- VALIDATE
- Værdier
- Vast
- udgave
- versioner
- gå
- var
- Ur
- we
- web
- webservices
- websites
- GODT
- var
- Hvad
- hvornår
- som
- hvis
- hvorfor
- vilje
- med
- uden
- skrev
- år
- Du
- Din
- zephyrnet
- nul