Uczenie maszynowe w Pythonie dla każdego Rzeszów

Sztuczna inteligencja i uczenie maszynowe rozwijają się z niezwykłą dynamiką i znajdują coraz więcej różnorodnych zastosowań w niemal wszystkich branżach. Ten spektakularny postęp jest silnie związany z osiągnięciami w świecie sprzętu i oprogramowania. Obecnie do uczenia maszynowego używa się wielu …

od 54,76 Najbliżej: 0,1 km

Liczba ofert: 6

Oferta sklepu

Opis

Sztuczna inteligencja i uczenie maszynowe rozwijają się z niezwykłą dynamiką i znajdują coraz więcej różnorodnych zastosowań w niemal wszystkich branżach. Ten spektakularny postęp jest silnie związany z osiągnięciami w świecie sprzętu i oprogramowania. Obecnie do uczenia maszynowego używa się wielu języków programowania, takich jak R, C, C++, Fortran i Go, jednak najpopularniejszym wyborem okazał się Python wraz z jego specjalistycznymi bibliotekami. Znajomość tych bibliotek i narzędzi umożliwia tworzenie systemów uczących się nawet tym osobom, które nie dysponują głęboką wiedzą z dziedziny matematyki. Ta książka jest przeznaczona dla każdego, kto choć trochę zna Pythona i chce nauczyć się uczenia maszynowego. Zagadnienia matematyczne zostały tu zaprezentowane w minimalnym stopniu, za to więcej uwagi poświęcono koncepcjom, na których oparto najważniejsze i najczęściej używane narzędzia oraz techniki uczenia maszynowego. Następnie pokazano praktyczne zasady implementacji uczenia maszynowego z wykorzystaniem najdoskonalszych bibliotek i narzędzi Pythona. Opisano używane dziś komponenty systemów uczących się, w tym techniki klasyfikacji i regresji, a także inżynierię cech, która pozwala przekształcać dane na użyteczną postać. Przeanalizowano liczne algorytmy i najczęściej stosowane techniki uczenia maszynowego. Pokrótce przedstawiono modele grafowe i sieci neuronowe, w tym sieci głębokie, jak również połączenie tych technik z bardziej zaawansowanymi metodami, przydatnymi choćby w pracy na danych graficznych i tekstowych. W książce między innymi: algorytmy i modele uczenia maszynowego zasady oceny skuteczności systemów uczących techniki przekształcania danych techniki uczenia maszynowego do obrazu i tekstu sieci neuronowe i modele grafowe biblioteka scikit-learn i inne narzędzia Pythona Uczenie maszynowe z Pythonem: od dziś dla każdego! Spis treści: Przedmowa 15 Wprowadzenie 17 O autorze 23 CZĘŚĆ I. PIERWSZE KROKI 25 Rozdział 1. Podyskutujmy o uczeniu się 27 1.1. Witaj 27 1.2. Zakres, terminologia, predykcja i dane 28 1.2.1. Cechy 28 1.2.2. Wartości docelowe i predykcje 31 1.3. Rola maszyny w uczeniu maszynowym 31 1.4. Przykład systemów uczących się 33 1.4.1. Predykcja kategorii: przykłady klasyfikacji 33 1.4.2. Predykcja wartości - przykłady regresorów 35 1.5. Ocena systemów uczących się 35 1.5.1. Poprawność 36 1.5.2. Wykorzystanie zasobów 37 1.6. Proces budowania systemów uczących się 38 1.7. Założenia i realia uczenia się 40 1.8. Zakończenie rozdziału 42 1.8.1. Droga przed nami 42 1.8.2. Uwagi 43 Rozdział 2. Kontekst techniczny 45 2.1. O naszej konfiguracji 45 2.2. Potrzeba posiadania języka matematycznego 45 2.3. Nasze oprogramowanie do zmierzenia się z uczeniem maszynowym 46 2.4. Prawdopodobieństwo 47 2.4.1. Zdarzenia elementarne 48 2.4.2. Niezależność zdarzeń 50 2.4.3. Prawdopodobieństwo warunkowe 50 2.4.4. Rozkłady 52 2.5. Kombinacje liniowe, sumy ważone i iloczyny skalarne 54 2.5.1. Średnia ważona 57 2.5.2. Suma kwadratów 59 2.5.3. Suma kwadratów błędów 59 2.6. Perspektywa geometryczna: punkty w przestrzeni 60 2.6.1. Linie 61 2.6.2. Coś więcej niż linie 65 2.7. Notacja sztuczki plus jeden 69 2.8. Odjazd, zrywanie kaftana bezpieczeństwa i nieliniowość 71 2.9. NumPy kontra "cała matematyka" 73 2.9.1. Wracamy do 1D i 2D 75 2.10. Problemy z wartościami zmiennoprzecinkowymi 78 2.11. Zakończenie rozdziału 79 2.11.1. Podsumowanie 79 2.11.2. Uwagi 79 Rozdział 3. Predykcja kategorii - początki klasyfikacji 81 3.1. Zadania klasyfikacji 81 3.2. Prosty zestaw danych do klasyfikacji 82 3.3. Trenowanie i testowanie: nie ucz się do testu 84 3.4. Ocena - wystawienie stopni 87 3.5. Prosty klasyfikator nr 1: najbliżsi sąsiedzi, związki na odległość i założenia 88 3.5.1. Definiowanie podobieństwa 88 3.5.2. k w k-NN 90 3.5.3. Kombinacja odpowiedzi 90 3.5.4. k-NN, parametry i metody bezparametrowe 90 3.5.5. Budowa modelu klasyfikacji k-NN 91 3.6. Prosty klasyfikator nr 2: naiwny klasyfikator bayesowski, prawdopodobieństwo i złamane obietnice 93 3.7. Uproszczona ocena klasyfikatorów 96 3.7.1. Wydajność uczenia się 96 3.7.2. Wykorzystanie zasobów w klasyfikacji 97 3.7.3. Szacowanie zasobów w aplikacjach samodzielnych 103 3.8. Koniec rozdziału 106 3.8.1. Ostrzeżenie: ograniczenia i otwarte kwestie 106 3.8.2. Podsumowanie 107 3.8.3. Uwagi 107 3.8.4. Ćwiczenia 109 Rozdział 4. Predykcja wartości numerycznych: początki regresji 111 4.1. Prosty zbiór danych dla regresji 111 4.2. Regresja z najbliższymi sąsiadami i statystyki sumaryczne 113 4.2.1. Miary środka: mediana i średnia 114 4.2.2. Budowa modelu regresji k-NN 116 4.3. Błędy regresji liniowej 117 4.3.1. Ziemia nie jest płaska, czyli dlaczego potrzebujemy pochyłości 118 4.3.2. Przekrzywienie pola 120 4.3.3. Wykonanie regresji liniowej 122 4.4. Optymalizacja - wybór najlepszej odpowiedzi 123 4.4.1. Zgadywanie losowe 124 4.4.2. Losowe kroki 124 4.4.3. Sprytne kroki 125 4.4.4. Obliczony skrót 125 4.4.5. Wykorzystanie w regresji liniowej 126 4.5. Prosta ocena i porównanie regresorów 126 4.5.1. Pierwiastek średniego błędu kwadratowego 126 4.5.2. Wydajność uczenia się 127 4.5.3. Wykorzystanie zasobów w regresji 127 4.6. Zakończenie rozdziału 129 4.6.1. Ograniczenia i kwestie otwarte 129 4.6.2. Podsumowanie 130 4.6.3. Uwagi 130 4.6.4. Ćwiczenia 130 CZĘŚĆ II. OCENA 131 Rozdział 5. Ocena i porównywanie metod uczenia się 133 5.1. Ocena i dlaczego mniej znaczy więcej 133 5.2. Terminologia dla faz uczenia się 134 5.2.1. Powrót do maszyn 135 5.2.2. Mówiąc bardziej technicznie... 137 5.3. Majorze Tom, coś jest nie tak - nadmierne dopasowanie i niedopasowanie 141 5.3.1. Dane syntetyczne i regresja liniowa 141 5.3.2. Ręczna modyfikacja złożoności modelu 143 5.3.3. Złotowłosa - wizualizacja nadmiernego dopasowania, niedopasowania oraz "w sam raz" 145 5.3.4. Prostota 148 5.3.5. Uwagi na temat nadmiernego dopasowania 148 5.4. Od błędów do kosztów 149 5.4.1. Strata 149 5.4.2. Koszt 150 5.4.3. Punktacja 151 5.5. (Powtórne) próbkowanie - zamienić mniej w więcej 152 5.5.1. Walidacja krzyżowa 152 5.5.2. Rozwarstwienie 156 5.5.3. Powtarzany podział na dane treningowe i testowe 158 5.5.4. Lepszy sposób i tasowanie 161 5.5.5. Walidacja krzyżowa z odłożeniem jednego 164 5.6. Rozbicie: dekonstrukcja błędu na błąd systematyczny i wariancję 166 5.6.1. Wariancja danych 167 5.6.2. Wariancja modelu 167 5.6.3. Błąd systematyczny modelu 168 5.6.4. A teraz wszystko razem 168 5.6.5. Przykłady kompromisów związanych z błędem systematycznym i wariancją 169 5.7. Ocena graficzna i porównanie 173 5.7.1. Krzywe uczenia - jak dużo danych potrzebujemy? 173 5.7.2. Krzywe złożoności 177 5.8. Porównywanie metod uczących się za pomocą walidacji krzyżowej 178 5.9. Koniec rozdziału 179 5.9.1. Podsumowanie 179 5.9.2. Uwagi 179 5.9.3. Ćwiczenia 181 Rozdział 6. Ocena klasyfikatorów 183 6.1. Klasyfikatory bazowe 183 6.2. Więcej niż dokładność - wskaźniki dla klasyfikacji 186 6.2.1. Eliminacja zamieszania za pomocą macierzy błędu 187 6.2.2. W jaki sposób można się mylić 188 6.2.3. Wskaźniki z macierzy błędu 189 6.2.4. Kodowanie macierzy błędu 190 6.2.5. Radzenie sobie z wieloma klasami - uśrednianie wieloklasowe 192 6.2.6. F1 194 6.3. Krzywe ROC 194 6.3.1. Wzorce w ROC 197 6.3.2. Binarny ROC 199 6.3.3. AUC - obszar pod krzywą ROC 201 6.3.4. Wieloklasowe mechanizmy uczące się, jeden kontra reszta i ROC 203 6.4. Inne podejście dla wielu klas: jeden-kontra-jeden 205 6.4.1. Wieloklasowe AUC, część druga - w poszukiwaniu pojedynczej wartości 206 6.5. Krzywe precyzji i skuteczności wyszukiwania 209 6.5.1. Uwaga o kompromisie precyzji i skuteczności wyszukiwania 209 6.5.2. Budowanie krzywej precyzji i skuteczności wyszukiwania 210 6.6. Krzywe kumulacyjnej odpowiedzi i wzniesienia 211 6.7. Bardziej wyrafinowana ocena klasyfikatorów - podejście drugie 213 6.7.1. Binarne 213 6.7.2. Nowy problem wieloklasowy 217 6.8. Koniec rozdziału 222 6.8.1. Podsumowanie 222 6.8.2. Uwagi 222 6.8.3. Ćwiczenia 224 Rozdział 7. Ocena metod regresji 225 7.1. Metody regresji będące punktem odniesienia 225 7.2. Dodatkowe miary w metodach regresji 227 7.2.1. Tworzenie własnych miar oceny 227 7.2.2. Inne wbudowane miary regresji 228 7.2.3. R2 229 7.3. Wykresy składników resztowych 235 7.3.1. Wykresy błędów 235 7.3.2. Wykresy składników resztowych 237 7.4. Pierwsze podejście do standaryzacji 241 7.5. Ocena mechanizmów regresji w bardziej zaawansowany sposób: podejście drugie 245 7.5.1. Wyniki po sprawdzianie krzyżowym z użyciem różnych miar 246 7.5.2. Omówienie wyników ze sprawdzianu krzyżowego 249 7.5.3. Składniki resztowe 250 7.6. Koniec rozdziału 251 7.6.1. Podsumowanie 251 7.6.2. Uwagi 251 7.6.3. Ćwiczenia 254 CZĘŚĆ III. JESZCZE O METODACH I PODSTAWACH 255 Rozdział 8. Inne metody klasyfikacji 257 8.1. Jeszcze o klasyfikacji 257 8.2. Drzewa decyzyjne 259 8.2.1. Algorytmy budowania drzewa 262 8.2.2. Do pracy. Pora na drzewa decyzyjne 265 8.2.3. Obciążenie i wariancja w drzewach decyzyjnych 268 8.3. Klasyfikatory oparte na wektorach nośnych 269 8.3.1. Stosowanie klasyfikatorów SVC 272 8.3.2. Obciążenie i wariancja w klasyfikatorach SVC 275 8.4. Regresja logistyczna 277 8.4.1. Szanse w zakładach 278 8.4.2. Prawdopodobieństwo, szanse i logarytm szans 280 8.4.3. Po prostu to zrób: regresja logistyczna 285 8.4.4. Regresja logistyczna: osobliwość przestrzenna 286 8.5. Analiza dyskryminacyjna 287 8.5.1. Kowariancja 289 8.5.2. Metody 299 8.5.3. Przeprowadzanie analizy dyskryminacyjnej 301 8.6. Założenia, obciążenie i klasyfikatory 302 8.7. Porównanie klasyfikatorów: podejście trzecie 304 8.7.1. Cyfry 305 8.8. Koniec rozdziału 307 8.8.1. Podsumowanie 307 8.8.2. Uwagi 307 8.8.3. Ćwiczenia 310 Rozdział 9. Inne metody regresji 313 9.1. Regresja liniowa na ławce kar - regularyzacja 313 9.1.1. Przeprowadzanie regresji z regularyzacją 318 9.2. Regresja z użyciem wektorów nośnych 319 9.2.1. Zawiasowa funkcja straty 319 9.2.2. Od regresji liniowej przez regresję z regularyzacją do regresji SVR 323 9.2.3. Po prostu to zrób - w stylu SVR 324 9.3. Regresja segmentowa ze stałymi 325 9.3.1. Implementowanie regresji segmentowej ze stałymi 327 9.3.2. Ogólne uwagi na temat implementowania modeli 328 9.4. Drzewa regresyjne 331 9.4.1. Przeprowadzanie regresji z użyciem drzew 331 9.5. Porównanie metod regresji: podejście trzecie 332 9.6. Koniec rozdziału 334 9.6.1. Podsumowanie 334 9.6.2. Uwagi 334 9.6.3. Ćwiczenia 335 Rozdział 10. Ręczna inżynieria cech - manipulowanie danymi dla zabawy i dla zysku 337 10.1. Terminologia i przyczyny stosowania inżynierii cech 337 10.1.1. Po co stosować inżynierię cech? 338 10.1.2. Kiedy stosuje się inżynierię cech? 339 10.1.3. Jak przebiega inżynieria cech? 340 10.2. Wybieranie cech i redukcja danych - pozbywanie się śmieci 341 10.3. Skalowanie cech 342 10.4. Dyskretyzacja 346 10.5. Kodowanie kategorii 348 10.5.1. Inna metoda kodowania i niezwykły przypadek braku punktu przecięcia z osią 351 10.6. Relacje i interakcje 358 10.6.1. Ręczne tworzenie cech 358 10.6.2. Interakcje 360 10.6.3. Dodawanie cech na podstawie transformacji 364 10.7. Manipulowanie wartościami docelowymi 366 10.7.1. Manipulowanie przestrzenią danych wejściowych 367 10.7.2. Manipulowanie wartościami docelowymi 369 10.8. Koniec rozdziału 371 10.8.1. Podsumowanie 371 10.8.2. Uwagi 371 10.8.3. Ćwiczenia 372 Rozdział 11. Dopracowywanie hiperparametrów i potoki 375 11.1. Modele, parametry i hiperparametry 376 11.2. Dostrajanie hiperparametrów 378 11.2.1. Uwaga na temat słownictwa informatycznego i z dziedziny uczenia maszynowego 378 11.2.2. Przykład przeszukiwania kompletnego 378 11.2.3. Używanie losowości do szukania igły w stogu siana 384 11.3. Wyprawa w rekurencyjną króliczą norę - zagnieżdżony sprawdzian krzyżowy 385 11.3.1. Opakowanie w sprawdzian krzyżowy 386 11.3.2. Przeszukiwanie siatki jako model 387 11.3.3. Sprawdzian krzyżowy zagnieżdżony w sprawdzianie krzyżowym 388 11.3.4. Uwagi na temat zagnieżdżonych SK 391 11.4. Potoki 393 11.4.1. Prosty potok 393 11.4.2. Bardziej skomplikowany potok 394 11.5. Potoki i dostrajanie całego procesu 395 11.6. Koniec rozdziału 397 11.6.1. Podsumowanie 397 11.6.2. Uwagi 397 11.6.3. Ćwiczenia 398 CZĘŚĆ IV. ZWIĘKSZANIE ZŁOŻONOŚCI 399 Rozdział 12. Łączenie mechanizmów uczących się 401 12.1. Zespoły 401 12.2. Zespoły głosujące 404 12.3. Bagging i lasy losowe 404 12.3.1. Technika bootstrap 404 12.3.2. Od techniki bootstrap do metody bagging 408 12.3.3. Przez losowy las 410 12.4. Boosting 412 12.4.1. Szczegółowe omówienie boostingu 413 12.5. Porównywanie metod opartych na zespołach drzew 415 12.6. Koniec rozdziału 418 12.6.1. Podsumowanie 418 12.6.2. Uwagi 419 12.6.3. Ćwiczenia 420 Rozdział 13. Modele z automatyczną inżynierią cech 423 13.1. Wybieranie cech 425 13.1.1. Filtrowanie jednoetapowe z wybieraniem cech na podstawie miar 426 13.1.2. Wybieranie cech na podstawie modelu 437 13.1.3. Integrowanie wybierania cech z potokiem procesu uczenia 440 13.2. Tworzenie cech za pomocą jąder 441 13.2.1. Powód używania jąder 441 13.2.2. Ręczne metody wykorzystujące jądra 446 13.2.3. Metody wykorzystujące jądro i opcje jądra 450 13.2.4. Klasyfikatory SVC dostosowane do jądra - maszyny SVM 454 13.2.5. Uwagi do zapamiętania na temat maszyn SVM i przykładów 456 13.3. Analiza głównych składowych - technika nienadzorowana 457 13.3.1. Rozgrzewka - centrowanie 458 13.3.2. Znajdowanie innej najlepszej linii 459 13.3.3. Pierwsza analiza głównych składowych 461 13.3.4. Analiza głównych składowych od kuchni 463 13.3.5. Wielki finał - uwagi na temat analizy głównych składowych 469 13.3.6. Analiza głównych składowych dla jądra i metody oparte na rozmaitościach 470 13.4. Koniec rozdziału 473 13.4.1. Podsumowanie 473 13.4.2. Uwagi 474 13.4.3. Ćwiczenia 478 Rozdział 14. Inżynieria cech dla dziedzin - uczenie specyficzne dla dziedziny 481 14.1. Praca z tekstem 482 14.1.1. Kodowanie tekstu 484 14.1.2. Przykład maszynowego klasyfikowania tekstu 488 14.2. Klastrowanie 490 14.2.1. Klastrowanie metodą k-średnich 491 14.3. Praca z obrazami 492 14.3.1. Worek słów graficznych 492 14.3.2. Dane graficzne 493 14.3.3. Kompletny system 494 14.3.4. Kompletny kod transformacji obrazów na postać WGSG 501 14.4. Koniec rozdziału 503 14.4.1. Podsumowanie 503 14.4.2. Uwagi 503 14.4.3. Ćwiczenia 505 Rozdział 15. Powiązania, rozwinięcia i kierunki dalszego rozwoju 507 15.1. Optymalizacja 507 15.2. Regresja liniowa z prostych składników 510 15.2.1. Graficzne ujęcie regresji liniowej 513 15.3. Regresja logistyczna z prostych składników 514 15.3.1. Regresja logistyczna i kodowanie zerojedynkowe 515 15.3.2. Regresja logistyczna z kodowaniem plus jeden - minus jeden 517 15.3.3. Graficzne ujęcie regresji logistycznej 518 15.4. Maszyna SVM z prostych składników 518 15.5. Sieci neuronowe 520 15.5.1. Regresja liniowa za pomocą sieci neuronowych 521 15.5.2. Regresja logistyczna za pomocą sieci neuronowych 523 15.5.3. Poza podstawowe sieci neuronowe 524 15.6. Probabilistyczne modele grafowe 525 15.6.1. Próbkowanie 527 15.6.2. Regresja liniowa za pomocą modelu PGM 528 15.6.3. Regresja logistyczna za pomocą modelu PGM 531 15.7. Koniec rozdziału 534 15.7.1. Podsumowanie 534 15.7.2. Uwagi 534 15.7.3. Ćwiczenia 535 Dodatek A. Kod z pliku mlwpy.py 537 O autorze: Dr Mark Fenner - uczy dorosłych informatyki i matematyki. Prowadził badania w dziedzinach uczenia maszynowego, bioinformatyki i bezpieczeństwa systemów komputerowych. Zajmował się też analizą bezpieczeństwa repozytoriów oprogramowania, probabilistycznym modelowaniem białek oraz analizą i wizualizacją danych pochodzących z badań ekologicznych i mikroskopowych. Mieszka z rodziną w południowo-wschodniej Pensylwanii.

Specyfikacja

Podstawowe informacje

Autor
  • Fenner Mark
Wybrane wydawnictwa
  • Helion
Okładka
  • Miękka
Rok wydania
  • 2020
Ilość stron
  • 544
Tematyka
  • Podręczniki akademickie
  • Programowanie
ISBN
  • 9788328364257
Model
  • miękka