Uczenie głębokie i sztuczna inteligencja. Interaktywny przewodnik ilustrowany - ebook
Uczenie głębokie i sztuczna inteligencja. Interaktywny przewodnik ilustrowany - ebook
Uczenie maszynowe jest przyszłością naszej cywilizacji. Już dziś wywiera ogromny wpływ na nasze życie. Odmieniło kształt wielu sektorów: usług konsumenckich, inżynierii, bankowości, medycyny czy produkcji. Trudno też przewidzieć zmiany, jakie potęga sieci neuronowych przyniesie nam w nadchodzących latach. Osoby zajmujące się zawodowo uczeniem głębokim i sieciami neuronowymi mogą liczyć na ekscytujące możliwości, jednak zaawansowana matematyka i teoria stanowiące podstawę uczenia maszynowego mogą zniechęcać do prób poważnego zajęcia się tą dziedziną.
Ta książka jest nowatorskim podręcznikiem, w którym w zrozumiały, intuicyjny sposób opisano techniki sztucznej inteligencji. Została wzbogacona kolorowymi ilustracjami i zrozumiałym kodem, dzięki czemu pozwala o wiele łatwiej zagłębić się w złożoność modeli głębokiego uczenia. Trudniejsze zagadnienia matematyczne zostały ograniczone do niezbędnego minimum, przedstawiono je jednak w sposób maksymalnie przystępny. Po lekturze zrozumiesz, czym jest głębokie uczenie, dlaczego stało się tak popularne i jak się ma do innych dziedzin uczenia maszynowego. W pragmatyczny sposób opisano takie aspekty zastosowań głębokiego uczenia jak widzenie maszynowe, przetwarzanie języka naturalnego, generowanie obrazów, a nawet gra w różne gry. Prezentowane treści uzupełnia praktyczny kod i szereg wskazówek dotyczących korzystania z bibliotek Keras i TensorFlow.
W książce między innymi:
- teoretyczne podstawy sztucznej inteligencji, w tym sieci neuronowe i ich trening oraz optymalizacja
- sieci konwolucyjne, rekurencyjne, GAN, głębokie uczenie przez wzmacnianie
- potencjał systemów głębokiego uczenia
- narzędzia do tworzenia, stosowania i usprawniania modeli głębokiego uczenia
- tworzenie interaktywnych aplikacji opartych na głębokim uczeniu
Uczenie głębokie: przekonaj się na własne oczy!
Spis treści
- Spis ilustracji (xvii)
- Spis tabel (xxvii)
- Przykłady kodu (xxix)
- Przedmowa (xxxiii)
- Wstęp (xxxv)
- Podziękowania (xxxix)
- O autorach (xli)
I. WPROWADZENIE DO GŁĘBOKIEGO UCZENIA (1)
1. Widzenie biologiczne i maszynowe (3)
- Widzenie biologiczne (3)
- Widzenie maszynowe (8)
- Neocognitron (8)
- LeNet-5 (9)
- Tradycyjne podejście w uczeniu maszynowym (12)
- Sieć ImageNet i konkurs ILSVRC (13)
- AlexNet (14)
- Plac zabaw TensorFlow (17)
- Quick, Draw! (19)
- Podsumowanie (19)
2. Języki ludzki i maszynowy (21)
- Przetwarzanie języka naturalnego przy użyciu głębokiego uczenia (21)
- Sieci głębokiego uczenia automatycznie uczą się reprezentacji danych (22)
- Przetwarzanie języka naturalnego (23)
- Krótka historia wykorzystania głębokiego uczenia w przetwarzaniu języka naturalnego (24)
- Matematyczne reprezentacje języka (25)
- Kodowanie słów 1 z n (26)
- Wektory słów (27)
- Działania na wektorach słów (29)
- word2viz (30)
- Reprezentacje lokalne i rozproszone (32)
- Elementy naturalnego języka ludzi (33)
- Google Duplex (35)
- Podsumowanie (37)
3. Sztuka maszynowa (39)
- Zakrapiana impreza (39)
- Arytmetyka nieprawdziwych twarzy (41)
- Transfer stylu: konwersja zdjęcia na obraz Moneta (i odwrotnie) (44)
- Tworzenie własnych, fotograficznie realistycznych rysunków (45)
- Tworzenie realistycznych obrazów na podstawie tekstu (45)
- Przetwarzanie obrazów przy użyciu głębokiego uczenia (46)
- Podsumowanie (47)
4. Maszyny i gry (49)
- Głębokie uczenie, sztuczna inteligencja i inne bestie (49)
- Sztuczna inteligencja (49)
- Uczenie maszynowe (50)
- Uczenie się reprezentacji (51)
- Sztuczne sieci neuronowe (51)
- Głębokie uczenie (51)
- Widzenie maszynowe (52)
- Przetwarzanie języka naturalnego (53)
- Trzy kategorie problemów uczenia maszynowego (53)
- Uczenie nadzorowane (53)
- Uczenie nienadzorowane (54)
- Uczenie przez wzmacnianie (54)
- Głębokie uczenie przez wzmacnianie (56)
- Gry wideo (57)
- Gry planszowe (60)
- AlphaGo (60)
- AlphaGo Zero (62)
- AlphaZero (64)
- Manipulowanie obiektami (66)
- Popularne środowiska dla głębokiego uczenia przez wzmacnianie (68)
- OpenAI Gym (68)
- DeepMind Lab (68)
- Unity ML-Agents (71)
- Trzy kategorie sztucznej inteligencji (71)
- Sztuczna wąska inteligencja (71)
- Sztuczna ogólna inteligencja (71)
- Sztuczna superinteligencja (72)
- Podsumowanie (72)
II. PODSTAWY TEORETYCZNE W ILUSTRACJACH (73)
5. Wóz (kodu) przed koniem (teorii) (75)
- Wymagania (75)
- Instalacja (76)
- Prosta sieć i biblioteka Keras (76)
- Baza MNIST odręcznych cyfr (76)
- Schemat sieci (78)
- Załadowanie danych (79)
- Przeformatowanie danych (81)
- Zaprojektowanie architektury sieci neuronowej (82)
- Trenowanie modelu sieci neuronowej (83)
- Podsumowanie (84)
6. Sztuczny neuron wykrywający hot dogi (85)
- Biologiczna neuroanatomia (85)
- Perceptron (86)
- Wykrywacz: "hot dog" - "nie hot dog" (86)
- Najważniejsza formuła w tej książce (90)
- Współczesne neurony i funkcje aktywacji (91)
- Neuron sigmoidalny (92)
- Neuron tangensowy (94)
- Neuron ReLU (94)
- Wybór neuronu (96)
- Podsumowanie (96)
- Kluczowe pojęcia (97)
7. Sztuczne sieci neuronowe (99)
- Warstwa wejściowa (99)
- Warstwa zagęszczona (99)
- Zagęszczona sieć wykrywająca hot dogi (101)
- Propagacja w przód w pierwszej warstwie ukrytej (102)
- Propagacja w przód w kolejnych warstwach (103)
- Warstwa softmax w sieci wykrywającej hot dogi (105)
- Nowe spojrzenie na naszą płytką sieć (107)
- Podsumowanie (109)
- Kluczowe pojęcia (109)
8. Trenowanie głębokich sieci (111)
- Funkcja kosztu (111)
- Kwadratowa funkcja straty (112)
- Wysycenie neuronu (112)
- Entropia skrośna (113)
- Optymalizacja - uczenie się minimalizowania kosztu (115)
- Gradient prosty (115)
- Szybkość uczenia się (117)
- Wielkość paczki i stochastyczny gradient prosty (119)
- Ucieczka z lokalnego minimum (121)
- Propagacja wstecz (123)
- Dobór liczby warstw ukrytych i liczby neuronów (124)
- Średniogłęboka sieć w Keras (126)
- Podsumowanie (129)
- Kluczowe pojęcia (129)
9. Usprawnianie głębokich sieci (131)
- Inicjalizacja wag (131)
- Rozkłady Xaviera Glorota (134)
- Niestabilne gradienty (137)
- Zanikające gradienty (137)
- Eksplodujące gradienty (137)
- Normalizacja paczki (138)
- Uogólnianie modelu (zapobieganie nadmiernemu dopasowaniu) (139)
- Regularyzacja L1 i L2 (141)
- Dropout (141)
- Powiększenie danych (144)
- Pomysłowe optymalizatory (144)
- Impet (144)
- Impet Nesterowa (145)
- AdaGrad (145)
- AdaDelta i RMSprop (146)
- Adam (146)
- Głęboka sieć neuronowa w Keras (147)
- Regresja (148)
- TensorBoard (151)
- Podsumowanie (153)
- Kluczowe pojęcia (154)
III. INTERAKTYWNE ZASTOSOWANIA GŁĘBOKIEGO UCZENIA (155)
10. Widzenie maszynowe (157)
- Konwolucyjne sieci neuronowe (157)
- Dwuwymiarowa struktura obrazów (157)
- Złożoność obliczeniowa (158)
- Warstwy konwolucyjne (158)
- Wielokrotne filtry (160)
- Konwolucyjny przykład (161)
- Hiperparametry filtru konwolucyjnego (165)
- Warstwy redukujące (166)
- Sieć LeNet-5 w Keras (168)
- Sieci AlexNet i VGGNet w Keras (173)
- Sieci rezydualne (176)
- Zanikający gradient - zmora głębokiej sieci konwolucyjnej (176)
- Połączenia rezydualne (177)
- Sieć ResNet (178)
- Zastosowania widzenia maszynowego (180)
- Wykrywanie obiektów (180)
- Segmentacja obrazów (183)
- Uczenie transferowe (185)
- Sieci kapsułowe (189)
- Podsumowanie (190)
- Kluczowe pojęcia (191)
11. Przetwarzanie języka naturalnego (193)
- Wstępne przetwarzanie danych języka naturalnego (193)
- Tokenizacja (196)
- Zamiana wszystkich znaków na małe litery (198)
- Usunięcie stop-słów i interpunkcji (198)
- Stemming (199)
- Przetwarzanie n-gramów (200)
- Wstępne przetworzenie całego korpusu (202)
- Osadzanie słów przy użyciu techniki word2vec (205)
- Teoretyczne podstawy techniki word2vec (206)
- Ocenianie wektorów słów (208)
- Stosowanie techniki word2vec (208)
- Tworzenie wykresów wektorów słów (212)
- Pole pod krzywą ROC (215)
- Macierz pomyłek (217)
- Wyliczanie pola pod krzywą ROC (218)
- Klasyfikowanie języka naturalnego za pomocą znanych sieci (220)
- Załadowanie recenzji filmów z bazy IMDb (221)
- Badanie bazy IMDb (224)
- Ujednolicenie długości recenzji (227)
- Sieć zagęszczona (227)
- Sieci konwolucyjne (234)
- Sieci przystosowane do danych sekwencyjnych (238)
- Rekurencyjne sieci neuronowe (238)
- Jednostka LSTM (242)
- Dwukierunkowa jednostka LSTM (245)
- Spiętrzone modele rekurencyjne (246)
- Techniki sekwencja-sekwencja i atencja (248)
- Uczenie transferowe w przetwarzaniu języka naturalnego (249)
- Modele niesekwencyjne: funkcyjny interfejs API biblioteki Keras (249)
- Podsumowanie (254)
- Kluczowe pojęcia (255)
12. Sieci GAN (257)
- Teoretyczne podstawy sieci GAN (257)
- Zbiór rysunków Quick, Draw! (260)
- Sieć dyskryminatora (263)
- Sieć generatora (266)
- Sieć antagonistyczna (269)
- Trening sieci GAN (271)
- Podsumowanie (278)
- Kluczowe pojęcia (279)
13. Głębokie uczenie przez wzmacnianie (281)
- Podstawy teoretyczne uczenia przez wzmacnianie (281)
- Gra Cart-Pole (282)
- Proces decyzyjny Markowa (284)
- Optymalna polityka (286)
- Podstawy teoretyczne sieci głębokiego Q-uczenia (287)
- Funkcja wartości (288)
- Funkcja Q-wartości (288)
- Szacowanie optymalnej Q-wartości (289)
- Definiowanie agenta sieci DQN (290)
- Parametry inicjalizacyjne (293)
- Tworzenie sieci neuronowej agenta (294)
- Rejestrowanie przebiegu gry (295)
- Trening poprzez odtwarzanie zapisanych informacji (295)
- Wybór czynności do wykonania (297)
- Zapisywanie i ładowanie parametrów modelu (297)
- Interakcja ze środowiskiem OpenAI Gym (297)
- Optymalizacja hiperparametrów za pomocą narzędzia SLM Lab (301)
- Agenci nie tylko DQN (303)
- Algorytmy gradientu polityki i REINFORCE (304)
- Algorytm aktor-krytyk (304)
- Podsumowanie (305)
- Kluczowe pojęcia (306)
IV TY I SZTUCZNA INTELIGENCJA (307)
14. Rozwijanie własnych projektów głębokiego uczenia (309)
- Pomysły na projekty głębokiego uczenia (309)
- Widzenie maszynowe i sieci GAN (309)
- Przetwarzanie języka naturalnego (311)
- Głębokie uczenie przez wzmacnianie (312)
- Przekształcanie istniejących projektów uczenia maszynowego (312)
- Materiały do kolejnych projektów (313)
- Projekty pożytku publicznego (314)
- Proces modelowania i strojenie hiperparametrów (314)
- Automatyzacja strojenia hiperparametrów (316)
- Biblioteki głębokiego uczenia (317)
- Keras i TensorFlow (317)
- PyTorch (319)
- MXNet, CNTK, Caffe i inne biblioteki (320)
- Software 2.0 (320)
- Nadejście ogólnej sztucznej inteligencji (322)
- Podsumowanie (324)
DODATKI (327)
A Formalna notacja sieci neuronowych (329)
B Propagacja wstecz (331)
C Biblioteka PyTorch (335)
- Funkcjonalności biblioteki PyTorch (335)
- System autograd (335)
- Zasada "definiowanie przez działanie" (335)
- Biblioteka PyTorch kontra TensorFlow (336)
- PyTorch w praktyce (337)
- Instalacja (337)
- Podstawowe jednostki (337)
- Tworzenie głębokiej sieci neuronowej (339)
Źródła ilustracji (341)
Kategoria: | Inżynieria i technika |
Zabezpieczenie: |
Watermark
|
ISBN: | 978-83-283-7915-2 |
Rozmiar pliku: | 33 MB |