-
nowość
Python. Uczenie maszynowe w przykładach. Najlepsze praktyki w realnych zastosowaniach - ebook
Python. Uczenie maszynowe w przykładach. Najlepsze praktyki w realnych zastosowaniach - ebook
Python wraz ze swoimi bibliotekami umożliwia tworzenie coraz bardziej wyrafinowanych implementacji algorytmów uczenia maszynowego. Dzięki temu systemy przetwarzania języka naturalnego i obrazów wkraczają do naszego życia na szeroką skalę. Aby jednak uzyskiwać najlepsze wyniki w tej dziedzinie, potrzebna jest znajomość dobrych praktyk.
Oto trzecie wydanie popularnego podręcznika, z którym nauczysz się stosować zaawansowane techniki uczenia maszynowego. Zawiera dwa nowe rozdziały poświęcone architekturze Transformer oraz modelom takim jak BERT i GPT, jak również multimodalnym modelom komputerowego rozpoznawania obrazów implementowanym z wykorzystaniem PyTorch i Hugging Face. Znajdziesz tu solidną dawkę teorii połączonej z przykładami jej praktycznego zastosowania. Dzięki lekturze poszerzysz wiedzę z zakresu uczenia głębokiego, odkryjesz pełny potencjał zaawansowanych technik uczenia maszynowego i łatwiej sprostasz codziennym wyzwaniom.
W książce między innymi:
- najlepsze praktyki uczenia maszynowego
- budowa i ulepszanie klasyfikatorów obrazów
- tworzenie i strojenie sieci neuronowych z wykorzystaniem TensorFlow i PyTorch
- rekurencyjne sieci neuronowe, transformery i model CLIP
- maszyna wektorów nośnych i poprawa ich wydajności
- regularyzacja, wybór cech i wiele innych przydatnych technik
Najlepsze praktyki uczenia maszynowego? Tylko z Pythonem!
Spis treści
O korektorach merytorycznych
Przedmowa
Rozdział 1. Pierwsze kroki z uczeniem maszynowym i Pythonem
- Wprowadzenie do uczenia maszynowego
- Dlaczego uczenie maszynowe jest potrzebne?
- Różnice między uczeniem maszynowym a automatyką
- Zastosowania uczenia maszynowego
- Wstępne wymagania
- Trzy rodzaje uczenia maszynowego
- Krótka historia rozwoju algorytmów uczenia maszynowego
- Istota uczenia maszynowego
- Uogólnianie danych
- Nadmierne i niedostateczne dopasowanie modelu oraz kompromis między obciążeniem a wariancją
- Zapobieganie nadmiernemu dopasowaniu poprzez weryfikację krzyżową
- Zapobieganie nadmiernemu dopasowaniu za pomocą regularyzacji
- Zapobieganie nadmiernemu dopasowaniu poprzez selekcję cech i redukcję wymiarowości
- Wstępne przetwarzanie danych i inżynieria cech
- Wstępne przetwarzanie i eksploracja danych
- Inżynieria cech
- Łączenie modeli
- Głosowanie i uśrednianie
- Agregacja bootstrap
- Wzmacnianie
- Składowanie
- Instalacja i konfiguracja oprogramowania
- Przygotowanie Pythona i środowiska pracy
- Instalacja najważniejszych pakietów Pythona
- Podsumowanie
- Ćwiczenia
Rozdział 2. Tworzenie systemu rekomendacji filmów na bazie naiwnego klasyfikatora Bayesa
- Pierwsze kroki z klasyfikacją
- Klasyfikacja binarna
- Klasyfikacja wieloklasowa
- Klasyfikacja wieloetykietowa
- Naiwny klasyfikator Bayesa
- Twierdzenie Bayesa w przykładach
- Mechanizm działania naiwnego klasyfikatora Bayesa
- Implementacja naiwnego klasyfikatora Bayesa
- Implementacja od podstaw
- Implementacja z wykorzystaniem pakietu scikit-learn
- Budowanie systemu rekomendacyjnego na bazie klasyfikatora Bayesa
- Wstępne przygotowanie danych
- Trenowanie naiwnego klasyfikatora Bayesa
- Ocena jakości klasyfikacji
- Strojenie modeli poprzez weryfikację krzyżową
- Podsumowanie
- Ćwiczenia
- Bibliografia
Rozdział 3. Prognozowanie kliknięć reklam internetowych przy użyciu algorytmów drzewiastych
- Wprowadzenie do prognozowania kliknięć reklam
- Wprowadzenie do dwóch typów danych: liczbowych i kategorialnych
- Badanie drzewa decyzyjnego od korzeni do liści
- Budowanie drzewa decyzyjnego
- Wskaźniki jakości podziału zbioru
- Implementacja drzewa decyzyjnego od podstaw
- Implementacja drzewa decyzyjnego za pomocą biblioteki scikit-learn
- Prognozowanie kliknięć reklam za pomocą drzewa decyzyjnego
- Gromadzenie drzew decyzyjnych: las losowy
- Gromadzenie drzew decyzyjnych: drzewa ze wzmocnieniem gradientowym
- Podsumowanie
- Ćwiczenia
Rozdział 4. Prognozowanie kliknięć reklam internetowych przy użyciu regresji logistycznej
- Przekształcanie cech kategorialnych w liczbowe: kodowanie porządkowe i "1 z n"
- Klasyfikowanie danych z wykorzystaniem regresji logistycznej
- Wprowadzenie do funkcji logistycznej
- Przejście od funkcji logistycznej do regresji logistycznej
- Trening modelu opartego na regresji logistycznej
- Trening modelu opartego na regresji logistycznej z gradientem prostym
- Prognozowanie kliknięć reklam z wykorzystaniem regresji logistycznej z gradientem prostym
- Trening modelu opartego na regresji logistycznej ze stochastycznym gradientem prostym (SGD)
- Trening modelu opartego na regresji logistycznej z regularyzacją
- Selekcja cech w regularyzacji L1
- Selekcja cech z wykorzystaniem lasu losowego
- Trening modelu na dużym zbiorze danych z uczeniem online
- Klasyfikacja wieloklasowa
- Implementacja regresji logistycznej za pomocą pakietu TensorFlow
- Podsumowanie
- Ćwiczenia
Rozdział 5. Prognozowanie cen akcji za pomocą algorytmów regresji
- Co to jest regresja?
- Pozyskiwanie cen akcji
- Krótkie wprowadzenie do giełdy i cen akcji
- Pierwsze kroki z inżynierią cech
- Pozyskiwanie danych i generowanie cech
- Szacowanie za pomocą regresji liniowej
- Jak działa regresja liniowa?
- Implementacja regresji liniowej od podstaw
- Implementacja regresji liniowej z wykorzystaniem pakietu scikit-learn
- Implementacja regresji liniowej z wykorzystaniem pakietu TensorFlow
- Prognozowanie za pomocą regresyjnego drzewa decyzyjnego
- Przejście od drzewa klasyfikacyjnego do regresyjnego
- Implementacja regresyjnego drzewa decyzyjnego
- Implementacja lasu regresyjnego
- Ocena jakości regresji
- Prognozowanie cen akcji za pomocą trzech algorytmów regresji
- Podsumowanie
- Ćwiczenia
Rozdział 6. Prognozowanie cen akcji za pomocą sztucznych sieci neuronowych
- Demistyfikacja sieci neuronowych
- Pierwsze kroki z jednowarstwową siecią neuronową
- Funkcje aktywacji
- Propagacja wstecz
- Wprowadzanie kolejnych warstw do sieci neuronowej i uczenie głębokie
- Tworzenie sieci neuronowej
- Implementacja sieci neuronowej od podstaw
- Implementacja sieci neuronowej przy użyciu pakietu scikit-learn
- Implementacja sieci neuronowej przy użyciu pakietu TensorFlow
- Tworzenie sieci neuronowych z wykorzystaniem PyTorch
- Dobór właściwej funkcji aktywacji
- Zapobieganie nadmiernemu dopasowaniu sieci
- Dropout
- Wczesne zakończenie treningu
- Prognozowanie cen akcji za pomocą sieci neuronowej
- Trening prostej sieci neuronowej
- Dostrojenie parametrów sieci neuronowej
- Podsumowanie
- Ćwiczenie
Rozdział 7. Badanie 20 grup dyskusyjnych przy użyciu technik analizy tekstu
- Jak komputery rozumieją ludzi, czyli przetwarzanie języka naturalnego
- Czym jest przetwarzanie języka naturalnego?
- Historia przetwarzania języka naturalnego
- Zastosowania przetwarzania języka naturalnego
- Przegląd bibliotek Pythona i podstawy przetwarzania języka naturalnego
- Instalacja najważniejszych bibliotek
- Korpusy
- Tokenizacja
- Oznaczanie części mowy
- Rozpoznawanie jednostek nazwanych
- Stemming i lematyzacja
- Modelowanie semantyczne i tematyczne
- Pozyskiwanie danych z grup dyskusyjnych
- Badanie danych z grup dyskusyjnych
- Przetwarzanie cech danych tekstowych
- Zliczanie wystąpień wszystkich tokenów
- Wstępne przetwarzanie tekstu
- Usuwanie stop-słów
- Upraszczanie odmian
- Wizualizacja danych tekstowych z wykorzystaniem techniki t-SNE
- Co to jest redukcja wymiarowości?
- Redukcja wymiarowości przy użyciu techniki t-SNE
- Reprezentowanie słów w formie gęstych wektorów - osadzenia słów
- Podsumowanie
- Ćwiczenia
Rozdział 8. Wyszukiwanie ukrytych tematóww grupach dyskusyjnych poprzez ich klastrowanie i modelowanie tematyczne
- Nauka bez wskazówek, czyli uczenie nienadzorowane
- Klastrowanie grup dyskusyjnych metodą k-średnich
- Jak działa klastrowanie metodą k-średnich?
- Implementacja klastrowania metodą k-średnich od podstaw
- Implementacja klastrowania metodą k-średnich z wykorzystaniem pakietu scikit-learn
- Dobór wartości k
- Klastrowanie danych z grup dyskusyjnych
- Klastrowanie danych z grup dyskusyjnych metodą k-średnich
- Opisywanie klastrów przy użyciu narzędzia ChatGPT
- Odkrywanie ukrytych tematów grup dyskusyjnych
- Modelowanie tematyczne z wykorzystaniem nieujemnej faktoryzacji macierzy
- Modelowanie tematyczne z wykorzystaniem ukrytej alokacji Dirichleta
- Podsumowanie
- Ćwiczenia
Rozdział 9. Rozpoznawanie twarzy przy użyciu maszyny wektorów nośnych
- Określanie granic klas za pomocą maszyny wektorów nośnych
- Scenariusz 1. Określenie hiperpłaszczyzny rozdzielającej
- Scenariusz 2. Określenie optymalnej hiperpłaszczyzny rozdzielającej
- Scenariusz 3. Przetwarzanie punktów odstających
- Implementacja maszyny wektorów nośnych
- Scenariusz 4. Więcej niż dwie klasy
- Scenariusz 5. Rozwiązywanie nierozdzielnego liniowo problemu za pomocą jądra
- Wybór między jądrem liniowym a radialną funkcją bazową
- Klasyfikowanie zdjęć twarzy za pomocą maszyny wektorów nośnych
- Badanie zbioru zdjęć twarzy
- Tworzenie klasyfikatora obrazów opartego na maszynie wektorów nośnych
- Zwiększanie skuteczności klasyfikatora obrazów za pomocą analizy głównych składowych
- Szacowanie z użyciem regresji wektorów nośnych
- Rozwiązanie regresji wektorów nośnych
- Podsumowanie
- Ćwiczenia
Rozdział 10. Dobre praktyki uczenia maszynowego
- Proces rozwiązywania problemów uczenia maszynowego
- Najlepsze praktyki przygotowywania danych
- Dobra praktyka nr 1. Dokładne poznanie celu projektu
- Dobra praktyka nr 2. Zbieranie wszystkich istotnych pól
- Dobra praktyka nr 3. Ujednolicenie danych
- Dobra praktyka nr 4. Opracowanie niekompletnych danych
- Dobra praktyka nr 5. Przechowywanie dużych ilości danych
- Dobre praktyki tworzenia zbioru treningowego
- Dobra praktyka nr 6. Oznaczanie cech kategorialnych liczbami
- Dobra praktyka nr 7. Rozważenie kodowania cech kategorialnych
- Dobra praktyka nr 8. Rozważenie selekcji cech i wybór odpowiedniej metody
- Dobra praktyka nr 9. Rozważenie redukcji wymiarowości i wybór odpowiedniej metody
- Dobra praktyka nr 10. Rozważenie normalizacji cech
- Dobra praktyka nr 11. Inżynieria cech na bazie wiedzy eksperckiej
- Dobra praktyka nr 12. Inżynieria cech bez wiedzy eksperckiej
- Dobra praktyka nr 13. Dokumentowanie procesu tworzenia cech
- Dobra praktyka nr 14. Wyodrębnianie cech z danych tekstowych
- Najlepsze praktyki trenowania, oceniania i wybierania modelu
- Dobra praktyka nr 15. Wybór odpowiedniego algorytmu początkowego
- Dobra praktyka nr 16. Zapobieganie nadmiernemu dopasowaniu
- Dobra praktyka nr 17. Diagnozowanie nadmiernego i niedostatecznego dopasowania
- Dobra praktyka nr 18. Modelowanie dużych zbiorów danych
- Dobre praktyki wdrażania i monitorowania modelu
- Dobra praktyka nr 19. Zapisywanie, ładowanie i wielokrotne stosowanie modelu
- Dobra praktyka nr 20. Monitorowanie skuteczności modelu
- Dobra praktyka nr 21. Regularne aktualizowanie modelu
- Podsumowanie
- Ćwiczenia
Rozdział 11. Kategoryzacja zdjęć odzieży przy użyciu konwolucyjnej sieci neuronowej
- Prezentacja bloków konstrukcyjnych konwolucyjnej sieci neuronowej
- Warstwa konwolucyjna
- Warstwa nieliniowa
- Warstwa redukująca
- Budowanie konwolucyjnej sieci neuronowej na potrzeby klasyfikacji
- Badanie zbioru zdjęć odzieży
- Klasyfikowanie zdjęć odzieży za pomocą konwolucyjnej sieci neuronowej
- Tworzenie sieci
- Trening sieci
- Wizualizacja filtrów konwolucyjnych
- Wzmacnianie konwolucyjnej sieci neuronowej poprzez uzupełnianie danych
- Obracanie obrazów w poziomie i pionie
- Obracanie obrazów
- Przycinanie obrazów
- Usprawnianie klasyfikatora obrazów poprzez uzupełnianie danych
- Rozwijanie klasyfikatora z wykorzystaniem uczenia transferowego
- Rozwój architektur sieci konwolucyjnych oraz wstępnie wytrenowanych modeli
- Poprawa klasyfikatora obrazów odzieży poprzez dostrajanie sieci ResNet
- Podsumowanie
- Ćwiczenia
Rozdział 12. Prognozowanie sekwencji danych przy użyciu rekurencyjnej sieci neuronowej
- Wprowadzenie do uczenia sekwencyjnego
- Architektura rekurencyjnej sieci neuronowej na przykładzie
- Mechanizm rekurencyjny
- Sieć typu "wiele do jednego"
- Sieć typu "jedno do wielu"
- Sieć synchroniczna typu "wiele do wielu"
- Sieć niesynchroniczna typu "wiele do wielu"
- Trening rekurencyjnej sieci neuronowej
- Długoterminowe zależności i sieć LSTM
- Analiza recenzji filmowych za pomocą rekurencyjnej sieci neuronowej
- Analiza i wstępne przetworzenie recenzji
- Zbudowanie prostej sieci LSTM
- Poprawa skuteczności poprzez wprowadzenie dodatkowych warstw
- Prognozowanie cen akcji przy użyciu sieci LSTM
- Pisanie nowej powieści Wojna i pokój za pomocą rekurencyjnej sieci neuronowej
- Pozyskanie i analiza danych treningowych
- Utworzenie zbioru treningowego dla generatora tekstu
- Utworzenie generatora tekstu
- Podsumowanie
- Ćwiczenia
Rozdział 13. Ulepszanie rozumienia i generowania tekstów z wykorzystaniem modeli transformerów
- Mechanizm samouwagi
- Reprezentacje klucza, wartości i zapytania
- Uwaga wielogłowa
- Prezentacja architektury Transformera
- Struktura koder-dekoder
- Kodowanie pozycyjne
- Normalizacja warstwy
- Udoskonalanie analizy sentymentu przy użyciu modelu BERT i transformerów
- Wstępne trenowanie modelu BERT
- Dostrajanie modelu BERT
- Dostrajanie wstępnie wytrenowanego modelu BERT do analizy sentymentu
- Wykorzystanie API Trainer do szkolenia modeli Transformer
- Generowanie tekstu przy użyciu modelu GPT
- Wstępne trenowanie GPT i generowanie autoregresywne
- Tworzenie własnej wersji Wojny i pokoju przy użyciu GPT
- Podsumowanie
- Ćwiczenia
Rozdział 14. Budowanie wyszukiwarki obrazów z wykorzystaniem modelu CLIP - podejście multimodalne
- Przedstawiamy model CLIP
- Zrozumienie mechanizmu działania modelu CLIP
- Badanie zastosowań modelu CLIP
- Rozpoczęcie pracy z zestawem danych
- Pozyskiwanie zbioru danych Flickr8k
- Wczytywanie zbioru danych Flickr8k
- Projektowanie modelu CLIP
- Mechanizm projekcji w uczeniu kontrastowym
- Wyszukiwanie obrazów za pomocą słów
- Trenowanie modelu CLIP
- Generowanie osadzeń dla obrazów i tekstu w celu identyfikacji dopasowań
- Wyszukiwanie obrazów przy użyciu wstępnie wytrenowanego modelu CLIP
- Klasyfikacja metodą zero-shot
- Podsumowanie
- Ćwiczenia
- Bibliografia
Rozdział 15. Podejmowanie decyzji w skomplikowanych warunkach z wykorzystaniem uczenia przez wzmacnianie
- Przygotowanie środowiska do uczenia przez wzmacnianie
- Wprowadzenie do pakietów narzędziowych Gym i Gymnasium
- Instalowanie Gymnasium
- Wprowadzenie do uczenia przez wzmacnianie z przykładami
- Komponenty uczenia przez wzmacnianie
- Sumaryczna nagroda
- Algorytmy uczenia przez wzmacnianie
- Problem FrozenLake i programowanie dynamiczne
- Utworzenie środowiska FrozenLake
- Rozwiązanie problemu przy użyciu algorytmu iteracji wartości
- Rozwiązanie problemu przy użyciu algorytmu iteracji polityki
- Metoda Monte Carlo uczenia przez wzmacnianie
- Utworzenie środowiska Blackjack
- Ocenianie polityki w metodzie Monte Carlo
- Sterowanie Monte Carlo z polityką
- Rozwiązywanie problemu Blackjack przy użyciu algorytmu Q-uczenia
- Wprowadzenie do algorytmu Q-uczenia
- Implementacja algorytmu Q-uczenia
- Podsumowanie
- Ćwiczenia
Skorowidz
| Kategoria: | Programowanie |
| Zabezpieczenie: |
Watermark
|
| ISBN: | 978-83-289-3172-5 |
| Rozmiar pliku: | 18 MB |