1. Podstawy Uczenia maszynowego
Na początku uczestnicy pracują z ML w ujęciu praktycznym, korzystając ze scikit-learn i TensorFlow na przykładach biznesowych. Sekcja obejmuje różne typy uczenia oraz samodzielną budowę pierwszego modelu klasyfikacji klientów w formule hands-on.
- praktyczne wprowadzenie do ML z wykorzystaniem scikit-learn i TensorFlow,
- implementacja różnych typów uczenia na rzeczywistych przypadkach biznesowych,
- Hands-on: budowa pierwszego modelu klasyfikacji klientów.
2. Narzędzia i języki programowania
Środowisko pracy ma znaczenie dla tempa eksperymentów i jakości kodu analitycznego. Ta część obejmuje konfigurację kompletnego zaplecza ML w Jupyterze oraz praktyczne użycie bibliotek NumPy, Pandas i Scikit-learn w codziennych zadaniach projektowych.
- setup kompleksowego środowiska ML (Jupyter),
- praktyczne wykorzystanie NumPy, Pandas i Scikit-learn w projektach.
3. Implementacja algorytmów ML
Od implementacji podstawowych metod zaczyna się zrozumienie mechaniki działania modeli. Uczestnicy programują algorytmy regresji i klasyfikacji, wdrażają drzewa decyzyjne oraz lasy losowe, tworzą sieci neuronowe od podstaw i pracują nad optymalizacją rozwiązań ML.
- programowanie algorytmów regresji i klasyfikacji,
- implementacja drzew decyzyjnych i lasów losowych,
- tworzenie sieci neuronowych od podstaw,
- optymalizacja ML.
4. Inżynieria cech i przetwarzanie danych
Jakość cech i spójność przetwarzania bezpośrednio wpływają na stabilność dalszego modelowania. W tej sekcji znajdują się techniki czyszczenia i transformacji danych, projektowanie pipeline’ów, skalowanie i normalizacja oraz obsługa braków i obserwacji odstających.
- techniki czyszczenia i transformacji danych,
- projektowanie efektywnych pipeline'ów przetwarzania,
- skalowanie i normalizacja danych,
- obsługa danych brakujących i odstających.
5. Zaawansowane techniki programowania ML
Redukcja wymiarowości, walidacja krzyżowa i strojenie wydajności są tu traktowane jako element warsztatu programistycznego. Sekcja pokazuje, jak implementować te techniki w kodzie, aby rzetelnie porównywać modele i poprawiać ich działanie na bardziej wymagających danych.
- optymalizacja wydajności modeli,
- techniki redukcji wymiarowości,
- implementacja walidacji krzyżowej.
6. MLOps i wdrażanie modeli
Architektura środowiska produkcyjnego wyznacza sposób wdrażania i utrzymania modeli w praktyce. Omawiane są systemy ML w produkcji, Continuous Integration/Deployment dla ML, wersjonowanie modeli i danych, a także monitoring oraz aktualizacje po wdrożeniu.
- architektura systemów ML w produkcji,
- Continuous Integration/Deployment dla ML,
- monitorowanie i aktualizacja modeli,
- zarządzanie wersjami modeli i danych.
7. Testowanie i debugowanie
Wiarygodność modelu zależy nie tylko od danych, ale też od sposobu sprawdzania poprawności implementacji. Ujęto tu strategie testowania rozwiązań ML oraz metody walidacji i weryfikacji, które pomagają wychwycić błędy, niestabilność i nieprawidłowe predykcje.
- strategie testowania modeli ML,
- walidacja i weryfikacja modeli.
8. Optymalizacja i skalowanie
Przy rosnącej złożoności modeli trzeba równoważyć jakość wyników z kosztem obliczeń. Ten blok obejmuje techniki optymalizacji hiperparametrów oraz sposoby zarządzania zasobami obliczeniowymi, tak aby trenowanie i uruchamianie modeli przebiegało efektywnie.
- techniki optymalizacji hiperparametrów,
- zarządzanie zasobami obliczeniowymi.
9. Integracja z systemami produkcyjnymi
Aby model działał poza środowiskiem eksperymentalnym, musi zostać osadzony w istniejącej infrastrukturze. Część poświęcono API i mikrousługom, integracji z bazami danych oraz systemami biznesowymi, obsłudze żądań w czasie rzeczywistym, bezpieczeństwu i monitoringowi.
- API i mikrousługi dla modeli ML,
- integracja z bazami danych i systemami biznesowymi,
- obsługa żądań w czasie rzeczywistym,
- bezpieczeństwo i monitoring produkcyjny.
10. Najlepsze praktyki i wzorce projektowe
Gdy rozwiązania ML rozwijają się w dłuższym cyklu życia, kluczowe stają się decyzje architektoniczne i porządek w kodzie. Sekcja koncentruje się na zarządzaniu długiem technicznym oraz planowaniu rozwoju systemu tak, aby zachować jego skalowalność i możliwość dalszych zmian.
- zarządzanie długiem technicznym,
- planowanie rozwoju i skalowalności.