Deep Learning. Uczenie głębokie z językiem Python. Sztuczna inteligencja i sieci neuronowe - ebook
Deep Learning. Uczenie głębokie z językiem Python. Sztuczna inteligencja i sieci neuronowe - ebook
Na naszych oczach dokonuje się przełom: technologie wykorzystujące rozmaite formy sztucznej inteligencji zaczynają się pojawiać w różnych branżach. Niektórzy nawet nie zdają sobie sprawy, jak często i jak powszechnie stosuje się algorytmy uczenia głębokiego. Możliwości w tym zakresie stale rosną. Wzrasta też zapotrzebowanie na inżynierów, którzy swobodnie operują wiedzą o uczeniu głębokim i są w stanie zaimplementować potrzebne algorytmy w konkretnym oprogramowaniu. Uczenie głębokie jest jednak dość złożonym zagadnieniem, a przyswojenie sobie potrzebnych umiejętności wymaga wysiłku.
Ta książka stanowi doskonałe wprowadzenie w temat uczenia głębokiego. Wyjaśniono tu najważniejsze pojęcia uczenia maszynowego. Pokazano, do czego mogą się przydać takie narzędzia jak pakiet scikit-learn, biblioteki Theano, Keras czy TensorFlow. Ten praktyczny przewodnik znakomicie ułatwi zrozumienie zagadnień rozpoznawania wzorców, dokładnego skalowania danych, pozwoli też na rzetelne zapoznanie się z algorytmami i technikami uczenia głębokiego. Autorzy zaproponowali wykorzystanie w powyższych celach języka Python - ulubionego narzędzia wielu badaczy i pasjonatów nauki.
W książce między innymi:
- Solidne podstawy uczenia maszynowego i sieci neuronowych
- Trening systemów sztucznej inteligencji w grach komputerowych
- Rozpoznawanie obrazów
- Rekurencyjne sieci neuronowej w modelowaniu języka
- Budowa systemów wykrywania oszustw i włamań
Uczenie głębokie: zajrzyj w przyszłość programowania!
Dr Valentino Zokka opracował wiele algorytmów matematycznych i modeli prognostycznych dla firmy Boeing. Obecnie jest konsultantem w branży finansowej.
Gianmario Spacagna pracuje w firmie Pirelli, gdzie buduje systemy maszynowego uczenia się i kompletne rozwiązania do produktów informacyjnych.
Daniel Slater tworzył oprogramowanie do oceny ryzyka dla branży finansowej. Obecnie zajmuje się systemami do przetwarzania dużych ilości danych i analizy zachowań użytkowników.
Peter Roelants specjalizuje się w stosowaniu technik uczenia głębokiego do badań spektralnych obrazów, rozpoznawania mowy czy ekstrakcji danych z dokumentów.
Spis treści
O autorach (9)
O recenzencie (11)
Przedmowa (13)
- Co zawiera książka? (13)
- Co jest potrzebne podczas lektury tej książki? (14)
- Dla kogo jest ta książka? (15)
- Konwencje (15)
- Pobieranie przykładowego kodu (16)
- Pobieranie kolorowych ilustracji do tej książki (16)
Rozdział 1. Uczenie maszynowe - wprowadzenie (17)
- Czym jest uczenie maszynowe? (18)
- Różne podejścia do uczenia maszynowego (19)
- Uczenie nadzorowane (19)
- Uczenie nienadzorowane (22)
- Uczenie przez wzmacnianie (23)
- Fazy systemów uczenia maszynowego (24)
- Krótki opis popularnych technik (algorytmów) (28)
- Zastosowania praktyczne (40)
- Popularny pakiet open source (42)
- Podsumowanie (48)
Rozdział 2. Sieci neuronowe (49)
- Dlaczego sieci neuronowe? (50)
- Podstawy (51)
- Neurony i warstwy (52)
- Różne rodzaje funkcji aktywacji (56)
- Algorytm propagacji wstecznej (61)
- Zastosowania praktyczne (68)
- Przykład kodu sieci neuronowej dla funkcji XOR (70)
- Podsumowanie (75)
Rozdział 3. Podstawy uczenia głębokiego (77)
- Czym jest uczenie głębokie? (78)
- Podstawowe pojęcia (80)
- Uczenie się cech (81)
- Algorytmy uczenia głębokiego (88)
- Zastosowania uczenia głębokiego (89)
- Rozpoznawanie mowy (90)
- Rozpoznawanie i klasyfikacja obiektów (91)
- GPU kontra CPU (94)
- Popularne biblioteki open source - wprowadzenie (96)
- Theano (96)
- TensorFlow (97)
- Keras (97)
- Przykład implementacji głębokiej sieci neuronowej za pomocą biblioteki Keras (98)
- Podsumowanie (102)
Rozdział 4. Nienadzorowane uczenie cech (105)
- Autoenkodery (107)
- Projekt sieci (110)
- Metody regularyzacji dla autoenkoderów (113)
- Autoenkodery - podsumowanie (117)
- Ograniczone maszyny Boltzmanna (119)
- Sieci Hopfielda a maszyny Boltzmanna (121)
- Maszyna Boltzmanna (123)
- Ograniczona maszyna Boltzmanna (125)
- Implementacja za pomocą biblioteki TensorFlow (126)
- Sieci DBN (130)
- Podsumowanie (132)
Rozdział 5. Rozpoznawanie obrazów (135)
- Podobieństwa pomiędzy modelami sztucznymi a biologicznymi (136)
- Intuicja i uzasadnianie (137)
- Warstwy konwolucyjne (138)
- Parametry krok i wypełnienie w warstwach konwolucyjnych (144)
- Warstwy pooling (145)
- Dropout (147)
- Warstwy konwolucyjne w uczeniu głębokim (147)
- Warstwy konwolucyjne w bibliotece Theano (148)
- Przykład zastosowania warstwy konwolucyjnej do rozpoznawania cyfr za pomocą biblioteki Keras (150)
- Przykład zastosowania warstwy konwolucyjnej za pomocą biblioteki Keras dla zbioru danych CIFAR10 (153)
- Szkolenie wstępne (155)
- Podsumowanie (156)
Rozdział 6. Rekurencyjne sieci neuronowe i modele języka (159)
- Rekurencyjne sieci neuronowe (160)
- RNN - jak implementować i trenować? (162)
- Długa pamięć krótkotrwała (168)
- Modelowanie języka (171)
- Modele na bazie słów (171)
- Modele bazujące na znakach (176)
- Rozpoznawanie mowy (183)
- Potok rozpoznawania mowy (183)
- Mowa jako dane wejściowe (184)
- Przetwarzanie wstępne (185)
- Model akustyczny (186)
- Dekodowanie (189)
- Modele od końca do końca (190)
- Podsumowanie (190)
- Bibliografia (190)
Rozdział 7. Uczenie głębokie w grach planszowych (195)
- Pierwsze systemy AI grające w gry (197)
- Wykorzystanie algorytmu min-max do oceny stanów gry (198)
- Implementacja gry w kółko i krzyżyk w Pythonie (201)
- Uczenie funkcji wartości (209)
- Trenowanie systemu AI do uzyskania mistrzostwa w grze w Go (210)
- Zastosowanie górnych granic zaufania do drzew (213)
- Uczenie głębokie w algorytmie przeszukiwania drzewa Monte Carlo (220)
- Krótkie przypomnienie technik uczenia przez wzmacnianie (222)
- Metoda policy gradients w funkcjach strategii uczenia (222)
- Metoda policy gradients w AlphaGo (230)
- Podsumowanie (232)
Rozdział 8. Uczenie głębokie w grach komputerowych (235)
- Techniki uczenia nadzorowanego w odniesieniu do gier (235)
- Zastosowanie algorytmów genetycznych do grania w gry komputerowe (237)
- Q-learning (238)
- Funkcja Q (240)
- Q-learning w akcji (241)
- Gry dynamiczne (246)
- Odtwarzanie doświadczeń (250)
- Epsilon zachłanny (253)
- Breakout na Atari (254)
- Losowy test gry w Breakout na Atari (255)
- Wstępne przetwarzanie ekranu (257)
- Tworzenie głębokiej sieci konwolucyjnej (259)
- Problemy zbieżności w technikach Q-learning (263)
- Technika policy gradients kontra Q-learning (265)
- Metody aktor-krytyk (266)
- Metoda baseline do redukcji wariancji (267)
- Uogólniony estymator korzyści (267)
- Metody asynchroniczne (268)
- Podejścia bazujące na modelach (269)
- Podsumowanie (272)
Rozdział 9. Wykrywanie anomalii (273)
- Co to jest wykrywanie anomalii i wykrywanie elementów odstających? (274)
- Rzeczywiste zastosowania mechanizmów wykrywania anomalii (277)
- Popularne płytkie techniki uczenia maszynowego (278)
- Modelowanie danych (279)
- Modelowanie wykrywania (279)
- Wykrywanie anomalii z wykorzystaniem głębokich autoenkoderów (281)
- H2O (283)
- Wprowadzenie do pracy z H2O (285)
- Przykłady (285)
- Rozpoznawanie anomalii wykrywania cyfr z wykorzystaniem zestawu danych MNIST (286)
- Podsumowanie (298)
Rozdział 10. Budowanie gotowego do produkcji systemu wykrywania włamań (301)
- Czym jest produkt danych? (302)
- Trening (304)
- Inicjalizacja wag (304)
- Współbieżny algorytm SGD z wykorzystaniem techniki HOGWILD! (306)
- Uczenie adaptacyjne (308)
- Uczenie rozproszone z wykorzystaniem mechanizmu MapReduce (314)
- Sparkling Water (317)
- Testowanie (320)
- Walidacja modelu (326)
- Dostrajanie hiperparametrów (335)
- Ocena od końca do końca (338)
- Podsumowanie zagadnień związanych z testowaniem (342)
- Wdrażanie (343)
- Eksport modelu do formatu POJO (344)
- Interfejsy API oceny anomalii (347)
- Podsumowanie wdrażania (349)
- Podsumowanie (350)
Skorowidz (351)
Kategoria: | Programowanie |
Zabezpieczenie: |
Watermark
|
ISBN: | 978-83-283-4174-6 |
Rozmiar pliku: | 8,3 MB |