logo

Modely strojového učení

Model strojového učení je definován jako matematická reprezentace výstupu tréninkového procesu. Strojové učení je studium různých algoritmů, které se mohou automaticky zlepšovat prostřednictvím zkušeností a starých dat a vytvářet model. Model strojového učení je podobný počítačovému softwaru navrženému k rozpoznání vzorců nebo chování na základě předchozích zkušeností nebo dat. Učící algoritmus objevuje vzory v trénovacích datech a vytváří ML model, který tyto vzorce zachycuje a předpovídá nová data.

Modely strojového učení

Pojďme pochopit příklad modelu ML, kde vytváříme aplikaci, která rozpoznává emoce uživatele na základě výrazů obličeje. Takže vytvoření takové aplikace je možné pomocí modelů strojového učení, kde budeme model trénovat tím, že naplníme obrázky tváří s různými emocemi označenými na nich. Kdykoli se tato aplikace používá k určení nálady uživatele, přečte všechna načtená data a poté určí náladu každého uživatele.

Jednoduše řečeno tedy můžeme říci, že a model strojového učení je zjednodušená reprezentace něčeho nebo procesu. V tomto tématu probereme různé modely strojového učení a jejich techniky a algoritmy .

Co je model strojového učení?

Modely strojového učení lze chápat jako program, který byl trénován tak, aby nacházel vzory v nových datech a dělal předpovědi. Tyto modely jsou reprezentovány jako matematická funkce, která přijímá požadavky ve formě vstupních dat, předpovídá vstupní data a poté poskytuje výstup jako odpověď. Nejprve jsou tyto modely trénovány na sadě dat a poté je jim poskytnut algoritmus pro uvažování nad daty, extrahování vzoru z dat zdroje a učení se z těchto dat. Jakmile se tyto modely natrénují, lze je použít k predikci neviditelného souboru dat.

K dispozici jsou různé typy modelů strojového učení na základě různých obchodních cílů a souborů dat.

Klasifikace modelů strojového učení:

Na základě různých obchodních cílů a souborů dat existují tři modely učení pro algoritmy. Každý algoritmus strojového učení se usadí do jednoho ze tří modelů:

  • Učení pod dohledem
  • Učení bez dozoru
  • Posílení učení
Modely strojového učení

Supervizované učení se dále dělí do dvou kategorií:

  • Klasifikace
  • Regrese

Učení bez dozoru je také rozděleno do následujících kategorií:

  • Shlukování
  • Pravidlo asociace
  • Redukce rozměrů

1. Modely strojového učení pod dohledem

Supervised Learning je nejjednodušší model strojového učení pro pochopení toho, která vstupní data se nazývají trénovací data a mají známý štítek nebo výsledek jako výstup. Funguje tedy na principu vstupně-výstupních párů. Vyžaduje vytvoření funkce, kterou lze trénovat pomocí sady trénovacích dat, a poté je aplikována na neznámá data a poskytuje určitý prediktivní výkon. Řízené učení je založeno na úkolech a testováno na označených souborech dat.

Můžeme implementovat model učení pod dohledem na jednoduché problémy ze skutečného života. Máme například soubor dat sestávající z věku a výšky; pak můžeme vytvořit model učení pod dohledem, který předpovídá výšku osoby na základě jejího věku.

Modely řízeného učení se dále dělí do dvou kategorií:

Regrese

V regresních problémech je výstupem spojitá proměnná. Některé běžně používané regresní modely jsou následující:

a) Lineární regrese

Lineární regrese je nejjednodušší model strojového učení, ve kterém se snažíme predikovat jednu výstupní proměnnou pomocí jedné nebo více vstupních proměnných. Reprezentací lineární regrese je lineární rovnice, která kombinuje sadu vstupních hodnot (x) a predikovaný výstup (y) pro sadu těchto vstupních hodnot. Je znázorněna ve formě čáry:

Y = bx + c.

Modely strojového učení

Hlavním cílem lineárního regresního modelu je najít nejvhodnější linii, která nejlépe odpovídá datovým bodům.

Lineární regrese je rozšířena na vícenásobnou lineární regresi (najděte rovinu nejlepší shody) a polynomiální regresi (najděte nejlépe vyhovující křivku).

b) Rozhodovací strom

vložit do klávesnice

Rozhodovací stromy jsou oblíbené modely strojového učení, které lze použít pro regresní i klasifikační problémy.

Rozhodovací strom využívá stromovou strukturu rozhodnutí spolu s jejich možnými důsledky a výsledky. V tomto se každý vnitřní uzel používá k reprezentaci testu atributu; každá větev se používá k reprezentaci výsledku testu. Čím více uzlů má rozhodovací strom, tím přesnější bude výsledek.

Výhodou rozhodovacích stromů je, že jsou intuitivní a snadno implementovatelné, ale chybí jim přesnost.

Rozhodovací stromy jsou široce používány v operační výzkum, konkrétně v rozhodovací analýze, strategickém plánování a hlavně ve strojovém učení.

c) Náhodný les

Random Forest je souborová metoda učení, která se skládá z velkého počtu rozhodovacích stromů. Každý rozhodovací strom v náhodném lese předpovídá výsledek a za výsledek se považuje předpověď s většinou hlasů.

Náhodný model lesa lze použít pro regresní i klasifikační problémy.

U klasifikačního úkolu je výsledek náhodného lesa převzat z většiny hlasů. Zatímco v regresní úloze je výsledek převzat z průměru nebo průměru předpovědí generovaných každým stromem.

d) Neuronové sítě

Neuronové sítě jsou podmnožinou strojového učení a jsou také známé jako umělé neuronové sítě. Neuronové sítě jsou tvořeny umělými neurony a jsou navrženy způsobem, který připomíná strukturu a fungování lidského mozku. Každý umělý neuron se spojuje s mnoha dalšími neurony v neuronové síti a takové miliony spojených neuronů vytvářejí sofistikovanou kognitivní strukturu.

Modely strojového učení

Neuronové sítě se skládají z vícevrstvé struktury obsahující jednu vstupní vrstvu, jednu nebo více skrytých vrstev a jednu výstupní vrstvu. Protože je každý neuron spojen s jiným neuronem, přenáší data z jedné vrstvy do druhého neuronu dalších vrstev. Nakonec se data dostanou do poslední vrstvy nebo výstupní vrstvy neuronové sítě a generují výstup.

Neuronové sítě závisí na trénovacích datech, aby se naučily a zlepšily jejich přesnost. Dokonale vyškolená a přesná neuronová síť však může rychle shlukovat data a stát se výkonným nástrojem strojového učení a umělé inteligence. Jedna z nejznámějších neuronových sítí je Algoritmus vyhledávání Google.

Klasifikace

Klasifikační modely jsou druhým typem technik supervizovaného učení, které se používají ke generování závěrů z pozorovaných hodnot v kategorické podobě. Klasifikační model může například určit, zda je e-mail spam nebo ne; kupující produkt koupí nebo ne, atd. Klasifikační algoritmy se používají k predikci dvou tříd a kategorizaci výstupu do různých skupin.

Při klasifikaci je navržen model klasifikátoru, který klasifikuje datovou sadu do různých kategorií, a každé kategorii je přiřazen štítek.

Ve strojovém učení existují dva typy klasifikací:

    Binární klasifikace: Pokud má problém pouze dvě možné třídy, nazývané binární klasifikátor. Například kočka nebo pes, Ano nebo Ne,Vícetřídní klasifikace: Pokud má problém více než dvě možné třídy, jedná se o klasifikátor s více třídami.

Některé oblíbené klasifikační algoritmy jsou uvedeny níže:

a) Logistická regrese

Logistická regrese se používá k řešení klasifikačních problémů ve strojovém učení. Jsou podobné lineární regresi, ale používají se k predikci kategorických proměnných. Může předpovídat výstup buď Ano nebo Ne, 0 nebo 1, Pravda nebo Nepravda atd. Místo přesných hodnot však poskytuje pravděpodobnostní hodnoty mezi 0 a 1.

b) Support Vector Machine

Support vector machine neboli SVM je populární algoritmus strojového učení, který se široce používá pro klasifikační a regresní úlohy. Konkrétně se však používá k řešení klasifikačních problémů. Hlavním cílem SVM je najít nejlepší rozhodovací hranice v N-rozměrném prostoru, který může segregovat datové body do tříd, a nejlepší rozhodovací hranice je známá jako Hyperplane. SVM vybere extrémní vektor k nalezení nadroviny a tyto vektory jsou známé jako podpůrné vektory.

Modely strojového učení

c) Naivní Bayes

Naïve Bayes je další populární klasifikační algoritmus používaný ve strojovém učení. Nazývá se tak, protože je založen na Bayesově teorému a řídí se naivním (nezávislým) předpokladem mezi rysy, který je dán jako:

Modely strojového učení

Každý naivní Bayesův klasifikátor předpokládá, že hodnota konkrétní proměnné je nezávislá na jakékoli jiné proměnné/funkci. Například, pokud je třeba ovoce klasifikovat na základě barvy, tvaru a chuti. Takže žlutá, oválná a sladká bude rozpoznána jako mango. Zde je každá funkce nezávislá na ostatních funkcích.

2. Modely strojového učení bez dozoru

Modely strojového učení bez dozoru implementují proces učení opačný k učení pod dohledem, což znamená, že umožňuje modelu učit se z neoznačené trénovací datové sady. Na základě neoznačené datové sady model předpovídá výstup. Pomocí učení bez dozoru se model sám bez dozoru učí skryté vzorce z datové sady.

Modely učení bez dozoru se používají hlavně k provádění tří úkolů, které jsou následující:

    Shlukování
    Shlukování je technika učení bez dozoru, která zahrnuje shlukování nebo tápání datových bodů do různých shluků na základě podobností a rozdílů. Objekty s největším počtem podobností zůstávají ve stejné skupině a nemají žádné nebo jen velmi málo podobností s jinými skupinami.
    Shlukovací algoritmy mohou být široce používány v různých úlohách, jako je např Segmentace obrazu, Statistická analýza dat, Segmentace trhu , atd.
    Některé běžně používané shlukovací algoritmy jsou K-means Clustering, hierarchické Clustering, DBSCAN , atd.
    Modely strojového učení Učení pravidel asociace
    Učení asociačních pravidel je technika učení bez dozoru, která nachází zajímavé vztahy mezi proměnnými v rámci velkého souboru dat. Hlavním cílem tohoto učícího algoritmu je najít závislost jedné datové položky na jiné datové položce a podle toho tyto proměnné zmapovat tak, aby mohl generovat maximální zisk. Tento algoritmus se používá hlavně v Analýza tržního koše, těžba využití webu, nepřetržitá produkce , atd.
    Některé populární algoritmy učení asociačních pravidel jsou Apriori algoritmus, Eclat, FP-růstový algoritmus. Redukce rozměrů
    Počet prvků/proměnných přítomných v datové sadě je znám jako dimenzionalita datové sady a technika použitá ke snížení dimenzionality je známá jako technika redukce dimenzionality.
    Přestože více dat poskytuje přesnější výsledky, může také ovlivnit výkon modelu/algoritmu, jako jsou problémy s přesazením. V takových případech se používají techniky redukce rozměrů.
    ' Jde o proces převodu datové sady vyšších dimenzí na datovou sadu menších dimenzí, která zajišťuje, že poskytuje podobné informace .'
    Různé metody redukce rozměrů, např jako PCA (analýza hlavních komponent), rozklad singulární hodnoty atd.

Posílení učení

Při posilovacím učení se algoritmus učí akce pro danou sadu stavů, které vedou k cílovému stavu. Jde o model učení založený na zpětné vazbě, který přijímá signály zpětné vazby po každém stavu nebo akci interakcí s prostředím. Tato zpětná vazba funguje jako odměna (pozitivní za každou dobrou akci a negativní za každou špatnou akci) a cílem agenta je maximalizovat pozitivní odměny ke zlepšení jejich výkonu.

Chování modelu v posilujícím učení je podobné lidskému učení, protože lidé se učí věci zkušenostmi jako zpětnou vazbou a interagují s prostředím.

Níže jsou uvedeny některé oblíbené algoritmy, které spadají do posilovacího učení:

    Q-learning:Q-learning je jedním z populárních bezmodelových algoritmů posilovacího učení, který je založen na Bellmanově rovnici.

Jeho cílem je naučit se zásady, které mohou pomoci agentovi AI podniknout nejlepší akci pro maximalizaci odměny za konkrétních okolností. Zahrnuje hodnoty Q pro každý pár stav-akce, které indikují odměnu za sledování dané cesty stavu, a snaží se maximalizovat hodnotu Q.

    State-Action-Reward-State-Action (SARSA):SARSA je On-policy algoritmus založený na Markovově rozhodovacím procesu. Ke zjištění hodnoty Q používá akci prováděnou aktuální politikou. Algoritmus SARSA platí pro State Action Odměna State Action, která symbolizuje n-tici (s, a, r, s', a'). Deep Q Network:DQN nebo Deep Q Neuronová síť je Q-learning v rámci neuronové sítě. V zásadě se používá v prostředí velkého stavového prostoru, kde by definice Q-tabulky byla složitým úkolem. Takže v takovém případě neuronová síť namísto použití Q-tabulky používá Q-hodnoty pro každou akci na základě stavu.

Tréninkové modely strojového učení

Jakmile je model strojového učení vytvořen, je trénován tak, aby získal odpovídající výsledky. K trénování modelu strojového učení potřebuje člověk obrovské množství předem zpracovaných dat. Předzpracovaná data zde znamenají data ve strukturované podobě s redukovanými hodnotami null atd. Pokud neposkytneme předzpracovaná data, pak je velká šance, že náš model bude fungovat strašně.

Jak vybrat ten nejlepší model?

Ve výše uvedené části jsme diskutovali o různých modelech a algoritmech strojového učení. Ale jedna nejvíce matoucí otázka, která může napadnout každého začátečníka, že 'který model si mám vybrat?'. Odpověď je tedy taková, že to závisí hlavně na požadavcích obchodu nebo projektu. Kromě toho záleží také na přidružených atributech, objemu dostupné datové sady, počtu funkcí, složitosti atd. V praxi se však doporučuje vždy začít s nejjednodušším modelem, který lze aplikovat na konkrétní problém a poté postupně zvyšovat složitost a testovat přesnost pomocí ladění parametrů a křížové validace.

Rozdíl mezi modelem strojového učení a algoritmy

Jednou z nejvíce matoucích otázek mezi začátečníky je, že jsou modely strojového učení a algoritmy jsou stejné? Protože v různých případech ve strojovém učení a datové vědě se tyto dva termíny používají zaměnitelně.

Odpověď na tuto otázku je Ne a model strojového učení není stejný jako algoritmus. Jednoduchým způsobem, an Algoritmus ML je jako procedura nebo metoda, která běží na datech, aby z nich objevila vzory a vygenerovat model. Zároveň a model strojového učení je jako počítačový program, který generuje výstup nebo předpovídá . Přesněji řečeno, když trénujeme algoritmus s daty, stává se modelem.

 Machine Learning Model = Model Data + Prediction Algorithm