Inteligentna sieć. Algorytmy przyszłości. Wydanie II - Helion
Tytuł oryginału: Algorithms of the Intelligent Web, 2nd Edition
Tłumaczenie: Tomasz Walczak
ISBN: 978-83-283-3250-8
stron: 248, Format: 168x237, okładka: miękka
Data wydania: 2017-04-24
Księgarnia: Helion
Nakład wyczerpany
Określenie „inteligentna sieć” może przywodzić na myśl futurystyczną wizję maszyn przejmujących kontrolę nad światem i niszczących ludzkość, jednak w rzeczywistości jest związane z rozwojem technologii. Związane jest z powstawaniem oprogramowania, które potrafi się uczyć i reagować na zachowania użytkowników. Oznacza też projektowanie i implementację inteligencji maszynowej. Inteligentna sieć rozwija się tu i teraz — znajomość zagadnień uczenia maszynowego i budowy inteligentnych algorytmów staje się bardzo potrzebna inżynierom oprogramowania!
Niniejsza książka jest przeznaczona dla osób, które chcą projektować inteligentne algorytmy, a przy tym mają podstawy z zakresu programowania, matematyki i statystyki. Przedstawiono tu schematy projektowe i praktyczne przykłady rozwiązań. Opisano algorytmy, które przetwarzają strumienie danych pochodzące z internetu, a także systemy rekomendacji i klasyfikowania danych za pomocą algorytmów statystycznych, sieci neuronowych i uczenia głębokiego. Mimo że przyswojenie tych zagadnień wymaga wysiłku, bardzo ułatwi implementację nowoczesnych, inteligentnych aplikacji!
W tej książce między innymi:
- wprowadzenie do problemów algorytmów inteligentnych
- systemy rekomendacji i filtrowanie kolaboratywne
- wykorzystanie regresji logistycznej do wykrywania oszustw
- uczenie głębokie, uczenie na żywo i renesans sieci neuronowych
- podejmowanie decyzji
- perspektywy inteligentnej sieci
Inteligentny algorytm wyławia perły w strumieniach danych!
Dr Douglas McIlwraith jest ekspertem w dziedzinie uczenia maszynowego. Zajmuje się analizą danych w londyńskiej agencji reklamowej. Prowadził badania w dziedzinach systemów rozproszonych, robotyki i zabezpieczeń.
Dr Haralambos Marmanis jest pionierem w obszarze technik uczenia maszynowego w rozwiązaniach przemysłowych. Od 25 lat rozwija profesjonalne oprogramowanie.
Dmitry Babenko projektuje złożone systemy dla firm z takich branż, jak bankowość, ubezpieczenia, zarządzanie łańcuchem dostaw i analityka biznesowa.
Zobacz także:
- Algorytmy kryptograficzne. Przewodnik po algorytmach w blockchain, kryptografii kwantowej, protoko 79,00 zł, (39,50 zł -50%)
- Informatyk samouk. Przewodnik po strukturach danych i algorytmach dla pocz 58,98 zł, (29,49 zł -50%)
- My 89,00 zł, (44,50 zł -50%)
- Nauka algorytm 58,98 zł, (29,49 zł -50%)
- 40 algorytmów, które powinien znać każdy programista. Nauka implementacji algorytmów w Pythonie 77,00 zł, (38,50 zł -50%)
Spis treści
Inteligentna sieć. Algorytmy przyszłości. Wydanie II -- spis treści
Przedmowa (9)
Wprowadzenie (11)
Podziękowania (13)
O książce (15)
Rozdział 1. Budowanie aplikacji na potrzeby inteligentnej sieci (19)
- 1.1. Inteligentny algorytm w akcji - Google Now (21)
- 1.2. Cykl życia inteligentnych algorytmów (23)
- 1.3. Inne przykłady inteligentnych algorytmów (24)
- 1.4. Czym inteligentne aplikacje nie są (25)
- 1.4.1. Inteligentne algorytmy nie są myślącymi maszynami do uniwersalnych zastosowań (25)
- 1.4.2. Inteligentne algorytmy nie zastąpią ludzi (25)
- 1.4.3. Inteligentne algorytmy nie są odkrywane przez przypadek (26)
- 1.5. Klasy inteligentnych algorytmów (26)
- 1.5.1. Sztuczna inteligencja (27)
- 1.5.2. Uczenie maszynowe (28)
- 1.5.3. Analityka predykcyjna (29)
- 1.6. Ocena działania inteligentnych algorytmów (30)
- 1.6.1. Ocena inteligencji (30)
- 1.6.2. Ocena predykcji (31)
- 1.7. Ważne uwagi na temat inteligentnych algorytmów (33)
- 1.7.1. Dane nie są wiarygodne (34)
- 1.7.2. Wnioskowanie wymaga czasu (34)
- 1.7.3. Wielkość ma znaczenie! (34)
- 1.7.4. Różne algorytmy skalują się w odmienny sposób (35)
- 1.7.5. Nie wszystko jest gwoździem! (35)
- 1.7.6. Dane to nie wszystko (35)
- 1.7.7. Czas treningu może się zmieniać (36)
- 1.7.8. Celem jest generalizacja (36)
- 1.7.9. Ludzka intuicja nie zawsze się sprawdza (36)
- 1.7.10. Pomyśl o zaprojektowaniu nowych cech (36)
- 1.7.11. Poznaj wiele różnych modeli (36)
- 1.7.12. Korelacja nie oznacza związku przyczynowo-skutkowego (37)
- 1.8. Podsumowanie (37)
Rozdział 2. Wydobywanie struktury z danych - klastrowanie i transformacja danych (39)
- 2.1. Dane, struktura, błąd systematyczny i szum (41)
- 2.2. "Przekleństwo wymiarów" (44)
- 2.3. Algorytm k-średnich (45)
- 2.3.1. K-średnie w praktyce (49)
- 2.4. Gaussowski model mieszany (52)
- 2.4.1. Czym jest rozkład Gaussa? (52)
- 2.4.2. Maksymalizacja wartości oczekiwanej i rozkład Gaussa (55)
- 2.4.3. Gaussowski model mieszany (55)
- 2.4.4. Przykład uczenia z użyciem gaussowskiego modelu mieszanego (57)
- 2.5. Zależności między k-średnimi i algorytmem GMM (59)
- 2.6. Transformacje osi danych (60)
- 2.6.1. Wektory własne i wartości własne (61)
- 2.6.2. Analiza głównych składowych (61)
- 2.6.3. Przykład zastosowania analizy głównych składowych (63)
- 2.7. Podsumowanie (65)
Rozdział 3. Rekomendowanie odpowiednich treści (67)
- 3.1. Wprowadzenie - internetowy sklep z filmami (68)
- 3.2. Odległość i podobieństwo (69)
- 3.2.1. Więcej o odległości i podobieństwie (73)
- 3.2.2. Który wzór na podobieństwo jest najlepszy? (75)
- 3.3. Jak działają systemy rekomendacji? (76)
- 3.4. Filtrowanie kolaboratywne według użytkowników (77)
- 3.5. Rekomendacje według modelu z wykorzystaniem rozkładu SVD (82)
- 3.5.1. Rozkład SVD (83)
- 3.5.2. Rekomendacje z użyciem rozkładu SVD - wybór filmów dla danego użytkownika (84)
- 3.5.3. Rekomendacje z wykorzystaniem rozkładu SVD - określanie użytkowników, których może zainteresować dany film (90)
- 3.6. Konkurs Netflix Prize (93)
- 3.7. Ocenianie systemu rekomendacji (94)
- 3.8. Podsumowanie (96)
Rozdział 4. Klasyfikowanie - umieszczanie elementów tam, gdzie ich miejsce (97)
- 4.1. Do czego potrzebna jest klasyfikacja? (98)
- 4.2. Przegląd klasyfikatorów (101)
- 4.2.1. Strukturalne algorytmy klasyfikacji (102)
- 4.2.2. Statystyczne algorytmy klasyfikacji (104)
- 4.2.3. Cykl życia klasyfikatora (105)
- 4.3. Wykrywanie oszustw za pomocą regresji logistycznej (106)
- 4.3.1. Wprowadzenie do regresji liniowej (106)
- 4.3.2. Od regresji liniowej do logistycznej (108)
- 4.3.3. Implementowanie wykrywania oszustw (111)
- 4.4. Czy wyniki są wiarygodne? (119)
- 4.5. Klasyfikowanie w bardzo dużych zbiorach danych (122)
- 4.6. Podsumowanie (124)
Rozdział 5. Studium przypadku - prognozowanie kliknięć w reklamie internetowej (127)
- 5.1. Historia i informacje wstępne (128)
- 5.2. Giełda (130)
- 5.2.1. Dopasowywanie plików cookie (130)
- 5.2.2. Oferty (131)
- 5.2.3. Powiadomienie o wygranej (lub przegranej) w licytacji (132)
- 5.2.4. Umieszczanie reklamy (132)
- 5.2.5. Monitorowanie reklam (132)
- 5.3. Czym jest agent? (133)
- 5.3.1. Wymagania stawiane agentowi (133)
- 5.4. Czym jest system podejmowania decyzji? (134)
- 5.4.1. Informacje o użytkowniku (135)
- 5.4.2. Informacje o przestrzeni reklamowej (135)
- 5.4.3. Informacje o kontekście (135)
- 5.4.4. Przygotowywanie danych (135)
- 5.4.5. Model dla systemu podejmowania decyzji (136)
- 5.4.6. Odwzorowywanie prognozowanego współczynnika kliknięć na oferowaną kwotę (136)
- 5.4.7. Inżynieria cech (137)
- 5.4.8. Trening modelu (137)
- 5.5. Predykcja kliknięć za pomocą biblioteki Vowpal Wabbit (138)
- 5.5.1. Format danych używany w VW (138)
- 5.5.2. Przygotowywanie zbioru danych (141)
- 5.5.3. Testowanie modelu (146)
- 5.5.4. Kalibrowanie modelu (148)
- 5.6. Komplikacje związane z budowaniem systemu podejmowania decyzji (150)
- 5.7. Przyszłość prognozowania zdarzeń w czasie rzeczywistym (150)
- 5.8. Podsumowanie (151)
Rozdział 6. Uczenie głębokie i sieci neuronowe (153)
- 6.1. Intuicyjne omówienie uczenia głębokiego (154)
- 6.2. Sieci neuronowe (155)
- 6.3. Perceptron (156)
- 6.3.1. Trening (158)
- 6.3.2. Trening perceptronu z użyciem pakietu scikit-learn (160)
- 6.3.3. Geometryczna interpretacja działania perceptronu dla dwóch wejść (162)
- 6.4. Perceptrony wielowarstwowe (164)
- 6.4.1. Trening z wykorzystaniem propagacji wstecznej (167)
- 6.4.2. Funkcje aktywacji (168)
- 6.4.3. Intuicyjne wyjaśnienie propagacji wstecznej (169)
- 6.4.4. Teoria propagacji wstecznej (170)
- 6.4.5. Wielowarstwowe sieci neuronowe w pakiecie scikit-learn (172)
- 6.4.6. Perceptron wielowarstwowy po zakończeniu nauki (174)
- 6.5. Zwiększanie głębokości - od wielowarstwowych sieci neuronowych do uczenia głębokiego (175)
- 6.5.1. Ograniczone maszyny Boltzmanna (176)
- 6.5.2. Maszyny BRBM (177)
- 6.5.3. Maszyny RBM w praktyce (180)
- 6.6. Podsumowanie (183)
Rozdział 7. Dokonywanie właściwego wyboru (185)
- 7.1. Testy A/B (187)
- 7.1.1. Teoria (187)
- 7.1.2. Kod (190)
- 7.1.3. Adekwatność testów A/B (191)
- 7.2. Wieloręki bandyta (192)
- 7.2.1. Strategie stosowane w problemie wielorękiego bandyty (192)
- 7.3. Strategia bayesowska w praktyce (197)
- 7.4. Testy A/B a strategia bayesowska (207)
- 7.5. Rozwinięcia eksperymentu z wielorękim bandytą (208)
- 7.5.1. Bandyci kontekstowi (209)
- 7.5.2. Problem bandytów z przeciwnikiem (210)
- 7.6. Podsumowanie (210)
Rozdział 8. Przyszłość inteligentnej sieci (213)
- 8.1. Przyszłe zastosowania inteligentnej sieci (214)
- 8.1.1. Internet rzeczy (214)
- 8.1.2. Opieka zdrowotna w domu (215)
- 8.1.3. Autonomiczne samochody (215)
- 8.1.4. Spersonalizowane fizyczne reklamy (216)
- 8.1.5. Sieć semantyczna (216)
- 8.2. Społeczne implikacje rozwoju inteligentnej sieci (217)
Dodatek. Pobieranie danych z sieci WWW (219)
- Przykład - wyświetlanie reklam w internecie (220)
- Dane dostępne w kontekście reklamy internetowej (220)
- Rejestrowanie danych - naiwne rozwiązanie (221)
- Zarządzanie zbieraniem danych w dużej skali (222)
- Poznaj system Kafka (224)
- Replikacja w systemie Kafka (226)
- Grupy konsumentów, równoważenie i kolejność (232)
- Łączenie wszystkich elementów (233)
- Ocena systemu Kafka - rejestrowanie danych w dużej skali (236)
- Wzorce projektowe w systemie Kafka (238)
- Łączenie systemów Kafka i Storm (238)
- Łączenie systemów Kafka i Hadoop (240)
Skorowidz (243)