Warning
This page is located in archive.

Spam filtr

Filtrování spamu je velmi praktická úloha s velkým reálným dopadem. Je to představitel klasifikačního problému, s nimiž se setkáváme ve strojovém učení, a lze na ní ukázat jejich typické rysy. Vyžaduje práci s nestrukturovanými daty (textem). Lze ji řešit velkou škálou metod - od jednoduchých až po velmi propracované.

Přínos úlohy pro studenty

  • Studenti si procvičí objektové programování v Pythonu a práci s nestrukturovanými daty (textem).
  • Studenti si vyzkouší řešení složitější úlohy, která vyžaduje spolupráci několika tříd.
  • Studenti se seznámí s prvky automatického testování softwaru - s unit testy.
  • Studenti se na praktické úloze seznámí se základními principy strojového učení (jak ohodnotit kvallitu filtru, trénovací/testovací data, …).
  • Studenti zažijí pocit, že zvládnou vyřešit netriviální úlohu.
  • V závěrečném srovnání studenti zjistí, zda lépe fungují člověkem navržené filtry nebo filtry schopné sami se učit z dat.

Cíle úlohy

Vaším prvořadým úkolem v této úloze nebude vytvoření co nejkvalitnějšího spam filtru, jak by se mohlo zdát. Metody, které by vám v tom mohly pomoci, ještě neznáte a dozvíte se o nich v dalším průběhu studia. Vaším úkolem je především

  • pochopit, oč v této úloze jde, úlohu analyzovat a dekomponovat,
  • vytvořit si sadu funkcí či tříd v jazyce Python, které vám umožní snadno použít spam filtr (až nějaký budete mít) a vyhodnotit jeho kvalitu, příp. porovnat dva a více spam filtrů, a
  • vytvořit jednoduchý (třeba i velmi primitivní) spam filtr, který bude možno použít v rámci vytvořeného “frameworku”.
courses/b4b33rph/cviceni/spam/start.txt · Last modified: 2018/07/17 13:25 (external edit)