211service.com
Výzva 1 milion $ Netflix Challenge
Začátkem tohoto týdne Netflix, online půjčovna filmů, oznámil, že udělí ceny 1 milion dolarů komukoli, kdo dokáže přijít s algoritmem, který zlepší přesnost služby doporučování filmů.

Systém hodnocení hvězdičkami Netflix pomáhá určit přizpůsobená doporučení filmů. Nyní společnost hledá externí vývojáře, aby tato doporučení vylepšili.
Společnost tak vyzývá výzkumníky, kteří se specializují na strojové učení – typ umělé inteligence používaný k vytváření systémů, které doporučují hudbu, knihy a filmy. Soutěžící, který dokáže do roku 2011 zvýšit přesnost systému doporučení Netflix, který se nazývá Cinematch, o 10 procent, vyhraje cenu.
Systémy doporučení, jako jsou ty, které používají Netflix, Amazon a další weboví prodejci, jsou založeny na principu, že pokud si dva lidé užívají stejný produkt, pravděpodobně budou mít společné i další oblíbené položky.
Ale za tímto jednoduchým předpokladem je složitý algoritmus, který zahrnuje miliony uživatelských hodnocení, desítky tisíc položek a neustále se měnící vztahy mezi preferencemi uživatelů.
Aby se tato složitost vypořádala, jsou algoritmy pro systémy doporučení trénovány na obrovských souborech dat. Jedna datová sada používaná v systému Netflix obsahuje hodnocení hvězdičkami – jedna až pět –, která zákazníci Netflixu přidělují filmům. Pomocí těchto počátečních informací jsou dobré algoritmy schopny předvídat budoucí hodnocení, a proto mohou navrhnout další filmy, které by se jednotlivci mohly líbit.
Vzhledem k tomu, že přístup k takovému souboru dat je zásadní pro zlepšení kvality jejích systémů doporučení, společnost podle Jima Bennetta, viceprezidenta systémů doporučení ve společnosti Netflix, také vydala 100 milionů doporučení – zbavených jakýchkoli osobních identifikačních informací.
Tento týden jsme mluvili s Bennettem o tom, jak fungují systémy doporučení – a o výzvách při vytváření lepšího.
Recenze technologie: Před vytvořením lepšího systému doporučení by bylo užitečné porozumět vašemu současnému přístupu. Jak Cinematch funguje?
Jim Bennett: Nejprve nasbíráte 100 milionů uživatelských hodnocení pro zhruba 18 000 filmů. Vezměte si libovolné dva filmy a najděte lidi, kteří oba ohodnotili. Pak se podívejte, zda lidé, kteří hodnotí jeden z filmů vysoce, hodnotí druhý vysoce, zda se jim jeden líbil a druhý ne, nebo zda se jim nelíbil ani jeden z filmů. Na základě jejich hodnocení Cinematch zjistí, zda mezi těmito lidmi existuje korelace. Nyní to udělejte pro všechny možné dvojice 65 000 filmů.
TR: Cinematch by mi tedy doporučil filmy na základě hodnocení lidí, kteří filmy hodnotili stejně jako já. Funguje tato metoda pro všechny filmy na Netflixu?
JB: Mnoho skutečně obskurních disků, například DVD Jak sekat trávník, nemá příliš mnoho hodnocení a tato metoda také nefunguje. U filmů s velkým počtem hodnocení si vedete podstatně dobře. Ale aby to fungovalo, je potřeba hodně ladit data, protože lidé mohou mít někdy zajímavé vzorce hodnocení.
TR: Jako co?
JB: Mnoho lidí například hodnotí film pouze jednou nebo pěti hvězdičkami. A jsou někteří lidé, kteří prostě všechno hodnotí třemi hvězdičkami. To, co hledáte, je zajímavé rozšíření názorů, protože se snažíte zachytit korelace. To je jádro motoru.
TR: Jak kvantitativně měříte přesnost vašeho systému?
JB: Vyškolili jsme Cinematch na 100 milionech hodnocení a požádali jsme ho, aby předpověděl, jaké budou další 3 miliony. Porovnali jsme naše se skutečnými odpověďmi. Děláme to každý den. Dostáváme asi 2 miliony hodnocení denně a sledujeme denní výkyvy systému. Očekáváme, že budeme měřit příspěvky do soutěže [stejným způsobem]. Skutečný soubor údajů o cenách je 103 milionů hodnocení, ale vydali jsme pouze 100 milionů z nich.
TR: Aby bylo možné vyhrát cenu 1 milion dolarů, musí nový algoritmus zlepšit přesnost doporučení o 10 procent oproti Cinematch. Každý rok také odměňujete odměnu 50 000 $ za pokrok za algoritmus, který vykazuje největší zlepšení oproti nejlepšímu algoritmu v předchozím roce, alespoň o 1 procento. Co tato procentuální zlepšení znamenají pro zákazníka Netflixu?
JB: Pokud přejdete na webovou stránku a ohodnotíte za nás 100 filmů, červené hvězdičky zobrazené pod každým filmem jsou přizpůsobeny pro vás. Tato hodnocení používáme k úpravě predikce od průměrného doporučení podle vašeho vkusu. Například tříprocentní rozdíl může znamenat rozdíl jedné čtvrtiny hvězdy. Máme miliony lidí, kteří hodnotí miliony DVD, a tento čtvrthvězdičkový rozdíl nám pomáhá seřadit seznam. Doporučení jednotlivých filmů se nemusí o tolik zlepšit, ale celkově je soubor doporučených filmů velmi odlišný. Trochu pohněte bitevní lodí a je to obrovský rozdíl.
TR: Proč je tak těžké zlepšovat systémy doporučení?
JB: Jedním z důvodů je, že neexistují žádné datové sady. Mnoho aplikací strojového učení vyžaduje poměrně rozsáhlé datové sady, které snadno obsahují miliony datových bodů. Existuje mnoho různých přístupů k řešení problému, ale všechny potřebují velké datové sady. A stejně jako u mnoha datových sad, jakmile aplikujeme techniky na tyto datové sady, není kam jít.
TR: Takže hledáte algoritmus, který řeší problém zcela jiným způsobem než Cinematch?
JB: Opravit. Pokud víme, v této oblasti existuje mnoho dobrých nápadů. Jen je nemůžeme všechny otestovat. Víme, že existují lidé, kteří mají v literatuře opravdu navrch a znají jemnosti a nevýhody [systémů doporučení], a opravdu bychom rádi věděli, které z nich by byly lepší.
TR: Jaké jsou některé přístupy diskutované v literatuře, které by mohly fungovat, ale ještě nebyly testovány s doporučeními filmů?
JB: Je těžké to říci. Byl tam článek Věda před několika měsíci [28. července 2006], která využívala zajímavou kombinaci dvou typů neuronových sítí [výpočetní metoda, která třídí data podobně jako lidský mozek]. Jedna neuronová síť dohlíží na strojové učení a druhá toto učení řídí. V Netflixu se díváme na korelace mezi hodnoceními, a to je lineární model. Ne všechny znalosti mohou být reprezentovány lineární kombinací znaků. Tento konkrétní model v Věda používá nelineární přístup. Myslím, že ta technika by mohla být docela dobrá.
TR: Existují na Netflixu nějaké další naléhavé technické výzvy, které by se daly vyřešit nabídkou ceny?
JB: Nechtěl bych spekulovat o dalších soutěžích. Existují další technické problémy? Absolutně. Kromě systémových problémů, které spočívají v udržování doporučovacích motorů v chodu s rostoucí zákaznickou základnou, máme v rámci společnosti také obrovské množství výzev, jako je snaha dodávat lidem dva miliony disků denně. A čekají nás zajímavé výzvy, když se připravujeme na svět stahování [kde si lidé mohou stahovat filmy přes internet]. Společnost je plná obrovských výzev.