Miten Amp on Amazon käytti dataa lisätäkseen asiakkaiden sitoutumista, Osa 2: Henkilökohtaisen esityssuositusalustan luominen Amazon SageMaker PlatoBlockchain Data Intelligence -tietotiedon avulla. Pystysuuntainen haku. Ai.

Kuinka Amp on Amazon käytti dataa lisätäkseen asiakkaiden sitoutumista, Osa 2: Henkilökohtaisen esityssuositusalustan rakentaminen Amazon SageMakerin avulla

Vahvistin on uusi live-radiosovellus Amazonilta. Ampin avulla voit isännöidä omaa radio-ohjelmaasi ja toistaa kappaleita Amazon Music -luettelosta tai virittää ja kuunnella muiden Amp-käyttäjien isännöimiä esityksiä. Ympäristössä, jossa sisältöä on runsaasti ja monipuolista, on tärkeää räätälöidä käyttökokemus jokaisen käyttäjän yksilöllisen maun mukaan, jotta he löytävät helposti haluamaansa ohjelmaa ja löytävät uutta sisältöä, josta he pitävät.

Amp käyttää koneoppimista (ML) tarjotakseen henkilökohtaisia ​​suosituksia live- ja tulevista Amp-ohjelmista sovelluksen kotisivulla. Suositukset lasketaan Random Forest -mallilla käyttämällä ominaisuuksia, jotka edustavat ohjelman suosiota (kuten kuuntelu- ja tykkäysten määrä), tekijän suosiota (kuten viimeaikaisten ohjelmien toistokertojen kokonaismäärä) ja käyttäjän henkilökohtaisia ​​suhteita. ohjelman aiheeseen ja tekijään. Suhteet lasketaan joko implisiittisesti käyttäjän käyttäytymisdatasta tai eksplisiittisesti kiinnostavista aiheista (kuten popmusiikki, baseball tai politiikka), jotka on annettu heidän käyttäjäprofiileissaan.

Tämä on osa 2 sarjasta, joka käsittelee data-analytiikan ja ML:n käyttöä Amp:lle ja henkilökohtaisen esityssuosituslista-alustan luomista. Alusta on osoittanut kolmen prosentin lisäyksen seuratuissa asiakkaiden sitoutumismittareissa (ohjelmasta pitäminen, sisällöntuottajan seuraaminen, tulevien esitysten ilmoitusten mahdollistaminen) sen julkaisun jälkeen toukokuussa 3.

Mainita Osa 1 oppia kuinka käyttäytymistietoja kerättiin ja käsiteltiin data- ja analytiikkajärjestelmien avulla.

Ratkaisun yleiskatsaus

Amp:n ML-pohjaisessa esityssuosittajassa on viisi pääkomponenttia, kuten seuraavasta arkkitehtuurikaaviosta näkyy:

  1. Amp-mobiilisovellus.
  2. Taustapalvelut, jotka keräävät käyttäytymistietoja, kuten tykkäyksiä ja seuraajia, sekä lähettävät ohjelmaan liittyviä tietoja, kuten tilapäivityksiä, kun ohjelmat alkavat julkaista.
  3. Reaaliaikainen käyttäytymis- ja esitystietojen käsittely sekä reaaliaikainen (online) ominaisuuslaskenta ja tallennus.
  4. Erä (offline) ominaisuuslaskenta ja tallennus.
  5. Recommender-järjestelmä, joka käsittelee sovelluksen taustaohjelmalta saapuvat pyynnöt esitysluettelon saamiseksi. Tämä sisältää reaaliaikaisen johtopäätöksen ohjelmien asettamisesta henkilökohtaisten ja ei-personoimattomien ominaisuuksien perusteella.

Tämä viesti keskittyy osiin 3, 4 ja 5 yrittääkseen selventää seuraavaa:

Seuraava kaavio esittää korkean tason arkkitehtuuria ja sen komponentteja.

Seuraavissa osioissa annamme lisätietoja reaaliaikaisesta ominaisuuslaskennasta, ominaisuuslaskennasta, reaaliaikaisista päätelmistä, toiminnan kunnosta ja havaitsemistamme tuloksista.

Reaaliaikainen ominaisuuslaskenta

Jotkin ominaisuudet, kuten ohjelman tykkäys- ja kuuntelumäärä, on suoratoistettava jatkuvasti ja käytettävä sellaisenaan, kun taas toiset, kuten yli 5 minuuttia pidempien kuuntelukertojen määrä, on myös muutettava reaaliajassa raakadataksi. istuntoja varten suoratoistaa. Tämän tyyppisiä ominaisuuksia, joissa arvot on laskettava päättelyhetkellä, kutsutaan nimellä ajankohta (PIT) ominaisuuksia. PIT-ominaisuuksien tiedot on päivitettävä nopeasti, ja uusin versio tulee kirjoittaa ja lukea pienellä viiveellä (alle 20 millisekuntia käyttäjää kohden 1,000 XNUMX näytöstä). Tietojen on myös oltava kestävässä säilytystilassa, koska puuttuvat tai osittaiset tiedot voivat heikentää suosituksia ja huonontaa asiakaskokemusta. Luku/kirjoitusviiveen lisäksi PIT-ominaisuudet vaativat myös alhaisen heijastusajan. Pohdiskeluaika on aika, joka kuluu, kun ominaisuus on luettavissa sen jälkeen, kun osallistuvat tapahtumat on lähetetty, esimerkiksi aika ohjelmasta pitäneen kuuntelijan ja PIT LikeCount -ominaisuuden päivityksen välillä.

Tietojen lähteet ovat sovellusta suoraan palvelevat taustapalvelut. Osa tiedoista muunnetaan mittareiksi, jotka sitten lähetetään kautta Amazonin yksinkertainen ilmoituspalvelu (Amazon SNS) loppupään kuuntelijoille, kuten ML-ominaisuuden muunnosputkeen. Muistissa oleva tietokanta, kuten MemoryDB, on ihanteellinen palvelu kestävää tallennusta ja erittäin nopeaa suorituskykyä varten suurilla volyymeillä. Laskentakomponentti, joka muuntaa ja kirjoittaa ominaisuuksia MemoryDB:hen, on Lambda. Sovellusliikenne noudattaa päivittäisiä ja viikoittaisia ​​huippuja ja laskuja kellonajasta ja päivästä riippuen. Lambda mahdollistaa automaattisen skaalauksen saapuvien tapahtumien määrään. Jokaisen yksittäisen metrimuunnoksen riippumaton luonne tekee myös Lambdasta, joka on itsessään valtioton palvelu, hyvin sopivan tähän ongelmaan. Laittaminen Amazonin yksinkertainen jonopalvelu (Amazon SQS) Amazon SNS:n ja Lambdan välillä ei vain estä viestien katoamista, vaan toimii myös puskurina odottamattomille liikennepurskeille, joiden esiasetetut Lambdan samanaikaisuusrajat eivät välttämättä riitä palvelemaan.

Eräominaisuuslaskenta

Ominaisuudet, jotka käyttävät historiallisia käyttäytymistietoja edustamaan käyttäjän jatkuvasti kehittyvää makua, ovat monimutkaisempia laskea, eikä niitä voida laskea reaaliajassa. Nämä ominaisuudet lasketaan eräprosessilla, joka suoritetaan aina niin usein, esimerkiksi kerran päivässä. Eräominaisuuksien tietojen tulisi tukea nopeaa kyselyä tietojen suodatusta ja yhdistämistä varten, ja ne voivat kattaa pitkiä ajanjaksoja, joten niiden määrä on suurempi. Koska myös eräominaisuudet haetaan ja lähetetään syötteinä reaaliaikaista päättelyä varten, ne tulisi silti lukea pienellä viiveellä.

Raakadatan keräämisessä eräajoa varten ei ole PIT-ominaisuuksilla vaadittua alle minuutin heijastusaikavaatimusta, mikä tekee mahdolliseksi puskuroida tapahtumia pidempään ja muuttaa mittareita erässä. Tämä ratkaisu hyödynsi Kinesis Data Firehosea, hallittua palvelua, joka siirtää dataa nopeasti useisiin kohteisiin, kuten Amazonin yksinkertainen tallennuspalvelu (Amazon S3) pysyviä mittareita S3-datajärvelle käytettäväksi offline-laskennassa. Kinesis Data Firehose tarjoaa tapahtumapuskurin ja Lambda-integroinnin, jonka avulla nämä mittarit helposti kerätään, erämuunnetaan ja säilytetään Amazon S3:ssa, jotta niitä voidaan myöhemmin hyödyntää erätoimintojen laskennassa. Eräominaisuuksilla ei ole samoja alhaisen latenssin luku-/kirjoitusvaatimuksia kuin PIT-ominaisuuksilla, mikä tekee Amazon S3:sta paremman valinnan, koska se tarjoaa edullisen ja kestävän tallennustilan näiden suurten liiketoimintamittareiden tallentamiseen.

Alkuperäinen ML-mallimme käyttää 21 eräominaisuutta, jotka lasketaan päivittäin käyttämällä tietoja, jotka on kerätty viimeisen 2 kuukauden aikana. Nämä tiedot sisältävät sekä toisto- että sovellukseen sitoutumishistorian käyttäjää kohti, ja ne kasvavat käyttäjien määrän ja sovelluksen käyttötiheyden mukana. Tässä mittakaavassa ominaisuussuunnittelu vaatii automatisoidun prosessin vaadittujen syöttötietojen noutamiseksi, käsittelemiseksi rinnakkain ja tuloksen viemiseksi pysyvään tallennustilaan. Käsittelyinfrastruktuuria tarvitaan vain laskelmien ajaksi. SageMaker-käsittely tarjoaa valmiiksi rakennettuja Docker-otoksia, jotka sisältävät Apache Sparkin ja muita riippuvuuksia, joita tarvitaan hajautettujen tietojenkäsittelytöiden suorittamiseen suuressa mittakaavassa. SageMaker hallitsee täysin käsittelytyön taustalla olevaa infrastruktuuria. Klusteriresursseja varataan työsi ajaksi, ja ne puhdistetaan, kun työ on valmis.

Jokainen eräprosessin vaihe – tiedonkeruu, ominaisuuksien suunnittelu, ominaisuuksien pysyvyys – on osa työnkulkua, joka vaatii virheiden käsittelyä, uudelleenyrityksiä ja tilasiirtymiä välillä. Kanssa AWS-vaihetoiminnot, voit luoda tilakoneen ja jakaa työnkulkusi useisiin esi- ja jälkikäsittelyvaiheisiin sekä vaiheeseen ominaisuuksien säilyttämiseksi SageMaker Feature Storessa tai muut tiedot Amazon S3:ssa. Vaihetoimintojen tilakone voidaan laukaista kautta Amazon EventBridge automatisoida erälaskenta toimimaan tietyn aikataulun mukaan, esimerkiksi kerran päivässä klo 10 UTC.

Kun ominaisuudet on laskettu, ne on versioitava ja tallennettava, jotta ne voidaan lukea päättelyn ja mallin uudelleenkoulutuksen aikana. Sen sijaan, että rakentaisit oman ominaisuuksien tallennus- ja hallintapalvelun, voit käyttää SageMaker Feature Storea. Feature Store on täysin hallittu, tarkoitukseen rakennettu arkisto ML-mallien ominaisuuksien tallentamiseen, jakamiseen ja hallintaan. Se tallentaa ML-ominaisuuksien historian offline-myymälään (Amazon S3) ja tarjoaa myös verkkokauppaan API-liittymiä, jotka mahdollistavat uusimpien ominaisuuksien alhaisen viiveen lukemisen. Offline-kauppa voi palvella historiallisia tietoja mallin jatkokoulutusta ja kokeilua varten, ja asiakaskohtaiset sovellusliittymät voivat soittaa verkkokauppaan saadakseen ominaisuuksia reaaliaikaista päättelyä varten. Kun kehitämme palveluitamme tarjoamaan entistä yksilöllisempää sisältöä, odotamme kouluttavan lisää ML-malleja ja Feature Storen avulla etsiä, löytää ja käyttää näiden mallien ominaisuuksia.

Reaaliaikainen päätelmä

Reaaliaikainen päättely edellyttää yleensä ML-mallien isännöimistä päätepisteiden takana. Voit tehdä tämän käyttämällä verkkopalvelimia tai säilöjä, mutta tämä vaatii ML-suunnittelutyötä ja infrastruktuurin hallintaan ja ylläpitoon. SageMakerin avulla on helppo ottaa käyttöön ML-malleja reaaliaikaisiin päätepisteisiin. SageMakerin avulla voit kouluttaa ja lähettää ML-malleja ja isännöidä niitä luomalla ja määrittämällä SageMaker-päätepisteitä. Reaaliaikainen johtopäätös täyttää matalan latenssin vaatimukset ohjelmien sijoitusta varten, kun niitä selataan Amp-kotisivulla.

Hallitun isännöinnin lisäksi SageMaker tarjoaa hallitun päätepisteen skaalauksen. SageMaker-päätelmän avulla voit määrittää automaattisen skaalauskäytännön vähimmäis- ja enimmäismäärällä sekä kohdekäytön skaalauksen käynnistämiseksi. Näin voit helposti skaalata sisään tai ulos kysynnän muuttuessa.

Toimintaterveys

Tämän järjestelmän käsittelemien tapahtumien määrä reaaliaikaisessa ominaisuuslaskennassa muuttuu sovelluksen luonnollisen käyttötavan mukaan (suurempi tai pienempi liikenne vuorokaudenajan tai viikonpäivän mukaan). Vastaavasti sen vastaanottamien pyyntöjen määrä reaaliaikaista päättelyä varten skaalautuu samanaikaisten sovelluksen käyttäjien lukumäärään. Nämä palvelut saavat myös odottamattomia liikennehuippuja suosittujen tekijöiden itsensä promooinnista sosiaalisessa mediassa. Vaikka on tärkeää varmistaa, että järjestelmä voi skaalata ylös ja alas palvellakseen saapuvaa liikennettä onnistuneesti ja säästeliäästi, on myös tärkeää seurata toimintamittoja ja varoittaa odottamattomista toimintahäiriöistä, jotta voidaan estää tietojen ja palvelujen menetys asiakkaille. Näiden palvelujen kunnon seuranta on yksinkertaista amazonin pilvikello. Tärkeät palvelun kuntomittarit, kuten toiminnan viat ja latenssi, sekä käyttömittarit, kuten muistin, levyn ja prosessorin käyttö, ovat saatavilla heti valmiina CloudWatchin avulla. Kehitystiimimme käyttää mittareiden hallintapaneeleja ja automaattista valvontaa varmistaakseen, että voimme palvella asiakkaitamme korkealla käytettävyydellä (99.8 %) ja alhaisella latenssilla (alle 200 millisekuntia päästä päähän saadakseen suositeltuja ohjelmia käyttäjää kohti).

Tuloksen mittaaminen

Ennen tässä viestissä kuvattua ML-pohjaista esityssuosittajaa yksinkertaisempi heuristinen algoritmi sijoitti Amp-ohjelmat käyttäjän henkilökohtaisten kiinnostavien aiheiden perusteella, jotka on ilmoitettu hänen profiilissaan. Asetimme A/B-testin mittaamaan ML-pohjaisiin suosittelijoihin siirtymisen vaikutusta käyttäjien aiemmista sovellusvuorovaikutuksista saatujen tietojen perusteella. Tunnistimme onnistumisen indikaattoreiksi parannuksia mittareissa, kuten kuuntelun kesto ja sitoutumistoimintojen määrä (ohjelmasta tykkääminen, ohjelman luojan seuraaminen, ilmoitusten laittaminen päälle). A/B-testaus, jossa 50 % käyttäjistä sai esityssuosituksia, jotka on luokiteltu heille ML-pohjaisen suosittelijan avulla, on osoittanut 3 %:n lisäyksen asiakkaiden sitoutumismittareihin ja 0.5 %:n parannuksen toiston kestoon.

Yhteenveto

Tarkoituksenmukaisilla palveluilla Amp-tiimi pystyi julkaisemaan tässä viestissä kuvatun mukautetun esityssuositussovellusliittymän tuotantoon alle 3 kuukaudessa. Järjestelmä skaalautuu myös hyvin tunnettujen esitysjuhlien tai markkinointikampanjoiden aiheuttamiin arvaamattomiin kuormituksiin, jotka voivat saada aikaan käyttäjiä. Ratkaisu käyttää hallittuja palveluita käsittelyyn, koulutukseen ja isännöintiin, mikä auttaa vähentämään järjestelmän päivittäiseen ylläpitoon kuluvaa aikaa. Pystymme myös seuraamaan kaikkia näitä hallittuja palveluita CloudWatchin kautta varmistaaksemme tuotantojärjestelmien jatkuvan kunnon.

Vahvistimen ML-pohjaisen suosittelijan ensimmäisen version A/B-testaus sääntöpohjaista lähestymistapaa vastaan ​​(joka lajittelee näytöt vain asiakkaan kiinnostuksen kohteiden mukaan) on osoittanut, että ML-pohjainen suosittelija paljastaa asiakkaat laadukkaammalle sisällölle monipuolisemmista aiheista. , mikä lisää seuraajien ja käytössä olevien ilmoitusten määrää. Amp-tiimi pyrkii jatkuvasti parantamaan malleja tarjotakseen erittäin tärkeitä suosituksia.

Lisätietoja Feature Storesta on osoitteessa Amazon SageMaker -ominaisuuskauppa ja tutustu muihin asiakkaiden käyttötapauksiin osoitteessa AWS-koneoppimisblogi.


Tietoja kirjoittajista

Miten Amp on Amazon käytti dataa lisätäkseen asiakkaiden sitoutumista, Osa 2: Henkilökohtaisen esityssuositusalustan luominen Amazon SageMaker PlatoBlockchain Data Intelligence -tietotiedon avulla. Pystysuuntainen haku. Ai.Tulppaani Gupta on ratkaisuarkkitehti Amazon Web Servicesissä. Hän työskentelee Amazonin kanssa suunnitella, rakentaa ja ottaa käyttöön teknologiaratkaisuja AWS:ssä. Hän auttaa asiakkaita ottamaan käyttöön parhaita käytäntöjä, kun hän ottaa ratkaisun käyttöön AWS:ssä, ja on analytiikka- ja ML-harrastaja. Vapaa-ajallaan hän harrastaa uintia, patikointia ja lautapelejä.

Miten Amp on Amazon käytti dataa lisätäkseen asiakkaiden sitoutumista, Osa 2: Henkilökohtaisen esityssuositusalustan luominen Amazon SageMaker PlatoBlockchain Data Intelligence -tietotiedon avulla. Pystysuuntainen haku. Ai.David Kuo on ratkaisuarkkitehti Amazon Web Servicesissä. Hän työskentelee AWS-asiakkaiden kanssa suunnitella, rakentaa ja ottaa käyttöön teknologiaratkaisuja AWS:ssä. Hän työskentelee Media- ja Entertainment-asiakkaiden kanssa ja on kiinnostunut koneoppimistekniikoista. Vapaa-ajallaan hän miettii, mitä hänen pitäisi tehdä vapaa-ajallaan.

Miten Amp on Amazon käytti dataa lisätäkseen asiakkaiden sitoutumista, Osa 2: Henkilökohtaisen esityssuositusalustan luominen Amazon SageMaker PlatoBlockchain Data Intelligence -tietotiedon avulla. Pystysuuntainen haku. Ai.Manolya McCormick on Sr-ohjelmistokehitysinsinööri Ampille Amazonissa. Hän suunnittelee ja rakentaa hajautettuja järjestelmiä AWS:n avulla palvellakseen asiakkaiden sovelluksia. Hän lukee ja valmistaa mielellään uusia reseptejä vapaa-ajallaan.

Miten Amp on Amazon käytti dataa lisätäkseen asiakkaiden sitoutumista, Osa 2: Henkilökohtaisen esityssuositusalustan luominen Amazon SageMaker PlatoBlockchain Data Intelligence -tietotiedon avulla. Pystysuuntainen haku. Ai.Jeff Christophersen on vanhempi tietoinsinööri Ampille Amazonissa. Hän suunnittelee, rakentaa ja ottaa käyttöön Big Data -ratkaisuja AWS:ssä, jotka tuovat käyttökelpoisia oivalluksia. Hän avustaa sisäisiä tiimejä skaalautuvien ja automatisoitujen ratkaisujen käyttöönotossa ja on analytiikka- ja Big Data -harrastaja. Vapaa-ajallaan, kun hän ei ole suksilla, löydät hänet maastopyörästään.

Aikaleima:

Lisää aiheesta AWS-koneoppiminen