Jak projektować systemy uczenia maszynowego

Book description

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!

Table of contents

  1. Opinie o książce
  2. Wstęp
    1. Dla kogo jest przeznaczona ta książka?
    2. Dla kogo nie jest przeznaczona ta książka?
    3. Poruszanie się po tej książce
    4. Repozytorium na GitHubie oraz społeczność
    5. Konwencje użyte w książce
    6. Użycie przykładów kodu
    7. Podziękowania
  3. Rozdział 1. Przegląd systemów uczenia maszynowego
    1. Kiedy należy używać uczenia maszynowego?
    2. Zrozumienie systemów uczenia maszynowego
    3. Podsumowanie
  4. Rozdział 2. Wprowadzenie do projektowania systemów uczenia maszynowego
    1. Biznes i cele uczenia maszynowego
    2. Wymagania dla systemów uczenia maszynowego
    3. Proces iteracyjny
    4. Sformalizowanie problemów związanych z uczeniem maszynowym
    5. Umysł a dane
    6. Podsumowanie
  5. Rozdział 3. Podstawy inżynierii danych
    1. Źródła danych
    2. Formaty danych
    3. Modele danych
    4. Silniki przechowywania danych i ich przetwarzanie
    5. Tryby przepływu danych
    6. Przetwarzanie wsadowe a przetwarzanie strumieniowe
    7. Podsumowanie
  6. Rozdział 4. Dane treningowe
    1. Próbkowanie
    2. Etykietowanie
    3. Niezrównoważenie klas
    4. Generowanie sztucznych danych
    5. Podsumowanie
  7. Rozdział 5. Inżynieria cech
    1. Cechy wyuczone a cechy zaprojektowane
    2. Operacje często stosowane w inżynierii cech
    3. Wyciek danych
    4. Tworzenie poprawnych cech
    5. Podsumowanie
  8. Rozdział 6. Projektowanie modelu i ewaluacja offline
    1. Projektowanie i trenowanie modelu
    2. Ewaluacja modelu w trybie offline
    3. Podsumowanie
  9. Rozdział 7. Wdrażanie modelu i usługi prognozowania
    1. Mity związane z wdrażaniem systemów uczenia maszynowego
    2. Prognozowanie wsadowe a prognozowanie online
    3. Kompresowanie modelu
    4. Uczenie maszynowe w chmurze i na urządzeniu brzegowym
    5. Podsumowanie
  10. Rozdział 8. Zmiana rozkładu danych i monitorowanie
    1. Przyczyny awarii w systemach uczenia maszynowego
    2. Zmiany rozkładów danych
    3. Monitorowanie i obserwowalność
    4. Podsumowanie
  11. Rozdział 9. Uczenie ciągłe i testy w środowisku produkcyjnym
    1. Uczenie ciągłe
    2. Testowanie w środowisku produkcyjnym
    3. Podsumowanie
  12. Rozdział 10. Infrastruktura i narzędzia stosowane w metodyce MLOps
    1. Pamięć masowa i moc obliczeniowa
    2. Środowisko projektowe
    3. Zarządzanie zasobami
    4. Platforma uczenia maszynowego
    5. Tworzyć czy kupować?
    6. Podsumowanie
  13. Rozdział 11. Ludzka strona uczenia maszynowego
    1. Doświadczenia użytkownika
    2. Struktura zespołu
    3. Odpowiedzialna sztuczna inteligencja
    4. Podsumowanie
  14. Epilog
  15. O autorce
  16. Kolofon

Product information

  • Title: Jak projektować systemy uczenia maszynowego
  • Author(s): Chip Huyen
  • Release date: March 2023
  • Publisher(s): Helion
  • ISBN: 9788328399136