Kolaborativní filtrování , kolaborativní filtrování je jednou z metod pro konstrukci predikcí ( doporučení) v systémech doporučení , která využívá známé preference (odhady) skupiny uživatelů k predikci neznámých preferencí jiného uživatele. [1] Jeho základním předpokladem je, že ti, kdo v minulosti hodnotili věci stejným způsobem, mají tendenci dávat podobné hodnoty jiným věcem v budoucnosti. [1] Například pomocí kolaborativního filtrování je hudební aplikace schopna předpovědět, jaký druh hudby se uživateli bude líbit , a to na základě neúplného seznamu jeho preferencí (to se mi líbí a nelíbí). [2] Prognózy jsou vytvářeny individuálně pro každého uživatele, i když použité informace jsou shromažďovány od mnoha účastníků. Tímto způsobem se kolaborativní filtrování liší od jednoduššího přístupu , který udává průměrné skóre pro každý objekt zájmu, například na základě počtu hlasů pro něj odevzdaných. Výzkum v této oblasti je v naší době aktivně prováděn, což je také způsobeno přítomností nevyřešených problémů v kolaborativním filtrování.
Ve věku informační exploze jsou metody personalizovaného doporučení, jako je kolaborativní filtrování, velmi užitečné, protože počet objektů i v jedné kategorii (jako jsou filmy, hudba, knihy, zprávy, webové stránky) se stal tak velkým, že jediný člověk není můžete si je všechny prohlédnout a vybrat ty správné.
Kolaborativní filtrační systémy obvykle používají dvoustupňové schéma [1] :
Algoritmus popsaný výše je postaven s ohledem na uživatele systému.
Existuje také alternativní algoritmus, vynalezený Amazonem [3] , postavený s ohledem na položky (produkty) v systému. Tento algoritmus zahrnuje následující kroky:
Jako příklad můžete vidět rodinu algoritmů Slope One
Existuje také další forma kolaborativního filtrování, která se opírá o implicitní pozorování normálního chování uživatele (na rozdíl od explicitního pozorování, které shromažďuje hodnocení uživatelů). V těchto systémech pozorujete, co daný uživatel dělal a co dělali ostatní (jakou hudbu poslouchali, jaká videa sledovali, jaké skladby si zakoupili), a pomocí dat předpovídáte chování uživatele v budoucnu nebo předpovídáte, co pokud existuje určitá možnost. Tyto předpovědi musí být provedeny v souladu s obchodní logikou , protože je zbytečné například někomu nabízet ke koupi hudebního souboru, který již má.
Při vytváření doporučovacích systémů se používají 2 hlavní metody – kolaborativní filtrování a doporučení založená na obsahu. Také v praxi se používá hybridní metoda doporučení stavby, která zahrnuje směs výše uvedených metod. Kolaborativní filtrování se také dělí na 3 hlavní přístupy (typy) [4] :
Tento přístup je historicky první v kolaborativním filtrování a používá se v mnoha systémech doporučování. V tomto přístupu je pro aktivního uživatele vybrána podskupina jemu podobných uživatelů. Kombinace vah a skóre podskupin se používá k predikci skóre aktivních uživatelů [5] . Tento přístup má následující hlavní kroky:
Tento přístup poskytuje doporučení měřením parametrů statistických modelů pro hodnocení uživatelů vytvořených pomocí metod, jako jsou Bayesovské sítě , shlukování , latentní sémantické modely , jako je dekompozice singulárních hodnot , pravděpodobnostní latentní sémantická analýza , latentní Dirichletova distribuce a rozhodovací modely založené na Markovovi . [5] Modely jsou vyvíjeny pomocí dolování dat, algoritmů strojového učení k nalezení vzorů založených na trénovacích datech. Počet parametrů v modelu lze snížit v závislosti na typu pomocí metody hlavních komponent .
Tento přístup je složitější a poskytuje přesnější předpovědi, protože pomáhá odhalit latentní faktory, které vysvětlují pozorovaná skóre. [7]
Tento přístup má řadu výhod. Zvládá řídké matice lépe než přístup založený na sousedství, což zase pomáhá se škálovatelností velkých datových sad.
Nevýhodou tohoto přístupu je „nákladná“ tvorba modelu [8] . Mezi přesností a velikostí modelu existuje kompromis, protože kvůli zmenšení modelu může dojít ke ztrátě užitečných informací.
Tento přístup kombinuje přístup založený na sousedství a přístup založený na modelu. Hybridní přístup je nejběžnější při vývoji doporučovacích systémů pro komerční weby, protože pomáhá překonat omezení původního původního přístupu (založeného na sousedství) a zlepšit kvalitu predikcí. Tento přístup také překonává problém řídkosti dat a ztráty informací. Tento přístup je však složitý a nákladný na implementaci a aplikaci. [9]
Většina komerčních doporučovacích systémů je zpravidla založena na velkém množství dat (produktů), zatímco většina uživatelů produkty nehodnotí. V důsledku toho je matice položky-uživatel velmi velká a řídká, což představuje problémy při výpočtu doporučení. Tento problém je zvláště akutní u nových, nově vznikajících systémů. [4] Také řídkost dat zhoršuje problém se studeným startem .
S nárůstem počtu uživatelů v systému se objevuje problém škálovatelnosti. Například s 10 miliony zákazníků a milionem položek je algoritmus kolaborativního filtrování se stejnou složitostí již příliš složitý na výpočet. Mnoho systémů také musí okamžitě reagovat na online požadavky všech uživatelů, bez ohledu na jejich historii nákupů a hodnocení, což vyžaduje ještě větší škálovatelnost.
Nové položky nebo uživatelé jsou pro doporučující systémy velkým problémem. Přístup založený na obsahu pomáhá částečně vyřešit problém, protože při zařazování nových položek do doporučení uživatelům spoléhá spíše na atributy než na hodnocení. Problém poskytování doporučení pro nového uživatele je však obtížněji řešitelný. [čtyři]
Synonymie je tendence k tomu, aby podobné a stejné předměty měly různá jména. Většina doporučujících systémů není schopna detekovat tato skrytá spojení, a proto s těmito položkami zachází jako s odlišnými. Například „filmy pro děti“ a „film pro děti“ patří do stejného žánru, ale systém je vnímá jako odlišné. [5]
V systémech doporučování, kde může kdokoli hodnotit, mohou lidé hodnotit své předměty pozitivně a své konkurenty špatně. Také doporučovací systémy se staly velkým vlivem na tržby a zisky, protože byly široce používány na komerčních stránkách. To má za následek, že se bezohlední prodejci pokoušejí podvodně hodnotit své produkty a snižovat hodnocení svých konkurentů. [čtyři]
Kolaborativní filtrování bylo původně navrženo pro zvýšení rozmanitosti, aby uživatelé mohli objevovat nové produkty z nekonečného množství. Některé algoritmy, zejména ty založené na prodeji a hodnocení, však vytvářejí velmi obtížné podmínky pro propagaci nových a málo známých produktů, protože jsou nahrazovány oblíbenými produkty, které jsou na trhu již delší dobu. To zase jen zvyšuje efekt „bohatší, bohatší“ a vede k menší rozmanitosti. [deset]
„Bílé vrány“ jsou uživatelé, jejichž názor se neustále neshoduje s většinou ostatních. Vzhledem k jejich jedinečné chuti je nemožné jim něco doporučit. Takoví lidé však mají problémy získat doporučení v reálném životě, takže hledání řešení tohoto problému v současné době neprobíhá. [5]
Kolaborativní filtrování je široce používáno v komerčních službách a sociálních sítích. Prvním případem použití je vytvoření doporučení na zajímavé a oblíbené informace na základě „hlasů“ komunity. Služby jako Reddit a Digg jsou typickými příklady systémů, které používají kolaborativní filtrovací algoritmy.
Další oblastí použití je vytváření personalizovaných doporučení pro uživatele, na základě jeho předchozí aktivity a údajů o preferencích jiných podobných uživatelů. Tuto implementaci lze nalézt na stránkách jako YouTube , Last.fm a Amazon [3] , stejně jako v geolokačních službách jako Gvidi a Foursquare .
Systémy doporučení | |
---|---|
Koncepty |
|
Metody a otázky |
|
Implementace |
|
Výzkum |
|