Základy strojového učení

Post on 21-Jan-2018

1,856 views 0 download

transcript

Základy strojového učení

DataRestart 2016

Michal Illich

Michal Illich

Obsah

1. Kdo používá strojové učení?

2. Kde ho můžete použít vy

3a. Jaké modely používat?

3b. Dva jednoduché příklady

4. Co s tím děláme my

5. Shrnutí

Kdo používá produkty strojového učení?

Kde se používá na webu - I

Kde se používá na webu - II

Kde se používá na webu - III

Mimo web

Siri

OCR

Self-driving cars

Kde ho můžete použít vy?

Ema má e-shop...

Skladovost

● Které zboží mám nakoupit na sklad?

● Cíl:– Minimalizace ceny skladovaného zboží

– Při maximalizace prodejů

Cenotvorba

● Jakou mám nastavit marži?(u konkrétního výrobku)

● Cíl:– Maximální celkový zisk

(přičemž nižší cena znamená více prodejů, ale s nižší marží...)

Parametry zboží

● Mám desítky tisíc produktů v e-shopu, jak k nim doplnit informace (technické specifikace)?

● Cíl:– Informovat zákazníka a umožnit vyhledávání

– Ale minimalizovat náklady na získání informací

Doporučování

● Zákazník si koupil X, jaká Y mu nabídnout?

● Cíl:– Prodat více (nebo častěji)

Jaké modely se používají?

Co je to vlastně model?

Krabička● Má vstupy● Má výstup(y)● a „uvnitř je chytrá“

Jak model vznikne?

Učením!

1. Vyberete algoritmus (a jeho parametry)

2. Natrénujete model (na minulých datech)

3. Pak jej používáte (na nových datech)

Lineární regrese

1. Každý vstup má přiřazenou váhu

2. Vstupy prostě vynásobím váhou.

A všechno to sečtu.

3. A mám výsledek.

Lineární regrese - příklad

Marže = 3

– 0.2 * PočetKonkurentůCoToMajíSkladem

– 0.3 * PočetKonkurentůCoToMajíLevnější

+ 0.8 * JeToNovinka

+ 0.5 * MámSklademPosledníKus

Lineární regrese - pokračování

Co udělá strojové učení lépe než člověk?● zanalyzuje obrovská data● určí koeficienty „matematicky optimálně“● vybere ty správné vstupy● může to vše dělat každou noc automaticky

Rozhodovací stromy

Neuronová síť

Neuronová síť

Velmi obecná- využitelná pro mnoho různých problémů- špičkové výsledky zejména pro obraz a zvuk

Nelineární

Deep learning- obrovský trend- viz mj. i moje přednáška

Hodně „magie“- těžká na interpretaci- vyžaduje zkušenosti s nastavením

Kde si s ním hrajeme my

Magictable

Brandiozo

Golem

a jeden neveřejný projekt

Hledáme chyby...

Případně data rovnou dodáme

Robot to udělá- levněji než lidé- rychleji a na větších datech- stejně přesně nebo lépe

Člověk zůstane v roli dohledu/učitele,nedělá už rutinní práci.

Příklad, jak strojové učení používáme

Jak jej používáme – vysvětlení

1. Ručně navržené algoritmy spárují zdroje Konkrétně parametry z různých zdrojů (e-shopů, webů)

2. Strojové učení umí předpovědět které spárování je správně a které nejspíš chybně. S přesností 97 %

3. Chybná/podezřelá spárování potlačíme Dáme jim nižší váhu v souhrnném reportu

Open source nástroje

Neuronové sítě:

theano, keras, tensorflow, cuda-convnet

Další algoritmy:

gbm, libsvm, vowpal wabbit, sofia-kmeans, gensim

Nástroje s GUI:

weka, orange, rapid miner

Cloudové služby (proprietární):

Amazon, Azure, Google, BigML

Závěr

1/2

Mít data nestačí. Používejte je.kreslit barevné grafy je základ, nikoliv plné využití dat

Strojové učení.nechte stroje samotné najít si vztahy v datech

2/2

Díky!

michal@illich.cz @michalillich

MagicTable.com(vyplňte svůj mail, máte-li zájem)

Appendix

Zdroje obrázků:http://www.edureka.co/blog/decision-trees/