Spam IV

  • Varování před přílišnou podobností kódů
  • Demonstrace problému přeučení
  • Konzultace problémů a práce na úloze Spam filter
  • CÍL: dovést všechny studenty do stavu, v němž proběhnou unit testy ke krokům 2, 3, 4 a příp. 5.

Přeučení

Představme si, že máme učicí se filtr, který funguje následovně. Při trénování si pro všechny trénovací emaily zapamatuje začátek řetězce zprávy o délce N a třídu, do níž daný email patří. Při hodnocení nové zprávy spočítá, s kolika spamy a s kolika hamy se shoduje začátek nové zprávy, a zaklasifikuje zprávu podle majority. Parametr N představující délku fragmentů, které si filtr pamatuje, nám umožňuje filtr ladit.

  • Jak se chová míra kvality měřená na trénovacích a testovacích datech v závislosti na změně parametru N?
  • Jaká hodnota N je pro tento filtr a daná data optimální? Jaké hledisko vlastně použijeme k posouzení optimality?

Hádanka

Programovací tipy

Projděte si sekci krok 6: programovací tipy uvedenou v programu prací na úloze spam. Obsahuje (neúplný) výčet tříd, metod a funkcí jazyka Python, které by se vám mohly při vytváření spam filtru hodit.

Konzultace

Řešení problémů s vašimi filtry a unit testy.

  • Neprochází-li vaše kódy přes unit testy ke krokům 2 nebo 3, rozhodně kontaktujte vyučujícího a v diskusi s ním si vyjasněte, kde je chyba a jak je třeba pokračovat!
  • Neprochází-li vaše třída TrainingCorpus přes unit test ke kroku 5 a rádi byste vypracovali filtr, který se umí učit, opět kontaktujte vyučujícího!
  • V čase zbývajícím do odevzdání byste měli pracovat už jen na vlastním filtru, všechny podpůrné třídy a funkce byste již měli mít hotové! Využijte příležitosti - vyučující je na cvičeních pro vás!

Domácí úkol

Zanedlouho je termín pro odevzdání 2. části úlohy Spam filtr! Postupujte podle specifikací. Termín najdete v odevzdávacím systému.

Programování

courses/b4b33rph/cviceni/program_po_tydnech/tyden_11.txt · Last modified: 2018/12/20 10:55 by xposik