Uczenie maszynowe z użyciem Scikit-Learn i TensorFlow

Dlaczego uczenie maszynowe stało się tak ważne?

Jeszcze w połowie pierwszej dekady XXI wieku głębokie sieci neuronowe budziły ogromne zainteresowanie, ale też pewien sceptycyzm. Szybko okazało się, że ich trenowanie jest realne — pod warunkiem dostępu do odpowiedniej mocy obliczeniowej i dużych zbiorów danych. To właśnie wtedy uczenie głębokie zaczęło przechodzić z laboratoriów do praktycznych zastosowań, a rozwój narzędzi sprawił, że kolejne zespoły mogły tworzyć coraz bardziej zaawansowane systemy.

Dzisiejsze podejście do inteligentnych rozwiązań opiera się na połączeniu metod klasycznych oraz głębokich. W praktyce oznacza to, że warto rozumieć fundamenty uczenia maszynowego, a potem przejść do implementacji w nowoczesnych bibliotekach. Książka, której dotyczy ten wpis, została przygotowana tak, aby przeprowadzić Cię przez ten proces krok po kroku.

Co zyskujesz dzięki tej książce o uczeniu głębokim?

To drugie wydanie bestsellerowego przewodnika po technikach uczenia maszynowego. Intencja jest prosta: nie potrzebujesz rozbudowanych kompetencji programistycznych, by zacząć. Wystarczy, że jesteś gotów uczyć się na przykładach i ćwiczeniach — a tu takich materiałów jest sporo. W książce postawiono na minimum teorii i maksymalne wsparcie praktyczne, dzięki czemu łatwiej przyswajasz pojęcia, a następnie przekuwasz je w realne projekty.

Autor prowadzi czytelnika przez różne typy zadań: od podstaw, przez klasyfikację i regresję, po sieci neuronowe, komputery widzenia, przetwarzanie sekwencji oraz mechanizmy uwagi. Ważnym elementem jest również praca z narzędziami ekosystemu TensorFlow 2 — w tym Keras, TF Transform oraz TF Serving. Dzięki temu uczysz się nie tylko budować model, ale też przygotowywać dane i wdrażać rozwiązania.

Od podstaw do wdrożeń: Twoja ścieżka przez projektowanie modeli

W pierwszej części książka skupia się na tym, jak rozumieć uczenie maszynowe i jak podejść do problemu w sposób inżynierski. Zaczynasz od krajobrazu dyscypliny: poznajesz różne rodzaje systemów uczenia maszynowego, rozróżniasz uczenie nadzorowane i nienadzorowane, a także uczysz się, czym różni się uczenie wsadowe od przyrostowego. Później przychodzi czas na praktykę: wybór metryki, sprawdzanie założeń, zdobywanie danych, tworzenie przestrzeni roboczej i budowa zbiorów testowych.

Ważne jest też przygotowanie danych. Książka omawia czyszczenie danych, obsługę tekstu oraz atrybutów kategorialnych, a także podejście do skalowania cech i tworzenia potoków transformujących. To szczególnie istotne, bo nawet najlepszy model nie obroni się, jeśli wejście będzie chaotyczne lub niereprezentatywne.

W dalszej kolejności poznajesz techniki strojenia hiperparametrów i dobór modelu: metoda przeszukiwania siatki, losowe przeszukiwanie oraz metody zespołowe. Pojawia się także testowanie i ocenianie, w tym sprawdzian krzyżowy oraz weryfikowanie jakości na zbiorze testowym. W ten sposób uczysz się budować system, uruchamiać go, monitorować i utrzymywać.

Uczenie klasyczne i praktyczne metryki jakości

W części poświęconej klasyfikacji omawiane są konkretne narzędzia i metryki. Pojawia się zbiór danych MNIST oraz praca nad klasyfikatorem binarnym. Uczysz się mierzyć dokładność z wykorzystaniem sprawdzianu krzyżowego, a także analizować wyniki przez macierz pomyłek. Książka porusza kompromis między precyzją a pełnością, pokazuje, jak korzystać z krzywej ROC oraz jak przechodzić od klasyfikacji wieloklasowej do wieloetykietowej i wielowyjściowej.

W rozdziałach o uczeniu modeli pojawiają się regresja liniowa, regresja wielomianowa oraz regularyzowane modele liniowe. Omawiane są m.in. regresja grzbietowa, LASSO i elastyczna siatka, a także wczesne zatrzymywanie. W przypadku klasyfikacji pojawiają się także metody takie jak regresja logistyczna, granice decyzyjne czy podejście z softmax.

W kolejnych rozdziałach trafiasz na maszyny wektorów nośnych, drzewa decyzyjne oraz uczenie zespołowe i losowe lasy. To wszystko zostało ułożone tak, byś rozumiał mechanizmy działania algorytmów, a potem umiał je zastosować. W praktyce: Uczenie maszynowe z użyciem Scikit-Learn i TensorFlow przestaje być hasłem, a staje się realną ścieżką pracy z danymi i modelem.

Sieci neuronowe, Keras i TensorFlow 2 jako „źródło magii”

Druga część książki przechodzi do świata sieci neuronowych i uczenia głębokiego. Zaczynasz od wprowadzenia do sztucznych neuronów: od perceptronu, przez perceptron wielowarstwowy i propagację wsteczną, aż po implementacje w interfejsie Keras. W tym miejscu pojawia się też instalacja modułu TensorFlow 2 oraz budowanie modeli — w tym klasyfikatora obrazów i perceptronu wielowarstwowego do zadań regresyjnych.

Ważną częścią nauki jest też dopasowywanie modelu. Książka pokazuje, jak działa dostrajanie hiperparametrów, jak dobierać liczbę warstw ukrytych, liczbę neuronów w warstwach, współczynnik uczenia czy rozmiar grupy. Uczysz się również, jak zapisywać i odczytywać modele, jak wykorzystywać wywołania zwrotne oraz jak wizualizować dane dzięki TensorBoard.

W rozdziałach stricte „głębokich” poruszane są typowe problemy treningu: zanikające i eksplodujące gradienty, inicjalizacje wag Glorota i He, nienasycające funkcje aktywacji, normalizacja wsadowa, obcinanie gradientu czy regularyzacja. Pojawia się też wątek uczenia transferowego i uczenia wstępnego, a także optymalizatory: od momentum i Nesterova, przez AdaGrad i RMSProp, po Adam i Nadam — wraz z harmonogramowaniem współczynnika uczenia.

Zaawansowane zastosowania: obraz, sekwencje, język i generowanie

Książka prowadzi przez głębokie widzenie komputerowe z użyciem splotowych sieci neuronowych. Uczysz się o strukturze kory wzrokowej, warstwach splotowych, filtrach i stosach map cech. Następnie przechodzisz do implementacji w TensorFlow, a potem do architektur: LeNet-5, AlexNet, GoogLeNet, VGGNet, ResNet, Xception i SENet. Jest też mowa o klasyfikowaniu i lokalizowaniu oraz o wykrywaniu obiektów, a także o segmentacji semantycznej.

W kolejnych rozdziałach pojawiają się sieci rekurencyjne i splotowe w kontekście przetwarzania sekwencji: prognozowanie szeregów czasowych, obsługa długich sekwencji, zwalczanie problemów z niestabilnymi gradientami i pamięcią krótkotrwałą. Następnie książka wchodzi w przetwarzanie języka naturalnego: Char-RNN, analiza sentymentów, maskowanie, koder-dekoder dla tłumaczenia maszynowego, sieci dwukierunkowe oraz mechanizmy uwagi. Szczególny nacisk położono na to, że „liczy się tylko uwaga”, czyli architekturę transformera.

Wątek uczenia reprezentacji uzupełniają autokodery i generatywne sieci przeciwstawne: autokodery liniowe, stosowe, splotowe, rekurencyjne, odszumiające, rzadkie i wariacyjne. W dalszej części trafiasz na GAN — wraz z omówieniem problemów uczenia oraz modeli takich jak głębokie splotowe GAN, progresywny wzrost czy StyleGAN. To zestaw tematów, który pozwala zrozumieć, jak tworzyć i badać modele generatywne.

Uczenie przez wzmacnianie i wdrażanie modeli w skali

Jeśli interesuje Cię podejście oparte na nagrodach, książka przechodzi przez uczenie przez wzmacnianie. Omawia wyszukiwanie strategii, wprowadza narzędzie OpenAI Gym, opisuje sieci neuronowe jako strategie oraz procesy decyzyjne Markowa. Następnie poznajesz uczenie metodą różnic czasowych oraz Q-uczenie — w tym Q-uczenie głębokie.

W części praktycznej pojawia się implementacja modelu Q-uczenia głębokiego i omówienie odmian, takich jak podwójna sieć DQN, odtwarzanie priorytetowych doświadczeń czy walcząca sieć DQN. Ważnym elementem jest też biblioteka TF-Agents: instalacja, środowiska, specyfikacja środowiska, architektura ucząca oraz tworzenie pętli uczenia i sterownika.

Na końcu książka skupia się na wielkoskalowym uczeniu i wdrażaniu modeli TensorFlow. Uczysz się, jak korzystać z TensorFlow Serving, jak tworzyć usługę predykcyjną na platformie GCP AI, wdrażać modele na urządzeniach mobilnych lub wbudowanych, a także jak przyspieszać obliczenia na GPU. Pojawiają się też tematy równoległości: zrównoleglanie danych i modelu, uczenie wielkoskalowe z użyciem strategii rozpraszania, klastery TensorFlow oraz strojenie hiperparametrów w usługach Google Cloud AI Platform.

Element Dane
Nazwa Uczenie maszynowe z użyciem Scikit-Learn i TensorFlow
SKU 5d9cba6a2db7
Cena 75.27 zł
Zakres tematyczny Podstawy uczenia maszynowego, TensorFlow 2 i Keras, metody klasyczne (m.in. SVM, drzewa, lasy losowe), sieci neuronowe i uczenie głębokie, TF Transform i TF Serving, uczenie nienadzorowane, wykrywanie anomalii, TF Agents, Computer Vision, NLP, autokodery i GAN, uczenie przez wzmacnianie, wdrażanie i skalowanie modeli
Autor Aurélien Géron

Dla kogo będzie to najlepszy wybór?

Jeżeli chcesz zbudować kompetencje od podstaw i dojść do poziomu, w którym potrafisz trenować oraz wdrażać modele, to ta pozycja jest bardzo dobrą drogą. Materiał jest prowadzony tak, by połączyć wiedzę o algorytmach z praktycznym sposobem pracy: od przygotowania danych, przez dobór modelu, po implementacje w TensorFlow 2 i Keras.

W książce znajdziesz też tematy, które przydają się niezależnie od branży: od wykrywania obiektów, segmentacji semantycznej i mechanizmów uwagi, po uczenie reprezentacji i generowanie oraz uczenie przez wzmacnianie. To sprawia, że łatwiej Ci później przenieść umiejętności do własnych projektów — zarówno w prototypach, jak i w rozwiązaniach produkcyjnych.

  • Minimalna teoria, maksimum praktyki — nauka przez przykłady i ćwiczenia.
  • Ekosystem TensorFlow 2 — Keras, TF Transform, TF Serving oraz TF Agents.

O autorze i podejście do nauczania

Aurélien Géron jest konsultantem do spraw uczenia maszynowego. Wcześniej pracował w korporacji Google, a w latach 2013–2016 kierował zespołem klasyfikowania filmów w YouTube. Był też założycielem i dyrektorem do spraw technicznych w firmie Wifirst (lata 2002–2012), a wcześniej pełnił podobne funkcje w Polyconseil. Takie doświadczenie przekłada się na sposób prowadzenia czytelnika: nacisk jest położony na praktyczne rozumienie procesu.

W efekcie otrzymujesz książkę, która nie tylko tłumaczy, jak działa uczenie maszynowe, ale też pomaga przejść przez typowe problemy: od niedoboru danych i niereprezentatywnych zbiorów, przez przetrenowanie i niedotrenowanie, po strojenie hiperparametrów i testowanie. To podejście jest spójne z tym, jak realnie wygląda praca z modelami w świecie projektów.

Jeśli szukasz przewodnika, który prowadzi od klasycznych metod po nowoczesne rozwiązania w stylu Uczenie maszynowe z użyciem Scikit-Learn i TensorFlow, ta pozycja daje Ci solidny zestaw narzędzi i pojęć — oraz pokazuje, jak je zastosować.