Klíčové body
1. Strojové učení: Mimo hype, do reality
Strojové učení pro začátečníky vám poskytne pohled na strojové učení v reálném světě a odhalí vám úžasné výkony, které můžete s touto technologií skutečně dosáhnout.
Aplikace v reálném světě. Strojové učení není o zabijáckých robotech nebo cítících androidech, ale o praktických aplikacích, které ovlivňují každodenní život. Od rozpoznávání hlasu na chytrých telefonech po doporučovací systémy na e-commerce stránkách, strojové učení je již integrováno do mnoha aspektů našich životů.
- AI je širší koncept, který zahrnuje strojové učení, ale strojové učení je specifická technika, která umožňuje AI učit se z dat.
- Strojové učení se používá v detekci podvodů, plánování zdrojů, komplexní analýze, automatizaci, zákaznickém servisu a bezpečnostních systémech.
- Má také běžné, ale užitečné aplikace, jako je kontrola přístupu, ochrana zvířat a předpovídání čekacích dob.
Inženýrství a umění. Strojové učení má silné inženýrské komponenty, spoléhající se na kvantifikovatelné teorie a algoritmy. Nicméně má také uměleckou složku, která vyžaduje intuici a zkušenosti k doladění algoritmů a přípravě dat pro optimální výsledky.
- Umělecký prvek zahrnuje, jak jsou data používána, čištěna a filtrována.
- Zahrnuje také ladění algoritmů a zlepšování jejich fungování.
- Zkušenosti vědce jsou nezbytné pro přidání hodnoty do procesu strojového učení.
Zaměření na užitečnost. Důraz strojového učení je na vytváření užitečných nástrojů, které mohou vykonávat úkoly způsobem, jaký jsme dosud neviděli. I když některé aplikace mohou vypadat běžně, mají moc ovlivnit životy téměř ve všech aspektech každodenního života.
- Strojové učení je neuvěřitelná technologie, jen ne tak, jak si někteří lidé představovali.
- Cílem je pochopit, co strojové učení může a nemůže dnes udělat a co by mohlo udělat v budoucnu.
- Kniha se zaměřuje na konkrétní výsledky používání specifických algoritmů pro interakci s velkými daty.
2. Velká data: Palivo pro strojové učení
Velká data jsou podstatně odlišná od pouhé velké databáze. Ano, velká data znamenají spoustu dat, ale zahrnují také myšlenku složitosti a hloubky.
Více než jen velikost. Velká data nejsou jen o objemu dat, ale také o jejich složitosti a hloubce. Zahrnují datové sady s mnoha proměnnými, které vyžadují sofistikované algoritmy pro analýzu a extrakci smysluplných vzorů.
- Zdroje velkých dat zahrnují online databáze, veřejné zdroje, soukromé zdroje a nově vytvořená data z existujících dat.
- Velká data přinášejí obavy o soukromí, ale strojové učení se zaměřuje na vzory, nikoli na jednotlivá data.
- Lidé nemohou vizualizovat velká data bez pomoci, což činí strojové učení nezbytným pro analýzu.
Různé zdroje. Velká data mohou pocházet z různých zdrojů, včetně veřejných databází, soukromých organizací a dokonce i existujících dat v rámci organizace.
- Veřejné zdroje zahrnují vládní, univerzitní a neziskové databáze.
- Soukromé zdroje zahrnují Amazon a Google, které nabízejí přístup k velkým datovým sadám za poplatek.
- Existující data mohou být transformována a kombinována, aby vytvořila nové datové zdroje pro strojové učení.
Příprava dat. Získání velkých dat může být zastrašující, vyžadující zvážení úložiště, přenosu a zpracování.
- Data jsou často ukládána do paměti pro rychlé zpracování.
- Data musí být vyčištěna a naformátována, aby byla užitečná pro strojové učení.
- Nové typy pracovních pozic se objevují, aby upravily data a učinily je vhodnými pro strojové učení.
3. Algoritmy: Srdce strojového učení
Algoritmus je postup nebo vzorec používaný k vyřešení problému.
Nástroje pro řešení problémů. Algoritmy jsou jádrem strojového učení, poskytující systematickou sadu operací, které se provádějí na dané datové sadě. Zpracovávají data prostřednictvím dobře definovaných stavů, aby vytvořily výstup, který řeší problém.
- Algoritmy musí vyjadřovat přechody mezi stavy pomocí formálního jazyka, kterému počítače rozumí.
- Definují, upřesňují a vykonávají funkci specifickou pro řešený problém.
- Cílem je vytvořit výstup, který vyřeší problém.
Pět hlavních technik. Algoritmy strojového učení lze rozdělit do pěti hlavních technik, z nichž každá má jiný přístup k řešení problémů:
- Symbolické uvažování: Používá inverzní dedukci k řešení problémů.
- Konektivisté: Modelují neurony mozku pomocí zpětného šíření.
- Evoluční: Spoléhají na genetické programování a přežití nejsilnějších.
- Bayesovci: Používají pravděpodobnostní inference a statistické metody.
- Analogizátoři: Používají jádrové stroje k rozpoznávání vzorů a analogií.
K směru k mistrovskému algoritmu. Konečným cílem strojového učení je kombinovat technologie a strategie, které přijaly tyto pět kmenů, aby vytvořily jeden algoritmus, který se může naučit cokoliv.
- Tento mistrovský algoritmus je stále daleko.
- Tato kniha se většinou řídí strategií bayesovského kmene.
- Hlavním důvodem, proč začít se statistikou, je, že technologie je již dobře zavedená a pochopená.
4. Trénink: Učení strojů
Trénink je proces, při kterém učenlivý algoritmus mapuje flexibilní funkci na data.
Učení z příkladů. Algoritmy strojového učení se učí analýzou příkladů vstupů a jejich odpovídajících výstupů. Proces tréninku mění způsob, jakým algoritmus vnímá velká data, což mu umožňuje rozpoznávat vzory a provádět předpovědi.
- Trénink používá podmnožinu dat k vytvoření vzorů, které algoritmus potřebuje k rozpoznání specifických případů.
- Cílem je generalizovat výstupní funkci tak, aby fungovala na datech mimo tréninkovou sadu.
- Výstupem je obvykle pravděpodobnost určité třídy nebo číselná hodnota.
Tři komponenty tréninku. Proces tréninku se spoléhá na tři klíčové komponenty:
- Reprezentace: Učenlivý algoritmus vytváří model, který produkuje daný výsledek pro specifické vstupy.
- Hodnocení: Funkce hodnocení určuje, který model funguje nejlépe při vytváření požadovaného výsledku.
- Optimalizace: Proces tréninku prohledává modely, aby určil, který z nich funguje nejlépe.
Generalizace je klíčová. Tajemství strojového učení spočívá v generalizaci, což znamená vytvoření funkce, která funguje na datech mimo tréninkovou sadu.
- Učenlivý algoritmus musí vytvořit model, který poskytne požadované výsledky z vstupních dat.
- Funkce hodnocení hodnotí modely, protože více než jeden model by mohl poskytnout požadované výsledky.
- Nejlepší model je poté výstupem procesu tréninku.
5. Matematika: Jazyk strojového učení
Základem strojového učení je matematika. Algoritmy určují, jak interpretovat velká data specifickými způsoby.
Matematické základy. Strojové učení se silně spoléhá na matematické koncepty, včetně lineární algebry, pravděpodobnosti a statistiky. Tyto koncepty poskytují rámec pro algoritmy, aby zpracovávaly data a prováděly předpovědi.
- Algoritmy zpracovávají vstupní data specifickými způsoby a vytvářejí předvídatelné výstupy na základě vzorů v datech.
- Základy matematiky pro strojové učení zahrnují vektory, matice a maticový počet.
- Pochopení těchto konceptů je nezbytné pro vytváření a používání algoritmů strojového učení.
Pravděpodobnost a statistika. Pravděpodobnost pomáhá strojům pochopit pravděpodobnost událostí, zatímco statistika poskytuje nástroje pro popis a analýzu dat.
- Statistika je metodou popisu problémů pomocí matematiky.
- Kombinováním velkých dat se statistikou můžete vytvořit prostředí strojového učení, ve kterém stroj zvažuje pravděpodobnost jakékoli dané události.
- Strojové učení používá statistické metody k řešení problémů.
Operace s maticemi. Matice se používají k efektivnímu organizování a manipulaci s daty. Operace s maticemi, jako je sčítání, odčítání, násobení a transpozice, jsou základní pro mnoho algoritmů strojového učení.
- Algoritmy zpracovávají data prostřednictvím série dobře definovaných stavů.
- Stavy nemusí být deterministické, ale přesto jsou definovány.
- Cílem je vytvořit výstup, který vyřeší problém.
6. Validace: Zajištění spolehlivých výsledků
Hlavním účelem Strojového učení pro začátečníky je pomoci vám pochopit, co strojové učení může a nemůže pro vás udělat dnes a co by pro vás mohlo udělat v budoucnu.
Důležitost validace. Validace je klíčová pro zajištění, že modely strojového učení jsou spolehlivé a přesné. Zahrnuje testování modelů na datech, která nebyla použita během tréninku, aby se posoudila jejich schopnost generalizovat na nové situace.
- Data, která nebyla použita během tréninku, jsou data, která algoritmus během tréninku neviděl.
- Pomáhá určit, zda byl trénink úspěšný.
- Také pomáhá určit, zda algoritmus správně reaguje na data, která obdrží po skončení tréninku.
Bias a variance. Bias a variance jsou dva klíčové faktory, které mohou ovlivnit výkon modelů strojového učení.
- Bias se týká tendence modelu dělat systematické chyby.
- Variance se týká citlivosti modelu na změny v tréninkových datech.
- Nalezení správné rovnováhy mezi biasem a variancí je nezbytné pro vytváření efektivních modelů.
Techniky validace. Různé techniky se používají k validaci modelů strojového učení, včetně:
- Rozdělení tréninkových a testovacích dat: Rozdělení dat na tréninkové a testovací sady.
- Křížová validace: Použití více částí dat pro trénink a testování.
- Bootstrapping: Vytváření více vzorků dat s náhradou.
- Učební křivky: Vizualizace výkonu modelu vzhledem k velikosti dat.
7. Jednoduchí učitelé: Stavební bloky
Hlavním bodem zmatku mezi učením a inteligencí je, že lidé předpokládají, že jen proto, že se stroj zlepšuje ve své práci (učení), je také vědomý (inteligence).
Základní algoritmy. Jednoduchí učitelé, jako jsou perceptrony, rozhodovací stromy a Naïve Bayes, jsou stavebními bloky složitějších modelů strojového učení. Poskytují základ pro pochopení, jak se stroje učí z dat.
- Perceptron je jednoduchý algoritmus, který odděluje třídy pomocí čáry.
- Rozhodovací stromy rekurzivně dělí data, aby vytvořily klasifikační pravidla.
- Naïve Bayes používá pravděpodobnostní inference k klasifikaci dat.
Omezení perceptronu. Perceptron, i když je jednoduchý, má omezení při zpracování dat, která nelze lineárně oddělit.
- Nemůže myslet, cítit, projevovat žádnou formu sebeuvědomění nebo vykonávat svobodnou vůli.
- Může pouze provádět prediktivní analýzy mnohem rychleji než jakýkoli člověk.
- Může pomoci lidem pracovat efektivněji.
Výhody rozhodovacích stromů. Rozhodovací stromy jsou intuitivní a snadno pochopitelné, což je činí populární volbou pro mnoho aplikací.
- Mohou zpracovávat jak kvantitativní, tak kvalitativní data.
- Mohou být použity jak pro klasifikační, tak pro regresní úkoly.
- Poskytují jasnou sadu pravidel, která lze snadno interpretovat.
8. Inženýrství funkcí: Vytváření správných vstupů
Umění za inženýrstvím je nezbytnou součástí strojového učení.
Důležitost funkcí. Kvalita funkcí používaných ve strojovém učení významně ovlivňuje výkon modelů. Inženýrství funkcí zahrnuje vytváření nových funkcí z existujících dat, aby se zlepšila přesnost a efektivita učících algoritmů.
- Funkce jsou vstupy, které algoritmus strojového učení používá k provádění předpovědí.
- Efektivní funkce popisují hodnoty, které se vztahují k odpovědi a pomáhají algoritmu odhadnout odpověď.
- Funkce mohou být kvantitativní (číselné) nebo kvalitativní (symbolické).
Techniky vytváření funkcí. Vytváření funkcí zahrnuje transformaci a kombinaci existujících funkcí, aby se vytvořily nové, informativnější.
- Polynomická expanze vytváří interakce a mocniny existujících funkcí.
- Výběr funkcí identifikuje nejrelevantnější funkce pro daný úkol.
- Hashování funkcí transformuje funkce do vektoru pevné velikosti.
Údržba a transformace dat. Inženýrství funkcí také zahrnuje čištění a transformaci dat, aby byla vhodná pro strojové učení.
- To zahrnuje řešení chybějících dat, transformaci rozdělení a delimitaci anomálních dat.
- Způsob, jakým vědec připravuje data k použití, je důležitý.
- Některé úkoly, jako je odstraňování duplicitních záznamů, se provádějí pravidelně.
9. Podobnost: Hledání vzorů v datech
Strojové učení pomáhá lidem porozumět a využívat velká data.
Měření podobnosti. Algoritmy strojového učení často spoléhají na měření podobnosti mezi datovými
Poslední aktualizace:
Recenze
Hodnocení knihy Strojové učení pro začátečníky jsou smíšená, s hodnocením od 1 do 4 hvězdiček. Někteří čtenáři považovali knihu za informativní a fascinující, poskytující dobrý přehled konceptů a aplikací strojového učení. Jiní měli pocit, že je příliš obtížná pro začátečníky, chyběly jim praktické příklady a cvičení. Mnoho čtenářů ocenilo příklady kódu v Pythonu, ale poznamenali, že předchozí znalosti programování a matematiky jsou užitečné. Někteří recenzenti zmínili široké pokrytí témat, včetně předzpracování dat, algoritmů a reálných aplikací, zatímco jiní cítili, že některé části byly zbytečné nebo příliš složité.