Strojové učenie, úloha 1

Riešenie odovzdať do: 8.4.2009

Bodový zisk: 0-5% (0% = odovzdané a odsúhlasené riešenie)

Na webstránke Google Trends možno získať dáta o množstve vyhľadávacích dotazov pre niektoré kľúčové slová od roku 2004 (dáta sa zobrazia v grafe, alebo ich je možné prijať v podobe CSV súborov). Údaje je možné získať za posledné roky, posledné mesiace alebo posledné týždne. Napríklad, pre slovo "ufo" vyzerá graf nasledovne:



Vašou úlohou v tomto cvičení bude na základe informácií o vyhľadávaní slov na serveri Google predikovať ďalšie návštevy mimozemšťanov, alebo iných javov - teda nájsť funkciu, ktorá dobre modeluje priebeh počtu vyhľadaní v čase. Presnejšie, vytvorte program, ktorý bude predpovedať množstvo dotazov na konkrétne kľúčové slovo v budúcnosti na základe trendov z minulosti.

  1. Napíšte program v jazyku Octave, ktorý načíta údaje z CSV súboru stiahnutého z Google Trends popisujúce jedno kľúčové slovo a zobrazí dáta pomocou grafu. (CSV súbor si môžete predspracovať, ak sa to hodí).

  2. Navrhnite a popíšte vhodnú sadu atribútov a cieľovú funkciu pre tento problém

  3. Úlohu budete riešiť pomocou generalizovanej lineárnej regresie. Navrhnite a popíšte vhodnú sadu bázových funkcií.

  4. Naimplementujte v jazyku Octave program (podľa vášho návrhu v častiach b a c), ktorý najskôr natrénuje genarlizovanú lineárnu funkcu z trénovacieho CSV súboru a potom pre zadané dátumy (opäť načítané zo súboru) predpovedá množstvo dotazov na ďalšie týždne.

  5. Navrhnite vhodný spôsob ako vyhodnotiť ako dobre váš program funguje na reálnych dátach. Použite dáta pre slová "full moon", "senate", "easter", "cemetery", "strawberry", "skiing", prípadne ďalšie podľa vášho výberu.

  6. [BONUS] Akým spôsobom možno v tomto prípade vyhodnotiť preučenie, resp. podučenie? Navrhnite a naimplementujte spôsob automatického výberu modelov (napr. regularizáciou), ktoré vám umožnia ovládať tradeoff medzi výchylkou a rozptylom (bias vs. variance).
Vaše riešenie bude obsahovať:
  1. Všetky zdrojové kódy programov, ktoré ste použili
  2. Popis vášho riešenia s grafickou dokumentáciou.
Riešenie sa odovzdáva elektronickou poštou s prílohou (ZIP) poslaním na adresu: petrovic@fmph.uniba.sk.