• Jak projektować systemy uczenia maszynowego.

To książka przeznaczona dla inżynierów, którzy chcą stosować systemy uczenia maszynowego do rozwiązywania rzeczywistych problemów biznesowych. Zaprezentowano w niej systemy ML używane w szybko rozwijających się startupach, a także przedstawiono holistyczne podejście do ich projektowania ― z uwzględnieniem różnych komponentów systemu i celów osób zaangażowanych w proces. Dużo uwagi poświęcono analizie decyzji projektowych, dotyczących między innymi sposobu tworzenia i przetwarzania danych treningowych, wyboru wskaźników, częstotliwości ponownego treningu modelu czy techniki monitorowania pracy aplikacji. Zaprezentowana tu koncepcja iteracyjna natomiast pozwala na uzyskanie pewności, że podejmowane decyzje są optymalne z punktu widzenia pracy całości systemu. Co ważne, poszczególne zagadnienia zostały zilustrowane rzeczywistymi studiami przypadków.

Podtytuł Iteracyjne tworzenie aplikacji gotowych do pracy
Tytuł oryginalny Designing Machine Learning Systems: An Iterative Process for Production-Ready Applications
Autor Chip Huyen
Tłumaczenie Jacek Janusz
Rok wydania 2023
Oprawa Miękka
Format 165x235
Stron 344
89.00
szt. Do przechowalni
Wysyłka w ciągu 24 godziny
ISBN 978-83-2839-912-9
Systemy uczenia maszynowego (ML) charakteryzują się złożonością i unikatowością. Zmiana w jednym z wielu komponentów może istotnie wpłynąć na całość. Zastosowane w modelach dane diametralnie różnią się od siebie w poszczególnych przypadkach użycia. To wszystko sprawia, że bardzo trudno jest stworzyć taki system, jeśli każdy komponent zostaje zaprojektowany oddzielnie. Aby zbudować aplikację korzystającą z ML i nadającą się do wdrożenia w środowisku produkcyjnym, konieczne jest podejmowanie decyzji projektowych z uwzględnieniem cech systemu jako całości.
To książka przeznaczona dla inżynierów, którzy chcą stosować systemy uczenia maszynowego do rozwiązywania rzeczywistych problemów biznesowych. Zaprezentowano w niej systemy ML używane w szybko rozwijających się startupach, a także przedstawiono holistyczne podejście do ich projektowania ― z uwzględnieniem różnych komponentów systemu i celów osób zaangażowanych w proces. Dużo uwagi poświęcono analizie decyzji projektowych, dotyczących między innymi sposobu tworzenia i przetwarzania danych treningowych, wyboru wskaźników, częstotliwości ponownego treningu modelu czy techniki monitorowania pracy aplikacji. Zaprezentowana tu koncepcja iteracyjna natomiast pozwala na uzyskanie pewności, że podejmowane decyzje są optymalne z punktu widzenia pracy całości systemu. Co ważne, poszczególne zagadnienia zostały zilustrowane rzeczywistymi studiami przypadków.
W książce między innymi:
• wybór wskaźników właściwych dla danego problemu biznesowego
• automatyzacja ciągłego rozwoju, ewaluacji, wdrażania i aktualizacji modeli
• szybkie wykrywanie i rozwiązywanie problemów podczas wdrożenia produkcyjnego
• tworzenie wszechstronnej platformy ML
• odpowiedzialne tworzenie systemów ML
Wdrażaj i skaluj modele tak, aby uzyskiwać najlepsze wyniki!
Wstęp
1. Przegląd systemów uczenia maszynowego
Kiedy należy używać uczenia maszynowego?
Przypadki użycia uczenia maszynowego
Zrozumienie systemów uczenia maszynowego
Uczenie maszynowe w badaniach i przemyśle
Krytyka rankingów modeli uczenia maszynowego
Systemy uczenia maszynowego a oprogramowanie tradycyjne
Podsumowanie
2. Wprowadzenie do projektowania systemów uczenia maszynowego
Biznes i cele uczenia maszynowego
Wymagania dla systemów uczenia maszynowego
Niezawodność
Skalowalność
Łatwość utrzymania
Adaptacyjność
Proces iteracyjny
Sformalizowanie problemów związanych z uczeniem maszynowym
Rodzaje zadań związanych z uczeniem maszynowym
Funkcje celu
Umysł a dane
Podsumowanie
3. Podstawy inżynierii danych
Źródła danych
Formaty danych
JSON
Formaty wierszowe i kolumnowe
Format tekstowy a binarny
Modele danych
Model relacyjny
Model NoSQL
Dane ustrukturyzowane a nieustrukturyzowane
Silniki przechowywania danych i ich przetwarzanie
Przetwarzanie transakcyjne i analityczne
Proces ETL - wyodrębnij, przekształć, wczytaj
Tryby przepływu danych
Dane przekazywane przez bazy danych
Dane przekazywane przez usługi
Dane przekazywane przez połączenia w czasie rzeczywistym
Przetwarzanie wsadowe a przetwarzanie strumieniowe
Podsumowanie
4. Dane treningowe
Próbkowanie
Próbkowanie nieprobabilistyczne
Proste próbkowanie losowe
Próbkowanie warstwowe
Próbkowanie ważone
Próbkowanie do rezerwuaru
Próbkowanie istotnościowe
Etykietowanie
Etykiety nadawane ręcznie
Etykiety naturalne
Co zrobić w przypadku braku etykiet?
Niezrównoważenie klas
Wyzwania związane z niezrównoważeniem klas
Rozwiązywanie problemu niezrównoważenia klas
Generowanie sztucznych danych
Proste transformacje zachowujące etykiety
Perturbacja
Synteza danych
Podsumowanie
5. Inżynieria cech
Cechy wyuczone a cechy zaprojektowane
Operacje często stosowane w inżynierii cech
Obsługa wartości brakujących
Skalowanie
Dyskretyzacja
Kodowanie cech skategoryzowanych
Krzyżowanie cech
Dyskretne i ciągłe osadzenia pozycji
Wyciek danych
Najczęstsze przyczyny wycieków danych
Wykrywanie wycieku danych
Tworzenie poprawnych cech
Ważność cech
Uogólnianie cech
Podsumowanie
6. Projektowanie modelu i ewaluacja offline
Projektowanie i trenowanie modelu
Ewaluacja modeli uczenia maszynowego
Metody zespołowe
Monitorowanie i wersjonowanie eksperymentów
Trenowanie rozproszone
Zautomatyzowane uczenie maszynowe (AutoML)
Ewaluacja modelu w trybie offline
Punkty odniesienia
Metody ewaluacji
Podsumowanie
7. Wdrażanie modelu i usługi prognozowania
Mity związane z wdrażaniem systemów uczenia maszynowego
Mit 1. Jednocześnie wdrażamy tylko jeden lub dwa modele
Mit 2. Jeśli nic nie zrobimy, wydajność modelu pozostanie taka sama
Mit 3. Modeli nie trzeba często aktualizować
Mit 4. Większość inżynierów uczenia maszynowego nie musi się przejmować wielkoskalowymi wdrożeniami
Prognozowanie wsadowe a prognozowanie online
Od prognozowania wsadowego do prognozowania online
Ujednolicenie potoku wsadowego i strumieniowego
Kompresowanie modelu
Faktoryzacja niższego rzędu
Destylacja wiedzy
Przycinanie
Kwantyzacja
Uczenie maszynowe w chmurze i na urządzeniu brzegowym
Kompilowanie i optymalizowanie modeli dla urządzeń brzegowych
Wykorzystanie uczenia maszynowego w przeglądarkach
Podsumowanie
8. Zmiana rozkładu danych i monitorowanie
Przyczyny awarii w systemach uczenia maszynowego
Awarie systemu oprogramowania
Awarie specyficzne dla uczenia maszynowego
Zmiany rozkładów danych
Rodzaje zmian rozkładów danych
Ogólne rodzaje zmian rozkładów danych
Wykrywanie zmian rozkładów danych
Rozwiązywanie problemów związanych ze zmianą rozkładu danych
Monitorowanie i obserwowalność
Wskaźniki specyficzne dla uczenia maszynowego
Narzędzia wspierające proces monitorowania
Obserwowalność
Podsumowanie
9. Uczenie ciągłe i testy w środowisku produkcyjnym
Uczenie ciągłe
Ponowne trenowanie bezstanowe i trenowanie stanowe
Dlaczego powinno się stosować uczenie ciągłe?
Wyzwania związane z uczeniem ciągłym
Cztery etapy uczenia ciągłego
Jak często należy aktualizować modele?
Testowanie w środowisku produkcyjnym
Użycie kopii rozwiązania
Testy A/B
Testy kanarkowe
Eksperymenty przeplatane
Algorytmy bandyty
Podsumowanie
10. Infrastruktura i narzędzia stosowane w metodyce MLOps
Pamięć masowa i moc obliczeniowa
Chmura publiczna a prywatne centrum danych
Środowisko projektowe
Konfiguracja środowiska projektowego
Proces standaryzacji środowisk projektowych
Przejście ze środowiska projektowego do produkcyjnego - kontenery
Zarządzanie zasobami
Narzędzie cron, zarządcy procesów i orkiestratory
Zarządzanie procesami w danetyce
Platforma uczenia maszynowego
Wdrażanie modelu
Magazyn modeli
Magazyn cech
Tworzyć czy kupować?
Podsumowanie
11. Ludzka strona uczenia maszynowego
Doświadczenia użytkownika
Zapewnianie spójności doświadczeń użytkownika
Unikanie prognoz "przeważnie poprawnych"
Kompromis szybkość - dokładność
Struktura zespołu
Współpraca w zespołach międzydyscyplinarnych
Wszechstronni danetycy
Odpowiedzialna sztuczna inteligencja
Nieodpowiedzialna sztuczna inteligencja - studia przypadków
Zasady tworzenia odpowiedzialnej sztucznej inteligencji
Podsumowanie
Epilog
Chip Huyen zajmowała się tworzeniem i wdrażaniem systemów ML dla takich firm jak NVIDIA, Netflix czy Snorkel AI. Brała też udział w projektowaniu Claypot AI, działającej w czasie rzeczywistym platformy do uczenia maszynowego. Jest autorką kursu CS 329S dotyczącego projektowania systemów uczenia maszynowego, dostępnego na Uniwersytecie Stanforda.
Nie ma jeszcze komentarzy ani ocen dla tego produktu.

Polub nas na Facebooku