Vi prøvede at lære en kunstig intelligens at skrive julefilmplotter. Hilarity fulgte. Til sidst.

At bruge et neuralt netværk til at skabe latterlige plotlinjer kræver meget arbejde - og afslører udfordringerne ved at generere menneskeligt sprog. 21. december 2018 En spoof if It-filmplakaten, der læser It Christmas.

En spoof if 'It'-filmplakaten med 'It Christmas'. Mr. Tech





Måske mere end nogen anden populariserede forsker Janelle Shane AI-humor. Du har måske set hendes arbejde. Under Halloween i år har hun indgået partnerskab med New York Times for at generere kostumenavne med et neuralt netværk. Resultaterne - og illustrationerne - er ret fantastiske: Sexy Minecraft Person og Vampire Chick Shark, for at nævne nogle få.

Shane har lavet en kunst ud af AI-genereret komedie på sin dejlige blog AI Weirdness . Hun har fodret neurale netværk med alt fra cocktail opskrifter og tærtenavne til gyserfilmtitler og Disney sangtekster . De resultater, de får, er altid sjove.

Den inspirerede senior AI-redaktør Will Knight og jeg gik i gang med en udfordring om at skabe et komisk mesterværk i stil med Shane. Så vi fodrede plotresuméer af 360 julefilm, høfligt af Wikipedia , ind i en maskinlæringsalgoritme for at se, om vi kunne få den til at spytte den næste store ferieblockbuster ud. Det er tilstrækkeligt at sige, at jeg nu føler med forskere, der beskriver træning af neurale net som mere en kunst end en videnskab. Som jeg også opdagede, er det faktisk ret svært at få dem til at være sjove.



Følg vores proces nedenfor:

Processen
Det moralske
Resultaterne

Processen

Algoritmen vi brugte hedder tekstgenrnn , den samme Shane brugte i sit samarbejde med Times. Textgenrnn har to tilstande: du kan enten bruge bogstaver til at generere ord i stil med andre ord, eller bruge ord til at generere sætninger i stil med andre sætninger.



Hver tilstand kommer med de samme indstillinger, som du kan tune i forskellige forsøg på at lokke frem til gode resultater. Jeg fokuserede primært på tre af indstillingerne: antallet af lag , antallet af epoker , og temperatur .

En forfalskning af

Vi forsøgte også at generere julefilmtitler. Vores kunstafdeling havde det rigtig sjovt med disse. Mr. Tech

Tillad mig at forklare. Lag , refererer her til kompleksiteten af ​​det neurale netværk: Jo flere lag det har, jo mere komplicerede data kan det håndtere. Antallet af epoker er det antal gange, den kommer til at se på træningsdataene, før den spytter sine endelige resultater ud. Og temperatur er som en kreativitetsindstilling: Jo lavere temperatur, jo mere vil netværket vælge almindelige ord i træningsdatasættet i forhold til dem, der sjældent optræder.



Selvfølgelig vidste jeg intet af dette, mens jeg tumlede rundt. I stedet uploadede jeg mine filmplot i en tekstfil og begyndte blindt at justere på knapperne. Her er nogle eksempler på, hvad jeg begyndte at se, med høje kreativitetsindstillinger og et voksende antal epoker:

Epoke 4
Mary skal venner fra magic putting christmas stop nathan endeavors the.

Gnir alvorlig en udvej bet elvere plejede den en i dag tallen shady med jul afsløring hente døde californien venter er jordsvin efter bagsiden af ​​den kloge pedel jul traumatiseret den til at opdage populær til sit samfund.



En overleve før show i byen de den.

Epoke 6
Og dreng søn arbejder, hvis problemer født religiøse kan en.

Max mccallister evie til hvem tro mod sin jul den i partner spørgsmål.

Forældreløse og mccallister lejlighedstyv mest ferie.

Epoke 8
Forstadsejer udehold kort ond til at ved at hun det frække forsøg frække ind af flugt livet lærer kvarter var deres hus omstændigheder besøger dig til.

WWII find retriever til at til vennerne for.

Et morpar en en tager pacifist tre billig familie fortæller hyggelige gaver klon til tandløs.

Hvis du læser disse og tænker, De er uforståelige og ikke sjove , så er du, ven, og jeg af samme mening.

Først gik jeg ud fra, at jeg gjorde noget forkert; Jeg havde ikke helt knækket kunsten at træne det neurale netværk korrekt. Men efter snesevis af forsøg på forskellige indstillinger, kom jeg endelig til den konklusion, at dette er så godt, som det bliver. De fleste af sætningerne vil være helt forfærdelige, og en sjælden gang vil du få en perle.

Det moralske

En del af problemet, forklarede Shane, da jeg talte med hende, skyldtes mit lille træningsdatasæt - 360 datapunkter er små kartofler sammenlignet med de millioner, der typisk bruges til resultater af høj kvalitet. En del af det skyldtes også tekstgenrnn - algoritmen, sagde hun, er bare ikke så god til at konstruere sætninger sammenlignet med alternativer. (Ved vi hvorfor? Jeg spurgte Shane. Jeg tror ikke engang den fyr, der lavede tekstgenrnn, rigtig ved det, sagde hun. Det kunne endda være en fejl. Ah, skønheden ved sorte boks-algoritmer.)

Men hovedårsagen er egentlig begrænsningerne ved at generere sætninger med et neuralt net. Selvom jeg havde brugt bedre data og en bedre algoritme, er udfordringen med at opnå sammenhæng yderst normal.

En forfalskning af

Mz. Tech

Dette giver mening, hvis du tænker på, hvad der sker under hætten. Maskinlæringsalgoritmer er rigtig gode til at bruge statistik til at finde og anvende mønstre i data. Men det handler om det. Så i forbindelse med at konstruere sætninger, vælger du hvert på hinanden følgende ord kun baseret på sandsynligheden for, at det ville blive vist efter det forrige ord. Det er som at prøve at skrive en e-mail med prædiktiv tekst. Resultatet ville være fyldt med non-sequiturs, skift mellem ental og flertal og en hel masse forvirring over dele af tale.

Så i virkeligheden kræver det en masse manuelt arbejde at få et neuralt netværk til at spytte sludder ud, som mennesker ville betragte som fjernt humoristisk.

For nogle datasæt viser jeg kun folk måske én ud af hundrede ting, det genererer, indrømmede Shane. Jeg klarer mig rigtig godt, hvis én ud af ti faktisk er sjov og værd at vise. I mange tilfælde, fortsatte hun, tager det hende mere tid at kurere resultaterne end at træne algoritmen.

Lektion lært: neurale netværk er ikke så sjove. Det er menneskene, der er.

Resultaterne

Som en bonus er her nogle af de bedste algoritmisk genererede plotresuméer Will og jeg var i stand til at komme med, let renset. Vi har også genereret julefilmtitler ved hjælp af ordtilstand for god ordens skyld.

Synopser
En familie af juleterroristen og tilbyder den første gang at være en charlichhold for en ny by at kæmpe.
En historie om hjemme-liv far til julehistorien.
Den tilbagetrukne fra jul.
En kvinde fra kaos adopteret hjem mener.
En prinsesse trold i nærheden krydser forbi i julen.
En gartnerdetektiv men landmorder magisk pludselig jul den nære nisse.
En aflytning lider, og en ven skifter jul ud med sin og sparer juletid.
En familiefar og en særlig fremmedgjort til jul.
En strandet juleaften til New York-familien før jul.
Hellig.
Joakim leder Bad af julemanden, siden Anima.
En mand vender tilbage til sangerinden, der er tvunget til at give sit liv tilbage med et par for at hjælpe hendes datter til jul.
En julemands engel fra planten.
Ensom kurer landsbyavis ved hjemmet ødelægge julen jul julen den prancer.
Babysitter dreng forsøger at feste julen ind til mere jul.

Titler
Julebutikken
Julemanden jul jul
Julemilen
Kæmp julen
Natten Claus
I Santa Manta Christmas Porie
Baby jul
En Jule StorK
Grange julen
Julemanden Christmas Pastie Christmas
Julekaper
En juleherre
Lick julen
Mrack Me Christmas Satra
The Christmas Catond 2
Santa Bach jul
Julemaleri
Julebesætning
En jul på vej
Det er julemanden
Fromilly

skjule