Principy strojového učení

Dokončeno

Strojové učení je programovací technika používaná k vytváření prediktivních modelů. Na rozdíl od typického programování, ve kterém se kód používá k popisu konkrétních kroků k vytvoření výsledku; strojové učení spoléhá na použití algoritmu k iterativnímu zkoumání vztahu mezi funkcemi datové entity a popiskem , který by výsledný model měl předpovědět. Algoritmy strojového učení jsou založené na teorii pravděpodobnosti a statistikách a spoléhají na velké objemy dat, pomocí kterých se model vytrénuje.

Na zjednodušené úrovni je model strojového učení funkcí , která přebírá funkce pozorované entity (její charakteristiky) a provádí výpočet, který vrátí predikovaný popisek. Obecně je běžné odkazovat na funkce jako x a predikovaný popisek jako y, takže v podstatě model strojového učení je funkce f ve výrazu y = f(x).

Konkrétní operace, kterou funkce provádí s funkcemi, aby vypočítala hodnotu popisku, je určena algoritmem použitým k trénování modelu.

Typy strojového učení

Obecně řečeno, existují dva běžné druhy strojového učení:

  • Strojové učení pod dohledem , ve kterém je model trénován pomocí dat, která obsahují známé hodnoty popisků (takže algoritmus používá existující data k navázání vztahu mezi x a y, což vede k funkci, která se dá použít na x k výpočtu y).
  • Strojové učení bez dohledu, ve kterém je model trénován pouze pomocí hodnot funkcí (x) a pozorování skupin (nebo shluků) s podobnými funkcemi.

Strojové učení pod dohledem

Tento modul se zaměřuje na strojové učení pod dohledem, protože se jedná o nejběžnější scénář. V široké definici strojového učení pod dohledem existují dva běžné druhy algoritmu strojového učení:

  • Regresní algoritmy, ve kterých je popisek číselnou hodnotou, například cena, teplota, částka nebo jiná hodnota, kterou je možné měřit. Regresní algoritmy vytvářejí modely, ve kterých funkce (f) pracuje s vlastnostmi (x) k výpočtu číselné hodnoty popisku (y).

    Například regresní algoritmus lze použít k trénování modelu, který predikuje očekávaný počet zmrzlin prodaných v parku v daném dni na základě funkcí, jako je měsíc v roce, den v týdnu, teplota, vlhkost atd.

  • Klasifikační algoritmy, ve kterých je popisek samostatnou kategorií (nebo třídou). Klasifikační algoritmy vytvářejí modely, ve kterých funkce (f) pracuje s funkcemi (x) k výpočtu hodnoty pravděpodobnosti pro každou možnou třídu a vrátí popisek (y) pro třídu s nejvyšší pravděpodobností.

    Klasifikační algoritmus lze například použít k trénování modelu, který předpovídá, jestli má pacient cukrovku na základě funkcí, jako je hladina inzulínu v krvi, hmotnost, výška, věk atd. Klasifikační model, který identifikuje jednu ze dvou možných tříd (například true nebo false), je příkladem binární klasifikace. Algoritmy, které predikují pravděpodobnost pro více než dvě třídy (například rozdíly mezi pacienty bez cukrovky, diabetes typu 1 nebo diabetes typu 2), se používají pro vícetřídní klasifikaci.

Strojové učení bez dohledu

Nejběžnější formou učení bez supervize je clustering, ve kterém jsou funkce datových případů považovány za vektor bodů v multidimenzionálním prostoru. Cílem algoritmu clusteringu je definovat clustery, které seskupují body tak, aby byly případy s podobnými funkcemi blízko sebe, ale clustery jsou jasně oddělené od sebe.

Clustering je užitečný, když potřebujete definovat různé kategorie dat, ale nemáte předem definované kategorie, ke kterým už jsou přiřazené existující pozorování dat. Můžete například chtít segmentovat zákazníky na základě podobností v jejich profilech. Clustering se dá použít také jako počáteční krok při vytváření řešení klasifikace – v podstatě pomocí clusteringu určíte odpovídající třídy pro vaše data.