Ročníkové projekty, Bakalářské práce, Diplomové práce

Ladislav Peška, S208, peska@ksi.mff.cuni.cz

Obecně je možné se domluvit na jakémkoli rozumném tématu z oblastí doporučovacích systémů, učení preferencí uživatele, případně semantizace webu (můžete přijít s vlastním tématem).
Rozsah níže vypsaných témat je možno přizpůsobit typu práce, přiřazení je spíše orientační.


Návrh doporučovacího (eko)systému pro konkrétní doménu

Ročníkový projekt / bakalářská práce

Obecné téma - předpokládá se zpracování a implementace vhodného řešení doporučování/personalizaci v konkrétní, nové nebo něčím specifické doméně. Zájemce by měl mít ideálně s danou doménou zkušenosti, nebo mít možnost své poznatky uplatnit v praxi (např. nasazením v reálném prostředí).


Férovost a/nebo kalibrace v doporučovacích systémech

Diplomová práce

V poslední době jsou v oblasti doporučovacích systémů stále častěji skloňovány pojmy jako férovost doporučování (ale vůči čemu/komu?), filtering bubbles, nebo kalibrace doporučení vůči vícero různorodým zájmům uživatele. Tyto oblasti jsou dobrou příležitostí pro spíše teoretický výzkum zaměřený na doporučovací algoritmy, ale případně i prostorem pro praktické aplikace, srovnávací studie apod. Téma je spíše výzkumného než implementačního charakteru a vhodné spíše jako diplomová práce (v případě zájmu je třeba detailní zadání doladit po vzájemné konzultaci). Vycházet může například z našeho nedávného článku o férové agregaci vícero doporučovačů.


Doporučování v e-learningové doméně

Ve spolupráci s Vladislavem Severou z LernerOn jsme připravili dvě zadání z oblasti doporučování pro e-learningové uživatele.
První zadání je relativně klasické: doporučovací systém (primárně asi content-based, možná s hybridními prvky) pro doporučování e-learningových zdrojů. Jsou zde možné další rozšíření třeba o doporučování cesty (vícero zdrojů), které vedou k požadované cílové znalosti. K dispozici je poměrně široká škála CB dat a hlavní otázky práce pak budou jak je vhodně využít a jak přesně vlastně definovat úkol doporučovače.
Druhé zadání je poněkud více spekulativní (ale o to víc zajímavé) a souvisí se schopností systému doporučovat sekvence zdrojů. K tomu je nutné znát (naučit se) prerekvizitní, případně extension vztahy mezi jednotlivými zdroji, nebo alespoň proxy pro ohodnocení jejich náročnosti. Detailní popis obou zadání naleznete na tomto Googledocu.


Vizualizace výsledků pro image/video known item search task

Known item search (KIS) task je problém, kdy se snažíte nalézt známý obrázek nebo video ve velké datové kolekci. KIS systémy se potýkají především s následujícími problémy: jaké varianty dotazování jsou uživateli umožněny (keyword search, similarity search, sketch based,...), jak individuální dotazy vyhodnocovat a kombinovat a jak zobrazovat výsledky uživateli. Zamýšlená práce se týká především posledního problému (případně posledních dvou): jak zobrazovat výsledky uživateli. Předpokládá se návrh několika možných přístupů k zobrazování výsledků (statické vs. dynamické result planes, re-ranking, víceurovňové uspořádání, hierarchické zobrazení, SOM,...) a evaluace jejich jednotlivých parametrů (počet zobrazených výsledků, velikost náhledu, zobrazené informace...) na základě reálných tasků.
Tato práce by měla být implementačně spíše jednodušší, její těžiště je v provedení rozumné evaluace a případně i vytvoření teoretického pozadí pro vyhodnocování.


Využití audio/video informací při doporučování filmů

Cílem práce je prozkoumat možnosti zapojení audio/video signálů (trailers data) při doporučování filmů. Cílem práce je navrhnout vhodnou architekturu pro doporučování (předpokládá se nějaká varianta hybridních doporučovacích systémů se zapojením deep learningu pro zpracování A/V dat) a její otestování na zvoleném benchmarku - například MovieLens datasetu.
Práce je spíše experimentální, po implementační stránce bude vyžadovat zapojení, případně drobné úpravy existujících RS a DL technik. Težiště práce je tedy v návrhu vhodné archutektury a její evaluaci.


Recommender as a service

Softwarový projekt

Rozsáhlejší práce s cílem vytvořit službu, která bude provádět doporučovací služby pro 3rd party klienty. Předpokládá se několik modulů pro definici a sběr dat, jejich vyhodnocování a ukládání, jednotlivé RS algoritmy a jejich kombinaci.


Doporučovací systémy pro řídká data

Diplomová práce

Doporučovací systémy (doporučování objektů uživateli na základě jeho předchozích akcí) získaly v poslední dekádě velkou pozornost jak ve vědecké komunitě, tak i v komerčním prostředí. V současné literatuře jsou zmiňovány především algoritmy založené na kolaborativním filtrování (podobnost mezi uživateli), které jsou maximálně účinné v „hustých“ datasetech, kde je pro každého uživatele k dispozici dostatek dat a celkově existuje dostatečné množství uživatelů.

Tento ideální stav však v praxi často nebývá dosažen – obecně mluvíme o „cold-start“ problému. Řada webových projektů (např. menší e-commerce portály) má pouze omezenou cílovou skupinu, návštěvy na některých doménách bývají příliš krátké k vytvoření dostatečného množství zpětné vazby… I na jinak „hustých“ doménách je problémem doporučování pro nového uživatele, nebo nového objektu.

Cílem práce je zaměřit se na různé skupiny doporučovacích algoritmů a zjistit, jak se chovají ve zmíněných „krajních“ situacích, výsledky pak porovnat s dostupnou literaturou. Práce je svým charakterem především vědecká, částečně implementační. Dosažené výsledky by měly být publikovatelné na mezinárodních konferencích.

Zásady pro vypracování

Řešitel nejprve získá přehled v oblasti učení uživatelských preferencí a doporučovacích systémů, zaměří se především na skupiny collaborative, content-based a non-personalized doporučovacích algoritmů, metody pro získávání explicitní a implicitní zpětné vazby, jejich výhody, nevýhody a možnosti použití.

Řešitel na základě prostudované literatury vybere/navrhne/upraví vhodné doporučovací algoritmy a datasety, navrhne a implementuje SW pro jejich testování a provede experimenty. V implementační části bude kladen důraz především na modularitu, rozšiřitelnost a konfigurovatelnost systému. Vhodné je integrovat již existující frameworky / knihovny doporučovacích algoritmů. V experimentech bude kladen důraz především na validitu, opakovatelnost experimentů, zaměření na různé varianty „řídkosti“ dat, identifikování klíčových faktorů ovlivňujících jednotlivé algoritmy a srovnání s existující literaturou.


Temporální aspekty v doporučovacích systémech a učení uživatelských preferencí

Diplomová práce

Doporučovací systémy (doporučování objektů uživateli na základě jeho předchozích akcí) získaly v poslední dekádě velkou pozornost jak ve vědecké komunitě, tak i v komerčním prostředí. Základní kolaborativní model doporučování (založený na podobnosti uživatelů) byl rozšiřován různými směry, například pomocí content-based profilů uživatelů a objektů, nebo různých variant kontextu uživatele.

Temporální aspekty jsou jednou z variant kontextu – lze do nich zařadit například vývoj nabídky objektů a jejich atributů, krátkodobá či dlouhodobá změna preferencí uživatele, periodicita chování, průchodové sekvence atd.

Práce může být pojata různými způsoby: rozsáhlejší porovnání existujících metod na zajímavých / netradičních datasetech, návrh a srovnání vlastních či upravených doporučovacích metod se stávajícími, zpracování problematiky na konkrétní doméně atd. Mezi výsledky práce by však neměl chybět funkční software a experimenty na reálných datech.

Zásady pro vypracování

Řešitel nejprve získá přehled v oblasti učení uživatelských preferencí a doporučovacích systémů ([1], [2],…), zaměří se především na context-aware a temporal-aware doporučovací algoritmy ([3-9]…), jejich výhody, nevýhody a možnosti použití.

Řešitel na základě prostudované literatury vybere/navrhne/upraví vhodné doporučovací algoritmy, navrhne a implementuje SW pro jejich testování a provede experimenty na zvolených datasetech, případně v ostrém provozu. V implementační části bude kladen důraz především na modularitu, rozšiřitelnost a konfigurovatelnost systému. Vhodné je integrovat již existující frameworky / knihovny doporučovacích algoritmů. V experimentech bude kladen důraz především na validitu, opakovatelnost experimentů, využití různých temporálních aspektů, identifikování klíčových faktorů ovlivňujících výsledky jednotlivých algoritmů a srovnání s existující literaturou.


Deep learning pro doporučování založené na implicitní zpětné vazbě (obhájeno)

Doporučovací systémy (doporučování objektů uživateli na základě jeho předchozích akcí) získaly v poslední dekádě velkou pozornost jak ve vědecké komunitě, tak i v komerčním prostředí. V současné době probíhá na poli doporučovacích systémů a algoritmů “revoluce” v podobě zapojení různých deep learning algoritmů na tvorbě doporučení. Jedním ze slibných směrů vývoje je využití recurrent neural networks (RNN) pro tvorbu session-based, případně session-aware doporučení (doporučení na základě dat z právě probíhající session uživatele).

Cílem práce je prozkoumat možnosti rozšíření RNN, případně podobných architektur pro využití různorodé implicitní zpětné vazby od uživatele, případně informací o jednotlivých objektech při tvorbě doporučení. Práce je svým charakterem především vědecká, částečně implementační. Dosažené výsledky by měly být v případě zájmu publikovatelné na mezinárodních konferencích nebo ve vědeckých časopisech.

Zásady pro vypracování

Téma práce spojuje dvě zajímavé oblasti současného intenzivního výzkumu: deep learning a doporučovací systémy. Řešitel nejprve získá přehled v obou doménách, v deep learning se zaměří především na recurrent neural networks (RNN), v doporučovacích systémech pak na způsoby využití implicitní zpětné vazby.

Řešitel na základě prostudované literatury vybere/navrhne/upraví vhodné algoritmy (předpokládá se využití RNN, nebo odvozených architektur) pro zpracování doporučování na základě uživatelské implicitní zpětné vazby a případně content-based atributů objektů a provede jejich evaluaci. V implementační části bude kladen důraz především na modularitu, rozšiřitelnost a konfigurovatelnost systému. Vhodné je integrovat již existující frameworky / knihovny doporučovacích algoritmů. V experimentech bude kladen důraz především na validitu, opakovatelnost experimentů, evaluaci jednotlivých komponent algoritmů a srovnání s existující literaturou.


Vytváření umělých dat pro sestavování policejních fotorekognic (zadáno)

Cílem práce je automatické vytváření realistických portrétů umělých osob pro potřeby sestavování policejních fotorekognicí (případně s ohledem na požadované vlastnosti osob). Jedním z hlavních problémů při sestavování policejních fotorekognic je nedostatek dat (vhodných kandidátů, kteří jsou dostatečně podobní k podezřelému), především v případě podezřelých se specifickými vlastnostmi, které nejsou příliš obvyklé (třeba odstáté uši, specifické etnikum apod.). Jedním z možných řešení technické stránky problému je augumentace datové sady (tj. vytváření portrétů umělých osob). Pro obdobné problémy již existují použitelné modely (např. varianty GAN a auto-encoderů,...), které je třeba v práci vyzkoušet a upravit pro potřeby aktuálního tasku (předpokládá se fine-tunning pro vstupní datovou sadu, případně parametrizace požadovaných výstupů).
Práce je spíše náročnější s ohledem na znalost a schopnost použití odpovídajících ML/DL algoritmů a při průběhu řešení se předpokládá nutnost iterativních úprav navrženého modelu - proto je vhodnější spíše jako diplomová. Nicméně zadání se může v případě zájmu odpovídajícím způsobem redukovat i pro potřebu BP.


Hledání nových drug-target interakcí pomocí faktorizace matic (obhájeno)

Diplomová práce

"In silico" predikce interakcí mezi léčivy (drugs) a proteiny (targets) patří k zajímavým a v poslední době intenzivně zkoumaným aplikacím strojového učení. Motivace pochází z farmaceutického průmyslu, kde zavádění nových léčiv do oběhu je jak časově, tak i finančně velmi náročné. To vede k hledání nového využití pro již existující léčiva (tzv. drug repositioning), které může být v případě úspěchu mnohem levnější a rychlejší.

Jeden z přístupů k řešení problému "drug repositioning" je využít metod strojového učení, například různých variant faktorizace matic (viz. seznam literatury). Vzhledem k podobnosti na úrovni dat i hypotéz je tento problém blízce příbuzný s doporučovacími systémy a tím pádem je možno použít stejné či modifikované algoritmy. I když byla tato oblast již poměrně intenzivně zkoumána, stále zde zůstává prostor pro návrh / upravu metod založených na faktorizaci matic, případně pro komplexní porovnání již existujících metod.


Fashion Recommender System (obhájeno)

Diplomová práce

Diplomová nebo bakalářská práce se zaměřením na doporučování módy, nebo jiných produktů s netriviální vizuální složkou. Očekává se použití některé varianty DCNN sítí, případně jejich přetrénování. Zajímavým problémem je doporučování setů oblečení, kde je třeba kombinovat jak vizuální, tak klasické content-based deskriptory.
Detailní zadání bude doplněno.


Systém pro doporučování kandidátů do policejní fotorekognice (zadáno)

Ročníkový projekt / bakalářská práce

Zadání navazuje na aktuálně řešený projekt ve spolupráci s katedrou psychologie na FF UK. Cílem práce je vytvořit aplikaci, která usnadní práci policejním technikům pri sestavování férových fotorekognic (podezřelá osoba se nesmí příliš lišit od ostatních osob v rekognici). Předpokládá se využití/přetrénování nějaké konvoluční neuronové sítě a případná kombinace s textovým popisem pachatele. Zajímavým rozšířením by bylo vytváření upravených fotografií s cílem zvýšit podobnost osob ve fotorekognici.
Detailní zadání bude doplněno.


Framework pro podporu online evaluace doporučovacích systémů (obhájeno)

Ročníkový projekt / bakalářská práce

Doporučovací systémy (doporučování objektů uživateli na základě jeho předchozích akcí) získaly v poslední dekádě velkou pozornost jak ve vědecké komunitě, tak i v komerčním prostředí. Bohužel, většina experimentů s doporučovacími algoritmy je prováděna off-line pouze na základě dříve získaných dat a řada aspektů algoritmů (např. novelty, context of choice, trivial recommendations…) tak nemůže být brána v potaz.

Cílem práce je vytvořit framework webové aplikace, který usnadní on-line porovnávání doporučovacích algoritmů nad různými doménami. Zajímavé problémy by mohla přinést integrace knihoven doporučovacích algoritmů, rozumně automatizovaný import/přechod na jinou doménu, návrh prezentační vrstvy a komunikace mezi jednotlivými součástmi aplikace.


Doporučovací systém pro knihy založený na Linked Open Datech (obhájeno)

Ročníkový projekt / bakalářská práce

Sémantizace webu je proces zpřístupňování informací na webu ve strojově čitelné podobě. Jedním z jeho nejúspěšnějších součástí je soubor veřejně dostupných, propojených datasetů, tzv. Linked Open Data Cloud. Linked Open Datasety mohou být neocenitelným zdrojem informací pro nejrůznější aplikace, například pro Content-based doporučovací systémy.

Cílem práce je vytvořit webovou aplikaci, která využívá některé dostupné datasety s informacemi o knihách (např. DBPedia, OpenLibrary, British National Library, Hungarian National Library,…). Informace prezentuje uživateli a na základě jeho zpětné vazby (návštěvy, hodnocení…) mu doporučí další zajímavé tituly.

Zajímavé problémy by mohly být integrace více zdrojů dat, integrace dat z různých jazykových mutací, poloautomatické překlady, rozumný návrh updatování informací, návrh a implementace vhodných doporučovacích algoritmů, případně jejich testování…


Doporučená literatura