- Nové
Popis produktu: Strojové učení v Pythonu. Recepty. Od přípravy dat až po hluboké učení. Ed. II - Kyle Gallatin, Chris Albon
Druhé vydání knihy Strojové učení v Pythonu obsahuje přes 200 osvědčených receptů , které jsou založeny na nejnovějších vydáních knihoven Pythonu. Obsahují hotové kódy , které lze přizpůsobit vašim potřebám. Kniha představuje hotové příklady práce s daty v mnoha formátech, databázích a datových skladech a také mnoho dalších tipů, které se mohou hodit při řešení řady problémů, od přípravy a načítání dat až po trénovací modely a používání neuronových sítí. . Publikace je vhodná pro lidi, kteří chtějí implementovat algoritmy strojového učení v praxi.
Pár slov o autorech
Kyle Gallatin je softwarový inženýr pracující na platformě strojového učení ve společnosti Etsy. Pracoval také jako vědec, datový analytik a inženýr strojového učení.
Dr. Chris Albon je již mnoho let datovým analytikem a politologem. V současnosti pracuje pro Devoted Health a byl také hlavním datovým vědcem v keňském startupu BRCK.
Strojové učení - receptury
Strojové učení je jednou z velmi zajímavých a dynamicky se rozvíjejících oblastí informačních technologií. Kniha obsahuje informace o práci s daty v mnoha formátech, databázích a datových úložištích. Diskutovány jsou také techniky snižování rozměrů a metody pro hodnocení a výběr modelu. Publikace obsahuje recepty na témata, jako je lineární a logistická regrese, rozhodovací stromy a náhodné lesy, stejně jako algoritmy k-nejbližšího souseda, podpůrné vektorové stroje (SVM), naivní bayesovská klasifikace a shlukování.
Informace o knize
- Původní název: Machine Learning with Python Cookbook: Practical Solutions from Preprocessing to Deep Learning, 2nd Edition
- Autoři: Kyle Gallatin, Dr. Chris Albon
- Překlad: Robert Górczyński
- ISBN: 978-83-289-0811-6
- Rok vydání: 2024
- Formát: 165 x 235 mm
- Potah: měkký
- Počet stran: 398
- Vydavatel: Helion SA
Obsah
Zavedení
1. Vektor, matice a pole
- 1,0. Zavedení
- 1.1. Vytvoření vektoru
- 1.2. Vytvoření matice
- 1.3. Vytvoření řídké matice
- 1.4. Předběžné přidělení pole NumPy
- 1.5. Stahování položek
- 1.6. Popis matic
- 1.7. Provádění operací na všech prvcích
- 1.8. Zjištění maximální a minimální hodnoty
- 1.9. Výpočet průměru, rozptylu a směrodatné odchylky
- 1/10 Změna tvaru desky
- 1/11. Transponování vektoru nebo matice
- 1/12. Zploštění matrice
- 1/13. Nalezení řádku matice
- 1/14. Získání úhlopříčky matice
- 1.15. Výpočet stopy matice
- 1/16. Výpočet bodového součinu
- 1/17. Sčítání a odečítání matic
- 1/18. Maticové násobení
- 1/19. Maticová inverze
- 1.20. Generování náhodných čísel
2. Načítání dat
- 2,0. Zavedení
- 2.1. Načítání ukázkové datové sady
- 2.2. Vytvoření simulované datové sady
- 2.3. Načítání souboru CSV
- 2.4. Načítání souboru Excel
- 2.5. Načítání souboru JSON
- 2.6. Načítání souboru Parquet
- 2.7. Načítání souboru Avro
- 2.8. Dotaz na databázi SQLite
- 2.9. Dotaz na vzdálenou SQL databázi
- 2/10. Načítání dat z Tabulek Google
- 2/11. Načítání dat z bucketu S3
- 2/12. Načítání nestrukturovaných dat
3. Příprava dat
- 3.0. Zavedení
- 3.1. Vytvoření datového rámce
- 3.2. Popisování dat
- 3.3. Navigace v datovém rámci
- 3.4. Načítání řádků na základě určitých podmínek
- 3.5. Řazení hodnot
- 3.6. Výměna hodnot
- 3.7. Změna názvu sloupce
- 3.8. Najděte minimum, maximum, součet, průměr a počet položek ve sloupci
- 3.9. Hledání jedinečných hodnot
- 3/10 Manipulace s chybějícími hodnotami
- 3/11. Mazání sloupců
- 3/12. Mazání řádku
- 3/13. Odstraňte duplicitní řádky
- 3.14. Seskupení řádků podle hodnoty
- 3.15. Seskupení řádků podle času
- 3.16. Agregace operací a statistických dat
- 3.17. Iterace přes sloupec
- 3.18. Volání funkce na všech prvcích sloupce
- 3.19. Volání funkcí pro skupinu
- 3.20. Zřetězení objektů DataFrame
- 3.21. Spojení objektů DataFrame
4. Práce s číselnými údaji
- 4,0. Zavedení
- 4.1. Změna měřítka funkce
- 4.2. Standardizace funkce
- 4.3. Normalizace pozorování
- 4.4. Generování polynomických prvků a interakcí
- 4.5. Transformace rysů
- 4.6. Detekce odlehlých hodnot
- 4.7. Manipulace s odlehlými hodnotami
- 4.8. Diskretizace vlastností
- 4.9. Seskupování pozorování pomocí shluku
- 4/10 Odstraňte případy, které mají chybějící hodnoty
- 4/11. Doplnění chybějících hodnot
5. Práce s kategorizačními daty
- 5,0. Zavedení
- 5.1. Kódování jmenovitých kategorizačních prvků
- 5.2. Kódování ordinálních kategorizačních znaků
- 5.3. Slovníky funkcí kódování
- 5.4. Vložte chybějící hodnoty třídy
- 5.5. Zvládání nevyvážených tříd
6. Textová podpora
- 6.0. Zavedení
- 6.1. Čištění textu
- 6.2. Zpracování a čištění HTML dat
- 6.3. Odstranění interpunkčního znaménka
- 6.4. Tokenizace textu
- 6.5. Mazání slov s malým významem
- 6.6. Vycházející slova
- 6.7. Označování slovních druhů
- 6.8. Rozpoznávání pojmenovaných entit
- 6.9. Kódování textu pomocí modelu pytle slov
- 6/10. Určování váhy slov
- 6/11. Použití textových vektorů k výpočtu podobnosti textu ve vyhledávacím dotazu
- 6/12. Použití klasifikátoru analýzy sentimentu
7. Podpora data a času
- 7,0. Zavedení
- 7.1. Převeďte textový řetězec na datum
- 7.2. Podpora časového pásma
- 7.3. Načítání data a času
- 7.4. Rozdělení dat data do více funkcí
- 7.5. Výpočet rozdílu mezi daty
- 7.6. Kódování dnů v týdnu
- 7.7. Vytvoření časově zpožděné funkce
- 7.8. Použití časosběrných oken
- 7.9. Zpracování chybějících dat v datové řadě obsahující hodnoty data a času
8. Podpora obrazu
- 8,0. Zavedení
- 8.1. Načítání obrázku
- 8.2. Uložení obrázku
- 8.3. Změna velikosti obrázku
- 8.4. Oříznutí obrázku
- 8.5. Rozmazání obrazu
- 8.6. Ostřete obraz
- 8.7. Zvýšení kontrastu
- 8.8. Izolační barvy
- 8.9. Prahování obrazu
- 8/10. Odstranění pozadí obrázku
- 8/11. Detekce hran
- 8/12. Detekce rohů v obraze
- 8/13. Vytváření funkcí ve strojovém učení
- 8/14. Použití histogramu barev jako funkce
- 8.15. Použití trénovaných vložení jako funkcí
- 8/16. Detekce objektů pomocí OpenCV
- 8/17. Klasifikace obrázků pomocí PyTorch
9. Redukce rozměrů pomocí extrakce příznaků
- 9,0. Zavedení
- 9.1. Omezení funkcí pomocí hlavních komponent
- 9.2. Redukce funkcí, když jsou data lineárně neoddělitelná
- 9.3. Omezení funkcí maximalizací nesourodosti třídy
- 9.4. Redukce rysů pomocí maticového rozkladu
- 9.5. Omezení funkcí v řídkých datech
10. Redukce rozměrů pomocí výběru prvků
- 10,0. Zavedení
- 10.1. Prahová hodnota rozptylu číselného znaku
- 10.2. Prahování rozptylu binárních znaků
- 10.3. Podpora vysoce korelovaných funkcí
- 10.4. Odebrání prvků, které nejsou pro klasifikaci relevantní
- 10.5. Eliminace rekurzivní funkce
11. Vyhodnocení modelu
- 11.0. Zavedení
- 11.1. Modely křížového testu
- 11.2. Vytvoření základního regresního modelu
- 11.3. Vytvoření základního klasifikačního modelu
- 11.4. Vyhodnocování predikcí binárních klasifikátorů
- 11.5. Vyhodnocení prahování binárního klasifikátoru
- 11.6. Vyhodnocování predikcí vícetřídních klasifikátorů
- 11.7. Vizualizace výkonu klasifikátoru
- 11.8. Vyhodnocení regresního modelu
- 11.9. Vyhodnocení modelu shlukování
- 11/10. Definování faktorů hodnocení vlastního modelu
- 11/11 Vizualizace vlivu velikosti tréninkové sestavy
- 11/12. Vytvořte textovou zprávu o vašem ratingovém faktoru
- 13. 11. Vizualizujte účinek změn hodnot hyperparametrů
12. Výběr modelu
- 12.0. Zavedení
- 12.1. Výběr nejlepších modelů pomocí vyčerpávajícího vyhledávání
- 12.2. Výběr nejlepších modelů pomocí náhodného vyhledávání
- 12.3. Výběr nejlepších modelů z více algoritmů strojového učení
- 12.4. Výběr nejlepších modelů ve fázi přípravy dat
- 12.5. Urychlení výběru modelu pomocí paralelismu
- 12.6. Urychlete výběr modelu pomocí metod specifických pro algoritmus
- 12.7. Hodnocení výkonu po výběru modelu
13. Lineární regrese
- 13,0. Zavedení
- 13.1. Označení čáry
- 13.2. Zvládání dopadů interakce
- 13.3. Určení nelineárního vztahu
- 13.4. Snížení rozptylu pomocí regularizace
- 13.5. Redukce rysů pomocí LASSO regrese
14. Stromy a lesy
- 14.0. Zavedení
- 14.1. Trénink klasifikátoru rozhodovacího stromu
- 14.2. Školení regresoru rozhodovacího stromu
- 14.3. Vizualizace modelu rozhodovacího stromu
- 14.4. Trénink náhodného klasifikátoru lesa
- 14.5. Školení náhodného lesního regresora
- 14.6. Vyhodnocení náhodného lesa pomocí odhadu chyb mimo pytel
- 14.7. Identifikace důležitých prvků v náhodných lesích
- 14.8. Výběr důležitých prvků v náhodném lese
- 14.9. Zvládání nevyvážených tříd
- 14/10. Ovládání velikosti stromu
- 14/11. Zlepšení výkonu se zesílením
- 14/12. Školení modelu XGBoost
- 14/13. Zlepšete výkon v reálném čase pomocí LightGBM
15. k algoritmu nejbližších sousedů
- 15,0. Zavedení
- 15.1. Hledání nejbližších sousedů pozorování
- 15.2. Vytvoření klasifikátoru k nejbližších sousedů
- 15.3. Určení nejlepší velikosti sousedství
- 15.4. Vytvoření klasifikátoru nejbližšího souseda založeného na poloměru
- 15.5. Vyhledejte přibližné nejbližší sousedy
- 15.6. Odhad přibližných nejbližších sousedů
16. Logistická regrese
- 16.0. Zavedení
- 16.1. Trénink binárního klasifikátoru
- 16.2. Školení vícetřídního klasifikátoru
- 16.3. Snížení rozptylu prostřednictvím regularizace
- 16.4. Školení klasifikátoru na velmi velkých datech
- 16.5. Zvládání nevyvážených tříd
17. Podpora vektorového stroje
- 17,0. Zavedení
- 17.1. Trénink lineárního klasifikátoru
- 17.2. Práce s lineárně neoddělitelnými třídami pomocí funkcí jádra
- 17.3. Stanovení pravděpodobnosti prognózy
- 17.4. Identifikace podpůrných vektorů
- 17.5. Zvládání nevyvážených tříd
18. Naivní bayesovský klasifikátor
- 18.0. Zavedení
- 18.1. Školení klasifikátoru pro spojité funkce
- 18.2. Školení klasifikátoru pro diskrétní nebo numerické prvky
- 18.3. Trénink naivního bayesovského klasifikátoru pro binární prvky
- 18.4. Kalibrujte pravděpodobnost předpovědi
19. Shlukování
- 19.0. Zavedení
- 19.1. K-znamená shlukování
- 19.2. Urychlení shlukování pomocí k-means
- 19.3. Shlukování pomocí algoritmu meanshift
- 19.4. Shlukování pomocí algoritmu DBSCAN
- 19.5. Shlukování pomocí hierarchického propojení
20. Tenzory v PyTorch
- 20,0. Zavedení
- 20.1. Vytvoření tenzoru
- 20.2. Vytvoření tenzoru z NumPy
- 20.3. Vytvoření řídkého tenzoru
- 20.4. Výběr tenzorových prvků
- 20.5. Popis tenzoru
- 20.6. Provádění operací na tenzorových prvcích
- 20.7. Hledání minimálních a maximálních hodnot
- 20.8. Změna tvaru tenzoru
- 20/9. Transponování tenzoru
- 20/10. Zploštění tenzoru
- 20/11. Výpočet bodového součinu
- 20/12. Násobení tenzorů
21. Neuronové sítě
- 21.0. Zavedení
- 21.1. Použití enginu Autograd frameworku PyTorch
- 21.2. Příprava dat pro neuronové sítě
- 21.3. Návrh neuronové sítě
- 21.4. Trénink binárního klasifikátoru
- 21.5. Školení vícetřídního klasifikátoru
- 21.6. Školení regresora
- 21.7. Generování předpovědí
- 21.8. Vizualizace historie tréninku
- 21/9. Snížení přetížení pomocí regulace hmotnosti
- 21/10. Snížení nadměrného vybavení pomocí techniky předčasného ukončení
- 21/11. Snížení nadměrného vybavování pomocí techniky dropout
- 21/12. Uložení průběhu tréninkového modelu
- 21/13. Ladění neuronové sítě
- 21/14. Vizualizace neuronové sítě
22. Neuronové sítě pro nestrukturovaná data
- 22.0. Zavedení
- 22.1. Trénink neuronové sítě pro klasifikaci obrazu
- 22.2. Trénink neuronové sítě pro klasifikaci textu
- 22.3. Jemné doladění natrénovaného modelu pro klasifikaci obrázků
- 22.4. Doladění natrénovaného modelu pro klasifikaci textu
23. Ukládání, načítání a sdílení natrénovaných modelů
- 23.0. Zavedení
- 23.1. Uložení a načtení modelu knihovny scikit-learn
- 23.2. Uložení a načtení modelu knihovny TensorFlow
- 23.3. Uložení a načtení modelu PyTorch
- 23.4. Sdílení modelů scikit-learn
- 23.5. Sdílení modelů TensorFlow
- 23.6. Sdílení modelů PyTorch se Seldonem
Užitečné odkazy |