Tv & OTT. 2006: Netflix mette una taglia di 1 mln $ su un algoritmo predittivo. Ma tutti i partecipanti al test si schiantano su un film

algoritmo

Nel 2006 apparve online uno strano invito: Netflix offriva un milione di dollari a chi fosse riuscito a creare un algoritmo di filtering collaborativo in grado di predire il gradimento futuro di un film da parte di un utente. Sulla base dei suoi rating su film precedenti, senza conoscere nulla dell’utente e conoscendo solo il titolo dei film.
Ci tentarono in tanti. Ma c’era un muro (apparentemente) invalicabile. Un film del 2004 su cui tutti gli algoritmi si schiantavano. Anche quelli in grado di prevedere ottimamente gli altri titoli, su questo fallivano miseramente.

L’intrigante tema della genesi del micidiale algoritmo di Netflix

Nel primo articolo sul tema abbiamo familiarizzato con il metodo utilizzato da Netflix (e da altri OTT) per suggerirci nuovi contenuti. In particolare, abbiamo analizzato il layout della schermata home di Netflix e introdotto due tipologie di algoritmo: il Content Filtering ed il Collaborative Filtering.

Cercheremo oggi di fare un passo avanti per capire come davvero funzionano questi sistemi basati sull’intelligenza artificiale (e scopriremo che non sono così semplici come appariva ad una prima analisi).

Un premio da 1 milione di dollari dal concorrente di Blockbuster

Dobbiamo partire da una challenge, da un premio da un milione di dollari: il Netflix Prize.
Siamo nel 2006, Netflix non ha ancora lanciato alcun servizio di streaming. Ed è conosciuta come concorrente di Blockbuster nel settore del rental di dvd.

algoritmo netflix dvd - Tv & OTT. 2006: Netflix mette una taglia di 1 mln $ su un algoritmo predittivo. Ma tutti i partecipanti al test si schiantano su un film

Lo strano invito

Appare online uno strano invito: la società offre un premio di un milione di dollari a chi riuscirà a creare un algoritmo di filtering collaborativo in grado di predire il rating (gradimento) futuro di un film da parte di un utente. Sulla base dei suoi rating su film precedenti. Senza conoscere nulla dell’utente e sapendo solo il titolo dei film.

Target: predire i gusti ed indirizzare le scelte (dei dvd)

L’obiettivo è predirlo meglio di quanto già non faccia l’algoritmo sviluppato in-house: il Cinematech.
In breve, la società vuole essere in grado di raccomandare ai suoi utenti quale dvd affittare in base a quelli già noleggiati ed essere ragionevolmente certa proporre un titolo che riscontrerà il gradimento dell’utente.

La taglia di 1 milione di dollari su un algoritmo

Il milione di dollari è giustificato dal fatto che un miglioramento del 10% della precisione nelle raccomandazioni (10% è quanto richiesto per vincere il milione di dollari) – un valore ben superiore al milione stesso – e l’intelligenza collettiva delle comunità matematico-informatica ha probabilmente più chance di arrivare rapidamente ad una soluzione rispetto ai ricercatori della società stessa.

Training-set

Per testare i propri algoritmi Netflix mette a disposizione un training-set contenente 100 milioni di rating (col vecchio sistema delle stelle), creati da 480.000 utenti e riguardanti 18.000 titoli.

L’algoritmo proposto dovrà calcolare il rating 2,8 milioni di coppie utente-film forniti. E farlo il 10% meglio di quanto non faccia Cinematech

Ma il problema risulta più complesso del previsto e per tre anni nessun team riesce ad arrivare al famoso 10%. I risultati dei vari gruppi di lavoro sono visibili a tutti online durante il contest. Alcuni riescono ad arrivare quasi al 9%, ma sembra esserci un muro oltre il quale nessuno riesce ad andare.

algoritmo napoleondynamite - Tv & OTT. 2006: Netflix mette una taglia di 1 mln $ su un algoritmo predittivo. Ma tutti i partecipanti al test si schiantano su un filmNapoleon Dynamite

Il muro ha un nome: Napoleon Dynamite. Si tratta di un film del 2004 senza quasi avvenimenti, dove tutto ruota attorno al personaggio principale, classificabile come un looser. Tutti gli algoritmi si schiantano su questo film: anche quelli in grado di prevedere ottimamente gli altri titoli, su questo falliscono miseramente.

O lo ami o lo odi

Se potessero analizzare i rating in possesso di Netflix (e non forniti ai partecipanti al contest) i candidati si renderebbero conto che si tratta di un film altamente divisivo: o lo ami o lo odi. E infatti il numero di rating ad una stella ed il numero di quelli a cinque stelle sono la maggioranza schiacciante. Creando un inconsueto vuoto nella numero di giudizi intermedi.

Ma c’è di peggio: anche gli amici che normalmente condividono gusti cinematografici analoghi, quelli il cui consiglio risulta quasi sempre condivisibile, sono per questo particolare titolo inutili

In altre parole, ci sono ottime probabilità che se chi ha i gusti come i nostri ama questo film a noi faccia orrore. Oppure lo ritenga orripilante quando noi ne siamo entusiasti.

Nessuno poi pare essere in grado di giustificare razionalmente il proprio giudizio

Successivamente si scoprirà che Napoleon non è l’unico titolo con questa caratteristica. Esiste infatti un piccolo sottoinsieme dei film in catalogo che pongono analoghe difficoltà, altri film divisivi. Tra questi i più famosi sono: Lost in Translation e Kill Bill: Volume 1.

Singular Value Decomposition

Nell’ideare il contest Netflix fece una felice scelta. Anziché isolare i singoli gruppi, ciascuno a inventare o individuare il suo algoritmo in proprio, decise di ospitare un forum per i partecipanti sul proprio sito.

L’idea della mente collettiva

Così i partecipanti furono spronati ad aiutarsi l’un l’altro, quasi una competizione fra amici, creando così una sorta di mente collettiva. Che ad un certo punto individuò in una tecnica statistica conosciuta col nome di Singular Value Decomposition o SVD, in italiano Decomposizione ai valori Singolari: uno strumento ottimale per il raggruppamento (clustering) dei titoli.

Forma bilineare

Il perché nessuno avesse fino a quel momento pensato di utilizzare questa tecnica lo possiamo capire facilmente leggendone la definizione sulla Wikipedia: “(SVD) permette di determinare se una forma bilineare reale possa essere equivalente ad un’altra tramite trasformazioni ortogonali indipendenti dei due spazi presi in considerazione

Clusterizzare i film in base a parametri trovati dal computer stesso

In ogni caso, questa tecnica permise di iniziare a clusterizzare i film in base a parametri trovati dal computer stesso. Questi cluster risultano a volte per noi intuitivi, come il raggruppamento dei titoli con un’alta quantità di romance presente nel titolo, ma a volte sorprendenti o oscuri. come il cluster comprendente film di azione, ma che non includono né autobus né Keanu Reeves.

A volte poi i cluster trovati sembrano totalmente assurdi, contenenti titoli senza alcuna apparente relazione, non la trama, né gli attori, i generi, le musiche. Appaiono a noi umani gruppi senza senso

Ma confrontati con i risultati reali risultano essere cluster di correlazione corretti, lasciando supporre che l’algoritmo sia in grado di trovare  delle connessioni profonde, subconsce, impossibili per noi da razionalizzare.
Il computer ha compreso forse qualcosa di noi che noi stessi non siamo in grado di capire.

Il rating dell’I.A. di Netflix

Ci siamo dilungati nel raccontare di questo contest; un po’ per il suo interesse specifico, un po’ perché risuonerà più avanti quando vedremo che la IA attribuisce un rating ai film anche in base a parametri senza nome. Non pesi per parametri tradizionali, quali quantità di contenuti thriller, spy, music, sex eccetera: solo parametri astratti.
Siamo  quasi pronti per tornare ai nostri algoritmi, e lo faremo nel prossimo articolo. (M.H.B. per NL)

 

 

 

printfriendly pdf button - Tv & OTT. 2006: Netflix mette una taglia di 1 mln $ su un algoritmo predittivo. Ma tutti i partecipanti al test si schiantano su un film