Koska räätälöity sisältö lisää todennäköisemmin asiakkaiden sitoutumista, yritykset pyrkivät jatkuvasti tarjoamaan räätälöityä sisältöä asiakkaan profiilin ja käyttäytymisen perusteella. Suositusjärjestelmät pyrkivät erityisesti ennustamaan, minkälaisen mieltymyksen loppukäyttäjä antaisi tuotteelle. Joitakin yleisiä käyttötapauksia ovat tuotesuositukset verkkokaupoissa, uutiskirjeiden personointi, musiikkisoittolistasuositusten luominen tai jopa samanlaisen sisällön löytäminen verkkomediapalveluista.
Tehokkaan suositusjärjestelmän luominen voi kuitenkin olla haastavaa mallikoulutuksen, algoritmien valinnan ja alustan hallinnan monimutkaisuuden vuoksi. Amazon Muokkaa Sen avulla kehittäjät voivat parantaa asiakkaiden sitoutumista henkilökohtaisten tuote- ja sisältösuositusten avulla ilman koneoppimisen (ML) asiantuntemusta. Kehittäjät voivat alkaa houkutella asiakkaita heti käyttämällä tallennettuja käyttäjien käyttäytymistietoja. Kulissien takana Amazon Personalize tutkii nämä tiedot, tunnistaa merkitykselliset, valitsee oikeat algoritmit, kouluttaa ja optimoi tietoihisi mukautetun personointimallin sekä antaa suosituksia API-päätepisteen kautta.
Vaikka suositusten antaminen reaaliajassa voi auttaa lisäämään sitoutumista ja tyytyväisyyttä, joskus sitä ei välttämättä vaadita, ja sen suorittaminen erässä ajoitettuna voi yksinkertaisesti olla kustannustehokkaampi ja hallittavampi vaihtoehto.
Tämä viesti näyttää, kuinka voit käyttää AWS-palveluita suositusten luomisen lisäksi myös eräsuositusputkiston käyttöönottamiseksi. Käymme läpi päästä päähän -ratkaisun ilman yhtä koodiriviä. Keskustelemme kahdesta aiheesta yksityiskohtaisesti:
Ratkaisun yleiskatsaus
Tässä ratkaisussa käytämme MovieLens tietojoukko. Tämä tietojoukko sisältää 86,000 2,113 arviota elokuville XNUMX XNUMX käyttäjältä. Yritämme käyttää näitä tietoja suositusten luomiseen jokaiselle näistä käyttäjistä.
Tietojen valmistelu on erittäin tärkeää, jotta voimme varmistaa, että saamme asiakkaiden käyttäytymistiedot muodossa, joka on valmis Amazon Personalize -sovellukselle. Tässä viestissä kuvattu arkkitehtuuri käyttää AWS Gluea, palvelimetonta tietojen integrointipalvelua, suorittamaan raakatietojen muuntamisen muotoon, joka on valmis Amazon Personalize -sovellukselle. Ratkaisu käyttää Amazon Personalizea eräsuositusten luomiseen kaikille käyttäjille eräpäätelmän avulla. Käytämme sitten Step Functions -työnkulkua, jotta automatisoitu työnkulku voidaan suorittaa kutsumalla Amazon Personalize API:ita toistettavalla tavalla.
Seuraava kaavio esittää tämän ratkaisun.
Rakennamme tämän ratkaisun seuraavilla vaiheilla:
- Luo datan muunnostyö muuttaaksesi raakatietomme AWS Glue -liimalla.
- Rakenna Amazon Personalize -ratkaisu muunnetun tietojoukon avulla.
- Luo Step Functions -työnkulku järjestääksesi eräpäätelmien luomisen.
Edellytykset
Tarvitset seuraavaa tätä läpikäyntiä varten:
Luo tietojen muunnostyö raakadatan muuntamiseksi AWS Gluella
Amazon Personalizessa syöttötiedoilla on oltava tietty skeema ja tiedostomuoto. Käyttäjien ja kohteiden välisten vuorovaikutusten tietojen on oltava CSV-muodossa tietyillä sarakkeilla, kun taas käyttäjäluettelon, joille haluat luoda suosituksia, on oltava JSON-muodossa. Tässä osiossa käytämme AWS Glue Studiota muuntaaksemme raakasyöttötiedot Amazon Personalize -sovelluksen vaadittuihin rakenteisiin ja muotoihin.
AWS Glue Studio tarjoaa graafisen käyttöliittymän, joka on suunniteltu helpottamaan purkamis-, muunnos- ja lataustöiden (ETL) luomista ja suorittamista. Voit luoda visuaalisesti datan muunnostyökuormia yksinkertaisilla vedä ja pudota -toiminnoilla.
Valmistelemme ensin lähdetietomme Amazonin yksinkertainen tallennuspalvelu (Amazon S3), sitten muunnamme tiedot ilman koodia.
- Luo Amazon S3 -konsolissa S3-säilö, jossa on kolme kansiota: raaka, muunnettu ja kuratoitu.
- Lataa MovieLens-tietojoukko ja lataa pakkaamaton tiedosto nimeltä user_ratingmovies-timestamp.dat raaka-kansioon.
- Valitse AWS Glue Studio -konsolista Työpaikat navigointipaneelissa.
- valita Visuaalinen lähde ja kohde, valitse sitten luoda.
- Valitse ensimmäinen solmu nimeltä Tietolähde – S3-ämpäri. Tässä määritämme syöttötietomme.
- On Tietolähteen ominaisuudet välilehti, valitse S3 sijainti ja selaa lataamaasi tiedostoon.
- varten Tietomuoto, valitse CSV, Ja delimiter, valitse Kieleke.
- Voimme valita Tulostusskeema-välilehden varmistaaksemme, että skeema on päätellyt sarakkeet oikein.
- Jos malli ei vastaa odotuksiasi, valitse muokata muokata kaaviota.
Seuraavaksi muunnamme nämä tiedot noudattamaan Amazon Personalize -sovelluksen skeemavaatimuksia.
- Valitse Muunna – Käytä kartoitus solmu ja, Muuttaa -välilehti, päivitä kohdeavain ja tietotyypit.
Amazon Personalize odottaa vähintään seuraavan rakenteen vuorovaikutustietojoukko:
Tässä esimerkissä suljemme pois huonosti arvioidut elokuvat tietojoukosta.
- Voit tehdä tämän poistamalla viimeisen solmun nimeltä S3-ämpäri ja lisäämällä siihen suodatinsolmu Muuttaa Tab.
- Valita Lisää ehto ja suodata tiedot, joiden arvosana on < 3.5.
Kirjoitamme nyt ulostulon takaisin Amazon S3:een.
- Laajenna Kohde valikosta ja valitse Amazon S3.
- varten S3 Kohdepaikka, valitse kansio nimeltä
transformed
. - Valita CSV muodossa ja jälkiliitteenä Kohteen sijainti with
interactions/
.
Seuraavaksi annamme luettelon käyttäjistä, joille haluamme saada suosituksia.
- Valitse ApplyMapping solmu uudelleen ja laajenna sitten Muuttaa valikosta ja valitse ApplyMapping.
- Pudota kaikki kentät paitsi
user_id
ja nimeä kenttä uudelleen muotoonuserId
. Amazon Personalize odottaa, että kenttä nimetään käyttäjätunnus. - Laajenna Kohde valikosta uudelleen ja valitse Amazon S3.
- Tällä kertaa valitse JSON muotoa ja valitse sitten muunnettu S3-kansio ja liitä se
batch_users_input/
.
Tämä tuottaa a JSON luettelo käyttäjistä syötteenä Amazon Personalizelle. Meillä pitäisi nyt olla kaavio, joka näyttää seuraavalta.
Olemme nyt valmiita suorittamaan muutostyömme.
- Luo IAM-konsolissa rooli nimeltä glue-service-role ja liitä seuraavat hallitut käytännöt:
AWSGlueServiceRole
AmazonS3FullAccess
Lisätietoja IAM-palveluroolien luomisesta on kohdassa Roolin luominen oikeuksien delegoimiseksi AWS-palvelulle.
- Siirry takaisin AWS Glue Studio -työhön ja valitse Työn yksityiskohdat Tab.
- Aseta työn nimi muodossa
batch-personalize-input-transform-job
. - Valitse juuri luotu IAM-rooli.
- Säilytä oletusarvot kaikelle muulle.
- Valita Säästä.
- Kun olet valmis, valitse ajaa ja valvoa työtä Toimii Tab.
- Kun työ on valmis, siirry Amazon S3 -konsoliin vahvistaaksesi, että tulostiedostosi on luotu onnistuneesti.
Olemme nyt muokanneet tietomme sellaiseen muotoon ja rakenteeseen, jota Amazon Personalize vaatii. Muunnetussa tietojoukossa tulee olla seuraavat kentät ja muoto:
- Vuorovaikutustiedot – CSV-muoto kentillä
USER_ID
,ITEM_ID
,TIMESTAMP
- Käyttäjän syöttämä tietojoukko – JSON-muoto elementillä
userId
Rakenna Amazon Personalize -ratkaisu muunnetun tietojoukon avulla
Vuorovaikutustietojoukkomme ja käyttäjän syöttämien tietojen avulla oikeassa muodossa voimme nyt luoda Amazon Personalize -ratkaisumme. Tässä osiossa luomme tietojoukkoryhmämme, tuomme tietomme ja luomme sitten eräpäättelytyön. Tietojoukkoryhmä järjestää resurssit säilöihin Amazon Personalize -komponentteja varten.
- Valitse Amazon Personalise -konsolissa luoda tietojoukoryhmä.
- varten Domainvalitse Mittatilaus.
- Valita Luo tietojoukkoryhmä ja jatka.
Luo seuraavaksi vuorovaikutustietojoukko.
Tuomme nyt aiemmin luomamme vuorovaikutustiedot.
- Siirry S3-alueeseen, jossa loimme interaktioiden CSV-tietojoukon.
- On Oikeudet -välilehti, lisää seuraava ryhmäkäyttökäytäntö, jotta Amazon Personalizella on pääsy. Päivitä käytäntö lisäämällä ryhmän nimi.
Siirry takaisin Amazon Personalize -sovellukseen ja valitse Luo tietojoukon tuontityö. Vuorovaikutustietojoukomme pitäisi nyt tuoda Amazon Personalizeen. Odota, että tuontityö valmistuu ja sen tila on aktiivinen, ennen kuin jatkat seuraavaan vaiheeseen. Tämän pitäisi kestää noin 8 minuuttia.
- Valitse Amazon Personalise -konsolissa Yleiskatsaus navigointiruudussa ja valitse Luo ratkaisu.
- Anna ratkaisun nimi.
- varten Ratkaisun tyyppi, valitse Kohteen suositus.
- varten Resepti, Valitse
aws-user-personalization
resepti. - Valita Luo ja kouluta ratkaisu.
Ratkaisu harjoittelee nyt vuorovaikutustietojoukkoa vastaan, joka tuotiin käyttäjän personointireseptin kanssa. Seuraa tämän prosessin tilaa kohdasta Ratkaisuversiot. Odota sen valmistumista ennen kuin jatkat. Tämän pitäisi kestää noin 20 minuuttia.
Luomme nyt eräpäätelmätyömme, joka luo suosituksia jokaiselle JSON-syötteen käyttäjälle.
- Navigointiruudun kohdassa Mukautetut resurssit, valitse Erän päättelytyöt.
- Anna työn nimi ja for Ratkaisu, valitse aiemmin luotu ratkaisu.
- Valita Luo eräpäätelty työ.
- varten Syötetietojen konfigurointi, syötä S3-polku, jossa
batch_users_input
tiedosto sijaitsee.
Tämä on JSON-tiedosto, joka sisältää userId
.
- varten Lähtötietojen konfigurointi polku, valitse kuratoitu polku S3:ssa.
- Valita Luo eräpäätelty työ.
Tämä prosessi kestää noin 30 minuuttia. Kun työ on valmis, suositukset kullekin käyttäjän syöttötiedostossa määritetylle käyttäjälle tallennetaan S3-tulostuspaikkaan.
Olemme onnistuneesti luoneet suosituksia kaikille käyttäjillemme. Olemme kuitenkin toistaiseksi toteuttaneet ratkaisun vain konsolin avulla. Jotta voimme varmistaa, että tämä eräpäättely suoritetaan säännöllisesti uusimpien tietojen kanssa, meidän on rakennettava orkestrointityönkulku. Seuraavassa osiossa näytämme, kuinka voit luoda orkestrointityönkulun Step Functions -toiminnolla.
Luo Step Functions -työnkulku eräpäätelmän työnkulkua varten
Suunnittele putkisto suorittamalla seuraavat vaiheet:
- Valitse Step Functions -konsolista Luo tilakone.
- valita Suunnittele työnkulkusi visuaalisesti, valitse sitten seuraava.
- Vedä
CreateDatasetImportJob
solmu vasemmalta (voit etsiä tätä solmua hakukentästä) kankaalle. - Valitse solmu, ja sinun pitäisi nähdä konfigurointi-API-parametrit oikealla. Tallenna ARN.
- Syötä omat arvosi kohtaan API-parametrit tekstilaatikko.
Tämä kutsuu CreateDatasetImportJob API määrittämilläsi parametriarvoilla.
- Vedä
CreateSolutionVersion
solmu kankaalle. - Päivitä API-parametrit muistiin kirjoittamasi ratkaisun ARN-numerolla.
Tämä luo uuden ratkaisuversion juuri tuoduista tiedoista soittamalla CreateSolutionVersion API.
- Vedä
CreateBatchInferenceJob
solmu kankaalle ja päivittää vastaavasti API-parametrit asiaankuuluvilla arvoilla.
Varmista, että käytät $.SolutionVersionArn
syntaksi noutaaksesi ratkaisuversion ARN-parametrin edellisestä vaiheesta. Nämä API-parametrit välitetään CreateBatchInferenceJob API.
Meidän on rakennettava odotuslogiikka Step Functions -työnkulkuun varmistaaksemme, että suosituseräpäätelmätyö päättyy ennen työnkulun valmistumista.
- Etsi ja vedä odotussolmu.
- Konfiguraatiossa for Odota, syötä 300 sekuntia.
Tämä on mielivaltainen arvo; sinun tulee muuttaa tätä odotusaikaa käyttötapasi mukaan.
- Valitse
CreateBatchInferenceJob
solmu uudelleen ja navigoi kohtaan Virheiden käsittely Tab. - varten paini virheet, tulla sisään
Personalize.ResourceInUseException
. - varten Varatila, valitse Odota.
Tämän vaiheen avulla voimme säännöllisesti tarkistaa työn tilan ja se poistuu silmukasta vasta, kun työ on valmis.
- varten ResultPath, tulla sisään
$.errorMessage
.
Tämä tarkoittaa käytännössä sitä, että kun "resurssi käytössä" -poikkeus vastaanotetaan, työ odottaa x sekuntia ennen kuin yrittää uudelleen samoilla tuloilla.
- Valita Säästä, ja valitse sitten Aloita suoritus.
Olemme onnistuneesti organisoineet Amazon Personalize -erasuositusputkemme. Valinnaisena vaiheena voit käyttää Amazon EventBridge ajoittaaksesi tämän työnkulun käynnistyksen säännöllisesti. Katso lisätietoja osoitteesta EventBridge (CloudWatch Events) Step Functions -suorituksen tila muuttuu.
Puhdistaa
Vältä tulevia maksuja poistamalla tätä ohjetta varten luomasi resurssit.
Yhteenveto
Tässä viestissä osoitimme, kuinka luoda eräsuositusputki käyttämällä AWS Glue-, Amazon Personalize- ja Step Functions -toimintojen yhdistelmää tarvitsematta yhtä koodiriviä tai ML-kokemusta. Käytimme AWS-liimaa valmistelemaan tietomme Amazon Personalize -sovelluksen vaatimaan muotoon. Sitten käytimme Amazon Personalizea tietojen tuomiseen, ratkaisun luomiseen käyttäjän mukauttamisreseptillä ja eräpäättelytyön luomiseen, joka luo oletusarvoisesti 25 suositusta kullekin käyttäjälle aiempien vuorovaikutusten perusteella. Sitten organisoimme nämä vaiheet Step Functions -toiminnolla, jotta voimme suorittaa nämä työt automaattisesti.
Seuraavaksi harkittavia vaiheita varten käyttäjien segmentointi on yksi Amazon Personalize -ohjelman uudemmista resepteistä, joita kannattaa ehkä tutkia luodaksesi käyttäjäsegmenttejä kullekin syöttötietojen riville. Katso lisätietoja osoitteesta Eräsuositusten ja käyttäjäsegmenttien saaminen.
Kirjailijasta
Maxine Wee on AWS Data Lab Solutions -arkkitehti. Maxine työskentelee asiakkaiden kanssa heidän käyttötapauksissaan, suunnittelee ratkaisuja heidän liiketoimintaongelmiinsa ja opastaa heitä skaalautuvien prototyyppien rakentamisessa. Ennen matkaansa AWS:n kanssa Maxine auttoi asiakkaita toteuttamaan BI-, tietovarastointi- ja datajärviprojekteja Australiassa.
- Lisäasetukset (300)
- AI
- ai taide
- ai taiteen generaattori
- ai robotti
- Amazon Muokkaa
- tekoäly
- tekoälyn sertifiointi
- tekoäly pankkitoiminnassa
- tekoäly robotti
- tekoälyrobotit
- tekoälyohjelmisto
- AWS-liima
- AWS-koneoppiminen
- blockchain
- blockchain-konferenssi ai
- coingenius
- keskustelullinen tekoäly
- kryptokonferenssi ai
- dall's
- syvä oppiminen
- google ai
- koneoppiminen
- Platon
- plato ai
- Platonin tietotieto
- Platon peli
- PlatonData
- platopeliä
- mittakaava ai
- syntaksi
- Tekniset ohjeet
- zephyrnet