211service.com
Netflix-udfordringen på $1 million
Tidligere på ugen meddelte Netflix, online-filmudlejningstjenesten, at den vil præmiere 1 million dollars til enhver, der kan komme med en algoritme, der forbedrer nøjagtigheden af dens filmanbefalingstjeneste.

Netflix’ stjerneklassificeringssystem hjælper med at bestemme personlige filmanbefalinger. Nu søger virksomheden eksterne udviklere for at forbedre disse anbefalinger.
I den forbindelse sender virksomheden en opfordring til forskere, der specialiserer sig i maskinlæring - den type kunstig intelligens, der bruges til at bygge systemer, der anbefaler musik, bøger og film. Den deltager, der kan øge nøjagtigheden af Netflix-anbefalingssystemet, som kaldes Cinematch, med 10 procent i 2011, vinder prisen.
Anbefalingssystemer som dem, der bruges af Netflix, Amazon og andre web-forhandlere, er baseret på princippet om, at hvis to personer nyder det samme produkt, vil de sandsynligvis også have andre favoritter til fælles.
Men bag denne enkle forudsætning er en kompleks algoritme, der inkorporerer millioner af brugervurderinger, titusindvis af elementer og stadigt skiftende forhold mellem brugerpræferencer.
For at håndtere denne kompleksitet trænes algoritmer til anbefalingssystemer på enorme datasæt. Et datasæt, der bruges i Netflix’ system, indeholder de stjerneklassifikationer – en til fem – som Netflix-kunder tildeler film. Ved at bruge denne indledende information er gode algoritmer i stand til at forudsige fremtidige vurderinger og kan derfor foreslå andre film, som en person kunne lide.
Fordi adgang til et sådant datasæt er afgørende for at forbedre kvaliteten af dets anbefalingssystemer, udgav virksomheden også 100 millioner anbefalinger – frataget enhver personlig identificerende information – ifølge Jim Bennett, vicepræsident for anbefalingssystemer hos Netflix.
Vi talte med Bennett i denne uge om, hvordan anbefalingssystemer fungerer – og udfordringerne ved at bygge et bedre.
Teknologianmeldelse: Før du bygger et bedre anbefalingssystem, ville det være nyttigt at forstå din nuværende tilgang. Hvordan fungerer Cinematch?
Jim Bennett: Først indsamler du 100 millioner brugervurderinger for omkring 18.000 film. Tag to film og find de personer, der har bedømt dem begge. Se derefter, om de personer, der vurderer en af filmene højt vurderer den anden højt, om de kunne lide den ene og ikke den anden, eller om de ikke kunne lide nogen af filmene. Baseret på deres vurderinger ser Cinematch, om der er en sammenhæng mellem disse personer. Gør nu dette for alle mulige par af 65.000 film.
TR: Så Cinematch ville anbefale film til mig baseret på vurderinger af folk, der bedømte film på den måde, jeg gjorde. Virker den metode for alle film på Netflix?
JB: Mange af de virkelig obskure diske, for eksempel DVD'erne How to Mow a Lawn, har ikke ret mange bedømmelser, og denne metode virker ikke så godt. For film med et stort antal vurderinger klarer du dig væsentligt godt. Men for at få det til at fungere, skal der være en masse data-tuning, fordi folk nogle gange kan have interessante vurderingsmønstre.
TR: Som hvad?
JB: For eksempel er der mange mennesker, der bedømmer en film med kun én stjerne eller fem stjerner. Og der er nogle mennesker, der bare vurderer alt med tre stjerner. Det, du leder efter, er en interessant spredning af meninger, fordi du forsøger at fange sammenhænge. Det er kernen i motoren.
TR: Hvordan måler du kvantitativt nøjagtigheden af dit system?
JB: Vi trænede Cinematch på 100 millioner vurderinger og bad den forudsige, hvad de andre 3 millioner ville være. Vi sammenlignede vores med de faktiske svar. Det gør vi hver dag. Vi får omkring 2 millioner vurderinger om dagen, og vi sporer de daglige udsving i systemet. Vi forventer at måle bidrag til konkurrencen [på samme måde]. Det faktiske prisdatasæt er 103 millioner vurderinger, men vi har kun frigivet 100 millioner af dem.
TR: For at vinde prisen på $1 million skal en ny algoritme forbedre nøjagtigheden af anbefalingerne med 10 procent i forhold til Cinematch. Du belønner også en fremskridtspræmie på $50.000 hvert år for den algoritme, der viser den største forbedring i forhold til det foregående års bedste algoritme, med mindst 1 procent. Hvad vil disse procentvise forbedringer betyde for en Netflix-kunde?
JB: Hvis du går ind på hjemmesiden og bedømmer 100 film for os, bliver de røde stjerner vist under hver film tilpasset til dig. Vi bruger disse vurderinger til at justere forudsigelsen væk fra den gennemsnitlige anbefaling efter din smag. En forskel på tre procent kan for eksempel gøre en forskel på en kvart stjerne. Vi har millioner af mennesker, der vurderer millioner af dvd'er, og denne kvartstjerneforskel hjælper os med at sortere listen. Den individuelle filmanbefaling bliver måske ikke så meget bedre, men samlet set er sættet af anbefalede film meget anderledes. Flyt et slagskib en lille smule, og det gør en kæmpe forskel.
TR: Hvorfor er anbefalingssystemer så svære at forbedre?
JB: En af grundene er, at der ikke er nogen datasæt. Mange af maskinlæringsapplikationerne kræver ret betydelige datasæt, der nemt har millioner af datapunkter. Der er mange forskellige tilgange til at løse problemet, men de har alle brug for store datasæt. Og som med mange datasæt, når vi først har anvendt teknikkerne til disse datasæt, er der ingen steder at tage hen.
TR: Så du leder efter en algoritme, der tackler problemet på en helt anden måde end Cinematch?
JB: Korrekt. Så vidt vi ved, er der mange gode ideer ude på området. Vi kan bare ikke teste dem alle. Vi ved, at der er mennesker, der virkelig er på toppen af litteraturen, som kender ins og outs af [anbefalingssystemer], og vi vil virkelig gerne vide, hvilke der ville være bedre.
TR: Hvad er nogle fremgangsmåder, diskuteret i litteraturen, som kunne fungere, men som endnu ikke er blevet testet med filmanbefalinger?
JB: Det er svært at sige. Der var en artikel i Videnskab for et par måneder siden [28. juli 2006] der brugte en interessant kombination af to typer neurale netværk [en beregningsmetode, der sorterer data svarende til den menneskelige hjerne]. Det ene neurale netværk overvåger maskinlæringen, og det andet styrer den læring. Hos Netflix ser vi på sammenhænge mellem ratings, og det er en lineær model. Ikke al viden kan repræsenteres af en lineær kombination af funktioner. Denne særlige model i Videnskab bruger en ikke-lineær tilgang. Jeg tror, den teknik kunne være ret god.
TR: Er der andre presserende tekniske udfordringer hos Netflix, som kan løses ved at tilbyde en præmie?
JB: Jeg vil ikke spekulere i flere konkurrencer. Er der andre tekniske udfordringer? Absolut. Ud over systemudfordringen med at holde anbefalingsmotorerne oppe og køre med en stigende kundebase, har vi også et stort antal udfordringer i virksomheden – som at prøve at sende to millioner diske om dagen til folk. Og der er interessante udfordringer forude, når vi gør os klar til downloadverdenen [hvor folk kan downloade film via internettet]. Virksomheden er fyldt med enorme udfordringer.