Uczenie maszynowe w
Pythonie
Leksykon kieszonkowy
Uczenie
maszynowe i nauka o danych są dziś ogromnie popularne. Dziedziny te
szybko się rozwijają, a poszczególne techniki uczenia
maszynowego znajdują coraz więcej różnorodnych zastosowań.
Wiedza,
którą można uzyskać dzięki odpowiedniemu przygotowaniu
danych i ich eksploracji, często jest bezcenna. Umiejętność ich analizy
oraz wiedza o możliwych sposobach rozwiązywania problemów
napotykanych podczas uczenia maszynowego są więc dużymi atutami i mogą
być wykorzystywane w wielu gałęziach nauki, techniki i biznesu.
Z
tego zwięzłego przewodnika po technikach uczenia maszynowego opartego
na strukturalnych danych skorzystają programiści, badacze, osoby
zajmujące się nauką o danych oraz twórcy systemów
sztucznej inteligencji. Znalazł się tu wyczerpujący opis procesu
uczenia maszynowego i klasyfikacji danych strukturalnych. Przedstawiono
też metody klastrowania danych, analizy regresji, redukcji wymiarowości
oraz inne ważne zagadnienia. Prezentowane treści zostały zilustrowane
uwagami, tabelami i przykładami kodu. Nie zabrakło opisu przydatnych
bibliotek, niezwykle użytecznych w pracy analityka danych. W efekcie
książka pozwala na szybkie rozwiązywanie różnego rodzaju
problemów związanych z przetwarzaniem danych strukturalnych.
W książce między innymi:
- klasyfikacja, oczyszczanie
i uzupełnianie braków danych
- eksploracyjna analiza
danych i dobór modelu danych
- przykłady analiz regresji
- redukcja wymiarowości
- potoki w bibliotece
scikit-learn
Przedmowa
9
Czego należy oczekiwać? 9
Dla kogo jest ta książka? 10
Konwencje typograficzne 10
Przykłady kodów 11
Podziękowania 11
Rozdział 1.
Wprowadzenie 13
Wykorzystywane biblioteki 13
Instalowanie bibliotek za pomocą programu pip 15
Instalowanie bibliotek za pomocą programu conda 16
Rozdział 2.
Schemat
procesu uczenia maszynowego 19
Rozdział 3.
Klasyfikacja
danych: baza Titanic 21
Proponowany schemat projektu 21
Importowane biblioteki 21
Zadanie pytania 22
Stosowana terminologia 22
Zebranie danych 24
Oczyszczanie danych 25
Zdefiniowanie cech 30
Próbkowanie danych 32
Imputacja danych 32
Normalizacja danych 33
Refaktoryzacja kodu 34
Model odniesienia 35
Różne rodziny algorytmów 35
Kontaminacja modeli 37
Utworzenie modelu 37
Ocena modelu 38
Optymalizacja modelu 39
Macierz pomyłek 40
Krzywa ROC 40
Krzywa uczenia 42
Wdrożenie modelu 43
Rozdział 4.
Brakujące
dane 45
Badanie braków danych 45
Pomijanie braków 49
Imputacja danych 49
Tworzenie kolumn ze wskaźnikami 50
Rozdział 5.
Oczyszczanie danych 51
Nazwy kolumn 51
Uzupełnianie brakujących wartości 52
Rozdział 6.
Badanie
danych 53
Ilość danych 53
Statystyki podsumowujące 53
Histogram 54
Wykres punktowy 56
Wykres łączony 57
Macierz wykresów 59
Wykresy pudełkowy i skrzypcowy 60
Porównywanie dwóch cech porządkowych 61
Korelacja 63
Wykres RadViz 66
Wykres współrzędnych równoległych 68
Rozdział 7.
Wstępne
przetwarzanie danych 71
Normalizacja 71
Skalowanie w zadanym zakresie 72
Kolumny wskaźnikowe 73
Kodowanie etykietowe 74
Kodowanie częstościowe 74
Wyodrębnianie kategorii danych z ciągów znaków 75
Inne rodzaje kodowania kolumn kategorialnych 76
Przetwarzanie dat 78
Tworzenie cechy col_na 79
Ręczne przetwarzanie cech 79
Rozdział 8.
Wybieranie
cech 81
Skorelowane kolumny danych 81
Regresja lasso 83
Rekurencyjna eliminacja cech 85
Informacja wzajemna 86
Analiza głównych składowych 87
Ważność cech 87
Rozdział 9.
Niezrównoważone klasy danych
89
Wybór innego wskaźnika 89
Algorytmy drzewa decyzyjnego i metody zespołowe 89
Penalizacja modeli 89
Próbkowanie w górę mniej licznych klas 90
Generowanie danych w mniej licznych klasach 91
Próbkowanie w dół bardziej licznych klas 91
Próbkowanie w górę, a potem w dół 92
Rozdział 10.
Klasyfikacja 93
Regresja logistyczna 94
Naiwny klasyfikator Bayesa 98
Maszyna wektorów nośnych 99
K najbliższych sąsiadów 102
Drzewo decyzyjne 104
Las losowy 111
XGBoost 115
Model LightGBM z gradientowym wzmacnianiem 124
TPOT 128
Rozdział 11.
Wybór modelu 133
Krzywa weryfikacji 133
Krzywa uczenia 134
Rozdział 12.
Wskaźniki i ocena
klasyfikacji 137
Tablica pomyłek 137
Wskaźniki 140
Dokładność 141
Czułość 141
Precyzja 141
F1 142
Raport klasyfikacyjny 142
Krzywa ROC 142
Krzywa precyzja-czułość 144
Krzywa skumulowanych zysków 145
Krzywa podniesienia 147
Równowaga klas 149
Błąd prognozowania klas 150
Próg dyskryminacji 150
Rozdział 13.
Interpretacja modelu
153
Współczynniki regresji 153
Ważność cech 153
Pakiet LIME 153
Interpretacja drzewa 155
Wykres częściowych zależności 156
Modele zastępcze 158
Pakiet Shapley 159
Rozdział 14.
Regresja 163
Model odniesienia 165
Regresja liniowa 165
Maszyna wektorów nośnych 168
K najbliższych sąsiadów 170
Drzewo decyzyjne 172
Las losowy 177
XGBoost 180
LightGBM 185
Rozdział 15.
Wskaźniki i ocena regresji
191
Wskaźniki 191
Wykres reszt 193
Heteroskedastyczność 194
Rozkład normalny reszt 195
Wykres błędów prognozowanych wyników 196
Rozdział 16.
Interpretacja modelu regresyjnego
199
Shapley 199
Rozdział 17.
Redukcja wymiarowości
danych 205
Analiza głównych składowych 205
UMAP 221
t-SNE 226
PHATE 230
Rozdział 18.
Klastrowanie danych
233
Algorytm k-średnich 233
Klastrowanie aglomeracyjne (hierarchiczne) 239
Interpretowanie klastrów 241
Rozdział 19.
Potoki
247
Potok klasyfikacyjny 247
Potok regresyjny 249
Potok analizy głównych składowych 249
256
stron, Format: 12.5x19.5cm, oprawa miękka