Uczenie maszynowe:
zasady realizacji projektu


Zasady ogólne

Wszystkie przewidywane tematy projektów obejmują implementację pewnych algorytmów uczenia się, na ogół spośród omawianych na wykładzie (niekiedy z pewnymi modyfikacjami do samodzielnego opracowania), oraz przeprowadzenie badań eksperymentalnych mających na celu ocenę ich właściwości. Proponowane tematy przewidywane są do realizacji dwuosobowej. W uzasadnionych przypadkach będzie możliwe zaproponowanie własnego tematu projektu.

Wymagania i kryteria oceniania

Podane niżej zasady mają na celu zapewnienie sprawnej realizacji projektu i procesu oceniania, a nie wprowadzanie nadmiernego rygoryzmu. W indywidualnych uzasadnionych przypadkach niektóre z tych zasad mogą zostać złagodzone. Zdarza się też, że wynikające z ogólnych zasad terminy są ze względu na specyficzny układ kalendarza semestru przesuwane o kilka dni, jednak są to wyłącznie przesunęcia w przód (wydłużenie dostępnego czasu).

W przypadku, gdy projekt prowadzi inny prowadzący, może on uszczegółowić bądź zmodyfikowac niektóre zapisane tu warunki dla osób realizujących projekt pod jego kierunkiem. Osoby te powinny zapoznać się z przedstawionymi przez niego informacjami.

  1. Projekt polega na implementacji lub modyfikacji istniejącej implementacji pewnego algorytmu uczenia się oraz przeprowadzeniu eksperymentalnego badania jego właściwości, z użyciem dowolnego języka programowania (o ile temat projektu nie określa inaczej), przy czym zakres ewentualnego wykorzystania funkcji z dostępnych bibliotek wymaga uzgodnienia.
  2. Wybór tematu projektu musi nastąpić do końca piątego tygodnia semestru. Niedokonanie wyboru tematu w tym terminie może być traktowane jako rezygnacja z wykonywania projektu.
  3. Do końca siódmego tygodnia semestru należy przedstawić wstępne założenia obejmujące:
    1. szczegółową interpretację tematu projektu,
    2. opis algorytmów, które będą implementowane i badane,
    3. określenie środowiska implementacji (język programowania, biblioteki),
    4. plan eksperymentów,
    5. otwarte kwestie wymagające późniejszego rozwiązania (wraz z wyjaśnieniem powodów, dla których ich rozwiązanie jest odłożone na później).
  4. Do końca przedostatniego tygodnia zajęć w semestrze należy dostarczyć kod źródłowy opracowanego oprogramowania w formie elektronicznej, dokumentację kodu źródłowego w formie elektronicznej oraz dokumentację projektu zawierającą w poszerzonej i w razie potrzeby zmodyfikowanej postaci elementy wymienione wyżej dla założeń wstępnych oraz dodatkowo:
    1. uzyskane wyniki,
    2. dyskusję wyników i wnioski.
  5. Na ocenę z projektu (100%) składają się:
    1. ocena założeń wstępnych (20%),
    2. ocena implementacji (50%),
    3. ocena badań eksperymentalnych i dokumentacji (30%).
  6. Opóźnienie w oddaniu założeń wstępnych nie przekraczające jednego tygodnia powoduje przemnożenie uzyskanej oceny za założenia wstępne przez współczynnik 0.8. Po upływie jednego tygodnia od terminu założenia nie będą przyjmowane do oceny, a ocena późniejszych elementów projektu będzie automatycznie mnożona przez współczynnik 0.8.
  7. Po zakończeniu zajęć w semestrze kod i dokumentacja nie będą przyjmowane, z wyjątkiem uzasadnionych przypadków losowych. Opóźnienie w oddaniu któregokolwiek z produktów końcowych projektu (kodu źródłowego lub dokumentacji) nieprzekraczające jednego tygodnia powoduje przemnożenie uzyskanych ocen za realizację projektu przez współczynnik 0.8 (w przypadku braku założeń wstępnych łączny mnożnik wyniesie 0.8*0.8=0.64).
  8. Przy ustalaniu numerów tygodni, o których mowa wyżej, uwzględnia się wyłącznie tygodnie, w których zgodnie z obowiązującym kalendarzem zajęć odbywa się wykład (tzn. pomijane są tygodnie, w których dzień wykładu jest dniem wolnym od zajęć dydaktycznych lub w dniu wykładu realizowane są zajęcia według rozkładu z innego dnia).

Strona przedmiotu UMA

Paweł Cichosz