AI-modeller og plattformer
Parafrase-generering med dyp forsterkninglæring – Tankeledere

Når vi skriver eller snakker, har vi alle noen gang lurt på om det finnes en bedre måte å kommunisere en idé til andre. Hvilke ord bør jeg bruke? Hvordan bør jeg strukturere tanken? Hvordan er de sannsynligvis å reagere? Hos Phrasee bruker vi mye tid på å tenke på språk – hva som fungerer og hva som ikke gjør det.
Forestall at du skriver emnefeltet for en e-postkampanje som skal sendes til 10 millioner mennesker på din liste for å promotere 20 % rabatt på en ny laptop.
Hvilken linje ville du velge:
- Du kan nå få 20 % rabatt på din neste bestilling
- Vær klar – 20 % rabatt
Selv om de overbringer samme informasjon, oppnådde en av dem en åpningssats som var nesten 15 % høyere enn den andre (og jeg tipper at du ikke kan slå vår modell på å forutsi hvilken en ?). Selv om språk ofte kan testes gjennom A/B-testing eller multi-armed bandits, å generere parafaser automatisk er fremdeles et svært utfordrende forskningsproblem.
To setninger anses som parafaser av hverandre hvis de deler samme mening og kan brukes om hverandre. En annen viktig ting som ofte tas for gitt er om en maskin-generert setning er flytende.
I motsetning til overvåket læring, lærer forsterkninglæring (RL) agenter gjennom å samhandle med deres omgivelser og observere belønningene de mottar som resultat. Denne noen ganger nyanserte forskjellen har massive implikasjoner for hvordan algoritmene fungerer og hvordan modellene er trent. Dyp forsterkninglæring bruker neurale nettverk som en funksjonsapproximator for å la agenten lære hvordan å overgå mennesker i komplekse miljøer som Go, Atari og StarCraft II.
Til tross for denne suksessen, har forsterkninglæring ikke blitt bredt anvendt på virkelige problemer, inkludert naturlig språkbehandling (NLP).
Som en del av min masteroppgave i Data Science, demonstrerer vi hvordan dyp RL kan brukes til å overgå overvåket læring i å generere parafaser av inndata-tekst. Problemet med å generere den beste parafasen kan sees på som å finne serien av ord som maksimerer semantisk likhet mellom setninger samtidig som den opprettholder flyt i utgangen. RL-agenter er godt egnet for å finne den beste settet med handlinger for å oppnå maksimal forventet belønning i kontrollmiljøer.
I motsetning til de fleste problemene i maskinlæring, ligger det største problemet i de fleste naturlige språk-genereringsapplikasjoner (NLG) ikke i modelleringen, men heller i evalueringen. Mens menneskelig evaluering for tiden anses som gullstandarden i NLG-evaluering, lider den av betydelige ulemper, inkludert å være dyrt, tidskrevende, vanskelig å finne og mangler reproduksjon over eksperimenter og datasett (Han, 2016). Som et resultat har forskerne lenge søkt etter automatiske metrikker som er enkle, generelle og som reflekterer menneskelig dom (Papineni et al., 2002).
De vanligste automatiske evalueringsteknikkene for å evaluere maskin-genererte bilde-underskrifter er sammenfattet nedenfor med deres for- og ulemper:

Parafase-generering med forsterkninglæring Pipeline
Vi utviklet et system kalt ParaPhrasee som genererer høykvalitetsparafaser. Systemet består av flere trinn for å anvende forsterkninglæring på en komputasjonelt effektiv måte. En kort sammenfatting av høynivå-pipeline er vist nedenfor med mer detalj i avhandlingen.

Datasett
Det finnes flere parafase-datasett tilgjengelig som brukes i forskning, inkludert: Microsoft Paraphrase-korpus (MSFT ), ACLs semantisk tekst-ligningskonkurranse, Quora Duplicate Questions og Twitter Shared Links. Vi har valgt MS-COCO gitt dens størrelse, renhet og bruk som en benchmark for to bemerkelsesverdige parafase-genereringsartikler. MS-COCO inneholder 120k bilder av vanlige scener med 5 bilde-underskrifter per bilde levert av 5 forskjellige menneskelige annotatorer.
mens det hovedsakelig er designet for datavitenskapsforskning, tenderer underskriftene til å ha høy semantisk likhet og være interessante parafaser. Gitt at bilde-underskriftene er levert av forskjellige mennesker, tenderer de til å ha små variasjoner i detaljene som er gitt i scenen, og derfor tenderer de genererte setningene til å hallucinere detaljer.

Overvåket modell
mens forsterkninglæring har forbedret seg betraktelig når det gjelder prøveeffektivitet, treningstider og generelle beste praksiser, er å trene RL-modeller fra scratch fremdeles relativt svært og ustabil (Arulkumaran et al., 2017). Derfor, i stedet for å trene fra scratch, trener vi først en overvåket modell og finjusterer den deretter med RL.
Vi bruker en Encoder-Decoder-modellramme og vurderer ytelsen til flere baseline-overvåkede modeller. Når vi finjusterer modellen med RL, finjusterer vi bare dekoderingsnettverket og behandler encoderingsnettverket som statisk. Som sådan vurderer vi to hovedrammer:
- Å trene den overvåkede modellen fra scratch med en standard/vanlig encoder-decoder med GRUs
- Å bruke forhånds-trente setnings-embeddingsmodeller for encoderen, inkludert: pooled word-embeddings (GloVe), InferSent og BERT
De overvåkede modellene tenderer til å fungere ganske likt over modellene, med BERT og den vanlige encoder-decoderen som oppnår den beste ytelsen.

mens ytelsen tenderer til å være rimelig, finnes det tre vanlige kilder til feil: stuttering, generering av setningsfragmenter og hallucinasjoner. Disse er de viktigste problemene som RL skal løse.

Forsterkninglæring-modell
Å implementere RL-algoritmer er svært, spesielt når du ikke vet om problemet kan løses. Det kan finnes problemer i implementeringen av din miljø, dine agenter, dine hyperparametere, din belønningsfunksjon eller en kombinasjon av alle disse! Disse problemene forverres når du gjør dyp RL, da du får den ekstra kompleksiteten av å feilsøke neurale nettverk.
Som med all feilsøking, er det avgjørende å starte enkelt. Vi implementerte variasjoner av to godt forståtte leke-RL-miljøer (CartPole og FrozenLake) for å teste RL-algoritmer og finne en gjentakende strategi for å overføre kunnskap fra den overvåkede modellen.
Vi fant at å bruke en Actor-Critic-algoritme overgikk REINFORCE i disse miljøene. Når det gjelder å overføre kunnskap til Actor-Critic-modellen, fant vi at å initialisere skuespillerens vekter med den trente overvåkede modellen og forhånds-treningskritikken oppnådde den beste ytelsen. Vi fant det vanskelig å generalisere sofistikerte policy-destillasjons-tilnærminger til nye miljøer, da de introduserer mange nye hyperparametere som krever finjustering for å fungere.
Støttet av disse innsiktene, vendte vi deretter til å utvikle en tilnærmingsmetode for parafase-generering-oppgaven. Vi må først skape en miljø.

Miljøet lar oss enkelt teste innvirkningen av å bruke forskjellige evalueringsteknikker som belønningsfunksjoner.
Deretter definerer vi agenten. Gitt dens mange fordeler, bruker vi en Actor-Critic-arkitektur. Skuespilleren brukes til å velge neste ord i sekvensen og har sine vekter initialisert med den overvåkede modellen. Kritikeren gir en estimat av den forventede belønningen en tilstand sannsynligvis vil motta for å hjelpe skuespilleren med å lære.
Designing the Right Reward Function
Den viktigste komponenten i å designe et RL-system er belønningsfunksjonen, da dette er hva RL-agenten prøver å optimere. Hvis belønningsfunksjonen er feil, lider resultater under selv om alle andre deler av systemet fungerer!
Et klassisk eksempel på dette er CoastRunners, der OpenAI-forskerne satte belønningsfunksjonen til å maksimere den totale scoren i stedet for å vinne løpet. Resultatet av dette er at agenten oppdaget en løkke hvor den kunne få den høyeste scoren ved å treffe turbos uten å fullføre løpet.
https://www.youtube.com/watch?time_continue=2&v=tlOIHko8ySg&feature=emb_title
Gitt at evaluering av parafasenes kvalitet i seg selv er et uløst problem, er å designe en belønningsfunksjon som automatisk fanger dette målet enda vanskeligere. De fleste aspekter av språk dekomponerer ikke pent i lineære metrikker og er avhengig av oppgaven (Novikova et al., 2017).
RL-agenten oppdager ofte en interessant strategi for å maksimere belønninger som utnytter svakhetene i evalueringsteknikken i stedet for å generere høykvalitets-tekst. Dette tenderer til å resultere i dårlig ytelse på metrikker som agenten ikke direkte optimaliserer.
Vi vurderer tre hovedtilnærminger:
- Ord-overlappsmetrikker
Vanlige NLP-evalueringsteknikker vurderer andelen av ord-overlapp mellom den genererte parafasen og evalueringssentensen. Jo større overlapp, jo større belønning. Utfordringen med ordnivå-tilnærminger er at agenten inkluderer for mange koblingsord som “a er på av” og det finnes ingen måte å måle flyt på. Dette resulterer i svært lavkvalitetsparafaser.

- Setningsnivå-lignings- og flytmetrikker
De viktigste egenskapene til en generert parafase er at den må være flytende og semantisk lik input-sentensen. Derfor prøver vi å score disse individuelt og kombinere metrikkene. For semantisk likhet bruker vi cosinus-ligningen mellom setnings-embeddings fra forhånds-trente modeller, inkludert BERT. For flyt bruker vi en score basert på setningens forvirring fra GPT-2. Jo større cosinus-ligning og flyt-scorer, jo større belønning.
Vi prøvde mange forskjellige kombinasjoner av setnings-embeddingsmodeller og flytmodeller, og mens ytelsen var rimelig, var det største problemet agenten møtte ikke å balansere semantisk likhet med flyt godt nok. For de fleste konfigurasjoner prioriterte agenten flyt, noe som resulterte i å fjerne detaljer og de fleste enhetene ble plassert “i midten” av noe eller ble flyttet “på en bord” eller “side av veien”.
Multi-objekts-forsterkninglæring er et åpent forskningsspørsmål og er svært utfordrende i dette tilfellet.

- Å bruke en motstander-modell som belønningsfunksjon
Gitt at mennesker anses som gullstandarden i evaluering, trener vi en separat modell kalt diskriminatoren for å forutsi om to setninger er parafaser av hverandre (lik som en menneskelig vurdering ville). Målet for RL-modellen er deretter å overbevise denne modellen om at den genererte setningen er en parafase av input-sentensen. Diskriminatoren genererer en score for hvor sannsynlig det er at de to setningene er parafaser av hverandre, som brukes som belønning for å trene agenten.
Hver 5 000 gjetninger fortelles diskriminatoren hvilken parafase som kom fra datasett og hvilken som ble generert, så den kan forbedre sine fremtidige gjetninger. Prosessen fortsetter i flere runder med agenten som prøver å lure diskriminatoren og diskriminatoren som prøver å skille mellom de genererte parafasene og evalueringssentensene fra datasett.
Etter flere runder med trening, genererer agenten parafaser som overgår de overvåkede modellene og andre belønningsfunksjoner.

Konklusjon og begrensninger
motstander-tilnærminger (inkludert selv-spill for spill) gir en svært lovende tilnærmingsmetode for å trene RL-algoritmer til å overgå menneskelig nivå på bestemte oppgaver uten å definere en eksplisitt belønningsfunksjon.
mens RL var i stand til å overgå overvåket læring i dette tilfellet, er den ekstra overhodet i form av kode, beregning og kompleksitet ikke verdt ytelsesforbedringen for de fleste applikasjoner. RL er best brukt i situasjoner der overvåket læring ikke kan anvendes lett, og en belønningsfunksjon er enkel å definere (slik som Atari-spill). Tilnærmingsmetodene og algoritmene er langt mer modne i overvåket læring, og feilsignalene er mye sterkere, noe som resulterer i raskere og mer stabil trening.
En annen overveielse er, som med andre neurale tilnærminger, at agenten kan feile svært dramatisk i tilfeller der input er forskjellig fra input den tidligere har sett, noe som krever en ekstra lag med sanity-sjekker for produksjonsapplikasjoner.
Eksplosjonen av interesse for RL-tilnærminger og fremgang i beregnings-infrastruktur de siste årene vil låse opp enorme muligheter for å anvende RL i industrien, spesielt innen NLP.












