Generatiivinen tiedustelu

Rakenna uutissuositussovellus Amazon Personalize | Amazon Web Services

Treffi:

Koska uutismediayrityksissä luodaan päivittäin lukuisia artikkeleita, videoita, äänitallenteita ja muuta mediaa, kaikenlaisten lukijoiden – yksittäisten kuluttajien, yritystilaajien ja muiden – on usein vaikea löytää heille kaikkein olennaisinta uutissisältöä. Henkilökohtaisten uutisten ja kokemusten tarjoaminen lukijoille voi auttaa ratkaisemaan tämän ongelman ja luomaan kiinnostavampia kokemuksia. Aidosti henkilökohtaisten suositusten antaminen asettaa kuitenkin useita keskeisiä haasteita:

  • Erilaisten käyttäjien kiinnostuksen kohteiden vangitseminen – Uutiset voivat kattaa monia aiheita ja jopa tiettyjen aiheiden sisällä lukijoilla voi olla erilaisia ​​kiinnostuksen kohteita.
  • Käsitellään rajoitettu lukijahistoria – Monilla uutislukijoilla on harvat toimintahistoriat. Suosittelijoiden on nopeasti opittava mieltymykset rajoitetuista tiedoista tarjotakseen arvoa.
  • Ajankohtaisuus ja trendi – Päivittäiset uutissyklit tarkoittavat, että suositusten on tasapainotettava yksilöllinen sisältö uusien, suosittujen tarinoiden löytämisen kanssa.
  • Muuttuvat intressit – Lukijoiden kiinnostuksen kohteet voivat kehittyä ajan myötä. Järjestelmien on havaittava siirtymät ja mukautettava suosituksia niiden mukaisesti.
  • Selitettävyys – Avoimuus siitä, miksi tiettyjä tarinoita suositellaan, lisää käyttäjien luottamusta. Ihanteellinen uutissuositusjärjestelmä ymmärtää yksilön ja vastaa laajempaan uutisilmapiiriin ja yleisöön. Näihin haasteisiin vastaaminen on avainasemassa pyrittäessä yhdistämään lukijat tehokkaasti sisältöön, jota he pitävät informatiivisena ja kiinnostavana.

Tässä viestissä kuvailemme kuinka Amazon Muokkaa voi käyttää skaalautuvaa uutissuositussovellusta. Tämä ratkaisu otettiin käyttöön Fortune 500 -mediaasiakkaalla vuoden 1 ensimmäisellä puoliskolla ja sitä voidaan käyttää uudelleen muille uutissuosittajien rakentamisesta kiinnostuneille asiakkaille.

Ratkaisun yleiskatsaus

Amazon Personalize sopii erinomaisesti uutissuositusmoottoriin, koska se pystyy tarjoamaan reaaliaikaisia ​​ja yksilöityjä suosituksia mittakaavassa. Amazon Personalize tarjoaa erilaisia ​​​​suositusreseptejä (algoritmeja), kuten User Personalization- ja Trending Now -reseptejä, jotka sopivat erityisen hyvin uutissuosittajien koulutukseen. User Personalization -resepti analysoi jokaisen käyttäjän mieltymyksiä sen perusteella, miten he ovat sitoutuneet sisältöön ajan mittaan. Tämä johtaa räätälöityihin uutissyötteisiin, jotka tuovat esiin yksittäisen käyttäjän kannalta tärkeimmät aiheet ja lähteet. Trending Now -resepti täydentää tätä havaitsemalla nousevat trendit ja suositut uutiset reaaliajassa kaikilta käyttäjiltä. Yhdistämällä suosituksia molemmista resepteistä, suositusmoottori voi tasapainottaa personoinnin ja ajankohtaisten, kiinnostavien tarinoiden löytämisen.

Seuraava kaavio havainnollistaa Amazon Personalize -palvelun tarjoaman uutissuositussovelluksen arkkitehtuuria ja tukee AWS-palveluita.

Tällä ratkaisulla on seuraavat rajoitukset:

  • Henkilökohtaisten suositusten antaminen juuri julkaistuille artikkeleille (muutama minuutti sitten julkaistut artikkelit) voi olla haastavaa. Kuvaamme, kuinka tätä rajoitusta voidaan lieventää myöhemmin tässä viestissä.
  • Amazon Personalizessa on kiinteä määrä vuorovaikutuksia ja kohteita tietojoukkoominaisuuksia, joita voidaan käyttää mallin kouluttamiseen.
  • Kirjoitushetkellä Amazon Personalize ei tarjoa suositusten selityksiä käyttäjätasolla.

Käydään läpi kaikki ratkaisun pääkomponentit.

Edellytykset

Tämän ratkaisun toteuttamiseksi tarvitset seuraavat:

  • Historialliset ja reaaliaikaiset käyttäjien napsautustiedot interactions aineisto
  • Historialliset ja reaaliaikaiset uutisartikkelien metatiedot items aineisto

Ota ja valmistele tiedot

Jotta voit kouluttaa mallin Amazon Personalizessa, sinun on annettava koulutustiedot. Tässä ratkaisussa käytät kahden tyyppisiä Amazon Personalize -harjoitustietojoukkoja: vuorovaikutustietojoukko ja kohteiden tietojoukko. interactions tietojoukko sisältää tietoja käyttäjän ja kohteen aikaleiman vuorovaikutuksista ja items tietojoukko sisältää ominaisuuksia suositelluista artikkeleista.

Voit käyttää kahta erilaista lähestymistapaa harjoitustietojen keräämiseen:

  • Erän nieleminen - Voit käyttää AWS-liima muuntaa ja niellä vuorovaikutuksia ja kohteita, jotka sijaitsevat an Amazonin yksinkertainen tallennuspalvelu (Amazon S3) ämpäri Amazon Personalize -tietosarjoihin. AWS Glue suorittaa erotus-, muunnos- ja lataustoimintoja (ETL) kohdistaakseen tiedot Amazon Personalize -tietojoukon skeemaan. Kun ETL-prosessi on valmis, tulostetiedosto sijoitetaan takaisin Amazon S3:een, valmiina siirrettäväksi Amazon Personalizeen tietojoukon tuontityö.
  • Reaaliaikainen käsittely - Voit käyttää Amazon Kinesis -tietovirrat ja AWS Lambda nielemään reaaliaikaista dataa asteittain. Lambda-toiminto suorittaa samat tietojen muunnostoiminnot kuin eränottotyö yksittäisellä tietuetasolla ja syöttää tiedot Amazon Personalizeen käyttämällä PutEvents ja PutItems API.

Tässä ratkaisussa voit myös sulattaa tiettyjä kohteita ja vuorovaikutustietoattribuutteja Amazon DynamoDB. Voit käyttää näitä määritteitä reaaliaikaisen päättelyn aikana suositusten suodattamiseen liiketoimintasääntöjen mukaan. Esimerkiksi artikkelin metatiedot voivat sisältää yritysten ja toimialojen nimiä artikkelissa. Jos haluat ennakoivasti suositella artikkeleita yrityksistä tai toimialoista, joista käyttäjät lukevat, voit tallentaa, kuinka usein lukijat käsittelevät tiettyjä yrityksiä ja toimialoja koskevia artikkeleita, ja käyttää näitä tietoja Amazon Personalise -suodattimet räätälöidä suositeltua sisältöä edelleen. Keskustelemme myöhemmin tässä viestissä lisää kohteiden ja vuorovaikutustietojen attribuuttien käytöstä DynamoDB:ssä.

Seuraava kaavio havainnollistaa tietojen käsittelyn arkkitehtuuria.

Harjoittele mallia

Suurin osa mallin harjoittelusta tulisi keskittyä käyttäjien personointimalliin, koska se voi käyttää kaikkia kolmea Amazon Personalize -tietojoukkoa (kun taas Trending Now -malli käyttää vain interactions tietojoukko). Suosittelemme suorittamaan kokeita, jotka vaihtelevat systemaattisesti koulutusprosessin eri puolia. Tämän ratkaisun käyttöönottaneelle asiakkaalle tiimi suoritti yli 30 kokeilua. Tämä sisälsi muuntamisen interactions ja items tietojoukkoominaisuudet, mallille tarjotun vuorovaikutushistorian pituuden säätäminen, Amazon Personalize -hyperparametrien virittäminen ja sen arvioiminen, paransiko eksplisiittinen käyttäjän tietojoukko offline-suorituskykyä (suhteessa harjoitusajan pidentymiseen).

Jokainen mallimuunnelma arvioitiin Amazon Personalizen harjoitustiedoista ilmoittamien mittareiden sekä holdout-testitietojoukon mukautettujen offline-mittareiden perusteella. Huomioon otettavat standardimittaukset sisältävät keskimääräisen tarkkuuden (MAP) @ K (jossa K on lukijalle esitettyjen suositusten määrä), normalisoitu diskontattu kumulatiivinen vahvistus, keskimääräinen vastavuoroinen sijoitus ja kattavuus. Lisätietoja näistä mittareista on kohdassa Ratkaisuversion arviointi mittareilla. Suosittelemme priorisoimaan MAP @ K:n näistä mittareista, sillä se kerää lukijan napsauttamien artikkelien keskimääräisen määrän K:n suosituimmista artikkelista, koska MAP-tieto on hyvä (todellisten) artikkelien napsautussuhteiden välityspalvelin. K tulisi valita sen perusteella, kuinka monta artikkelia lukija voi tarkastella tietokoneella tai mobiilisivustolla ilman vieritystä, jolloin voit arvioida suositusten tehokkuutta vähäisellä lukijan vaivalla. Mukautettujen mittareiden, kuten suositusten ainutlaatuisuuden (joka kuvaa, kuinka ainutlaatuinen suositustulos oli ehdokaskäyttäjien ryhmässä), käyttöönotto voi myös antaa tietoa suositusten tehokkuudesta.

Amazon Personalize -sovelluksella kokeellinen prosessi antaa sinun määrittää optimaaliset tietojoukon ominaisuudet sekä User Personalization- että Trending Now -malleille. Trending Now -malli on samassa Amazon Personalizessa tietojoukoryhmä kuten User Personalization -malli, joten se käyttää samaa sarjaa interactions tietojoukon ominaisuuksia.

Luo reaaliaikaisia ​​suosituksia

Kun lukija vierailee uutisyrityksen verkkosivulla, uutissuosittelijalle soitetaan API-puhelu kautta Amazon API -yhdyskäytävä. Tämä laukaisee Lambda-toiminnon, joka kutsuu Amazon Personalize -mallien päätepisteitä hankittavaksi suosituksia reaaliajassa. Päättelyn aikana voit käyttää suodattimet suodattaaksesi alkuperäisen suosituksen tulosteen artikkelin tai lukijan vuorovaikutusmääritteiden perusteella. Jos esimerkiksi "Uutisaihe" (kuten urheilu, elämäntapa tai politiikka) on artikkeliattribuutti, voit rajoittaa suositukset tiettyihin uutisaiheisiin, jos se on tuotteen vaatimus. Vastaavasti voit käyttää suodattimia lukijan vuorovaikutustapahtumissa, kuten sulkea pois artikkeleita, jotka lukija on jo lukenut.

Yksi reaaliaikaisten suositusten keskeinen haaste on juuri julkaistujen artikkelien (kutsutaan myös kylmäksi kohteeksi) tehokas sisällyttäminen suositustulokseen. Juuri julkaistuissa artikkeleissa ei ole historiallisia vuorovaikutustietoja, joihin suosittelijat tavallisesti luottavat, ja suositusjärjestelmät tarvitsevat riittävästi käsittelyaikaa arvioidakseen, kuinka osuvia juuri julkaistut artikkelit ovat tietylle käyttäjälle (vaikka käytettäisiin vain käyttäjäkohdesuhdesignaaleja).

Amazon Personalize voi automaattisesti havaita ja suositella uusia artikkeleita items tietojoukko 2 tunnin välein. Koska tämä käyttötapaus keskittyy kuitenkin uutissuosituksiin, tarvitset tavan suositella uusia artikkeleita heti, kun ne on julkaistu ja valmiita lukijan käyttöön.

Yksi tapa ratkaista tämä ongelma on suunnitella mekanismi, jolla juuri julkaistut artikkelit lisätään satunnaisesti jokaisen lukijan lopulliseen suositustulokseen. Voit lisätä ominaisuuden, jolla voit hallita sitä, kuinka suuri prosenttiosuus lopullisen suositusjoukon artikkeleista oli juuri julkaistuja artikkeleita, ja Amazon Personalizen alkuperäisen suositustulosteen tapaan voit suodattaa juuri julkaistut artikkelit artikkelimääritteiden mukaan (kuten "Uutisaihe"). ), jos se on tuotevaatimus. Voit seurata DynamoDB:ssä juuri julkaistujen artikkelien vuorovaikutusta, kun ne alkavat valua järjestelmään, ja priorisoida suosituimmat juuri julkaistut artikkelit suosituksen jälkikäsittelyn aikana, kunnes Amazon Personalize -mallit havaitsevat ja käsittelevät juuri julkaistut artikkelit.

Kun sinulla on viimeinen suositeltujen artikkelien joukko, tämä tulos lähetetään toiseen jälkikäsittelyyn Lambda-funktioon, joka tarkistaa tulosteen, onko se linjassa ennalta määritettyjen liiketoimintasääntöjen kanssa. Näihin voi kuulua sen tarkistaminen, vastaavatko suositellut artikkelit verkkosivun asetteluvaatimukset, jos suosituksia tarjotaan esimerkiksi verkkoselaimen käyttöliittymässä. Tarvittaessa artikkelit voidaan luokitella uudelleen sen varmistamiseksi, että liiketoimintasääntöjä noudatetaan. Suosittelemme luokittelemaan uudelleen ottamalla käyttöön toiminnon, joka sallii korkeamman tason artikkelit pudota sijoituksessa vain yhdestä paikasta kerrallaan, kunnes kaikki liiketoimintasäännöt täyttyvät, mikä vähentää lukijoille mahdollisimman vähän osuvuutta. Lopullinen luettelo jälkikäsitellyistä artikkeleista palautetaan suosituspyynnön käynnistäneelle verkkopalvelulle.

Seuraava kaavio havainnollistaa ratkaisun tämän vaiheen arkkitehtuuria.

Luo eräsuosituksia

Henkilökohtaiset uutishallintapaneelit (reaaliaikaisten suositusten kautta) vaativat lukijan aktiivisesti etsimään uutisia, mutta tämän päivän kiireisessä elämässämme joskus on helpompaa saada tärkeimmät uutiset sinulle. Voit toimittaa mukautettuja uutisartikkeleita sähköpostikoosteena käyttämällä AWS-vaihetoiminnot työnkulku eräsuositusten luomiseksi. Eräsuositusten työnkulku kerää ja jälkikäsittelee suosituksia User Personalization -mallin tai Trending Now -mallin päätepisteistä, mikä antaa joustavuutta valita, minkä yhdistelmän mukautettuja ja trendaavia artikkeleita tiimit haluavat tarjota lukijoilleen. Kehittäjät voivat myös käyttää Amazon Personalizea eräpäätelmä ominaisuus; Kirjoitushetkellä Amazon Personalize -eräpäättelytyön luominen ei kuitenkaan tue Amazon Personalize -muokatun mallin koulutuksen jälkeen syötettyjen kohteiden sisällyttämistä, eikä se tue Trending Now -reseptiä.

Eräpäätelmän Step Functions -työnkulun aikana lukijaluettelo jaetaan eriin, käsitellään rinnakkain ja lähetetään jälkikäsittely- ja vahvistuskerrokseen ennen lähettämistä sähköpostin luontipalveluun. Seuraava kaavio havainnollistaa tätä työnkulkua.

Skaalaa suosittelujärjestelmää

Skaalataksesi tehokkaasti, tarvitset myös uutissuosittajan, jotta se voi mukauttaa kasvavan käyttäjien määrän ja lisääntyneen liikenteen ilman, että lukijakokemus heikkenee. Amazon Personalize mallin päätepisteet natiivisti automaattinen asteikko lisääntyneen liikenteen hillitsemiseksi. Insinöörien tarvitsee vain asettaa ja valvoa jokaiselle Amazon Personalize -päätepisteelle TPS-muuttujien vähimmäismäärä.

Amazon Personalizen lisäksi tässä esitelty uutissuositussovellus on rakennettu käyttämällä palvelimettomia AWS-palveluita, jolloin suunnittelutiimit voivat keskittyä parhaan lukijakokemuksen tarjoamiseen huolehtimatta infrastruktuurin ylläpidosta.

Yhteenveto

Tässä huomiotaloudessa on tullut yhä tärkeämpää toimittaa kuluttajille relevanttia ja oikea-aikaista sisältöä. Tässä viestissä keskustelimme siitä, kuinka voit käyttää Amazon Personalizea skaalautuvan uutissuosittajan rakentamiseen ja strategioista, joita organisaatiot voivat toteuttaa vastatakseen uutissuositusten toimittamiseen liittyviin ainutlaatuisiin haasteisiin.

Lisätietoja Amazon Personalizesta ja siitä, kuinka se voi auttaa organisaatiotasi rakentamaan suositusjärjestelmiä, on osoitteessa Amazon Personalize -kehittäjäopas.

Hyvää rakennusta!


Tietoja Tekijät

Bala Krishnamoorthy on vanhempi tietotutkija AWS Professional Services -palvelussa, jossa hän auttaa asiakkaita rakentamaan ja ottamaan käyttöön tekoälypohjaisia ​​ratkaisuja liiketoiminnan haasteiden ratkaisemiseksi. Hän on työskennellyt asiakkaiden kanssa eri aloilla, mukaan lukien media ja viihde, rahoituspalvelut, terveydenhuolto ja teknologia. Vapaa-ajallaan hän viettää aikaa perheen/ystävien kanssa, pysyy aktiivisena, kokeilee uusia ravintoloita, matkustaa ja aloittaa päivänsä höyryävän kuuman kupin kahvilla.

Rishi Jala on NoSQL Data Architect, jolla on AWS Professional Services. Hän keskittyy erittäin skaalautuvien sovellusten arkkitehtuuriin ja rakentamiseen käyttämällä NoSQL-tietokantoja, kuten Amazon DynamoDB:tä. Intohimona asiakkaiden ongelmien ratkaisemiseen hän toimittaa räätälöityjä ratkaisuja menestyäkseen digitaalisessa ympäristössä.

spot_img

Uusin älykkyys

spot_img