Podstawowe informacje

Nazwa:

Zaawansowany Machine Learning i wprowadzenie do Deep Learning

Kod:

ml-py-advanced

O szkoleniu:

Szkolenie narzędziowe systematyzujące wiedzę uczestników, rozwijające umiejętności stosowania Machine Learning w praktyce oraz wprowadzające w Deep Learning. Po szkoleniu uczestnicy potrafią rozwiązywać z użyciem Machine Learning, trudniejsze, bardziej skomplikowane i mniej typowe problemy.

Dla kogo:

Szkolenie dla osób, które na codzień w pracy tworzą dedykowane rozwiązania Machine Learning, np. pracownicy działów R&D, analitycy i developerzy.

Pozostałym osobom proponujemy Niezbędnik Machine Learning.

W szkoleniu mogą wziąć udział osoby pracujące w dowolnych technologiach, pomimo że podczas szkolenia wykorzystywany jest głównie Python.

Uwagi:

Od uczestników nie jest wymagana wcześniejsza znajomość Pythona.

Czas trwania:

21 godzin = 3 dni x 7 godzin (wliczając przerwy)

Liczba osób:

maksymalnie 12

Forma:

warsztatowa (30% wykłady / 70% warsztaty)

Logistyka:

Szkolenie zamknięte – szkolenie odbywa się w siedzibie klienta lub w innym wybranym przez Klienta miejscu, w sali szkoleniowej (wymagany projektor HDMI lub VGA, flip-chart lub tablica oraz miejsce dla uczestników i prowadzącego). Uczestnicy pracują na własnych laptopach.

Język:

Szkolenie jest prowadzone po polsku lub po angielsku.

Ścieżka rozwoju:

Po tym szkoleniu proponujemy doradztwo. Istnieje także możliwość przygotowania nowego, dedykowanego szkolenia.

Warianty:

Szkolenie dostępne jest w kilku wariantach dla różnych branż. Istnieje możliwość wydłużenia lub skrócenia szkolenia.

Plan szkolenia

  1. Usystematyzowanie i poszerzenie wiedzy o regresji i klasyfikacji
    1. Regresja liniowa
    2. Regularyzacja, funkcja kosztu, L1 (Ridge) i L2 (Lasso) i L1+L2 (ElasticNet), parametr alpha
    3. Funkcja kosztu
    4. Regresja logistyczna, iloraz szans, logit, regularyzacja w problemie klasyfikacji (parametr C)
    5. Klasyfikacja binarna vs wieloklasowa
    6. Strategie klasyfikacji wieloklasowej (one vs rest, one vs one)
    7. Tablica pomyłek (confusion matrix)
    8. Metryki: dokładność, precyzja, czułość, F1-score, F-beta score
    9. Uogólnienie powyższych metryk w klasyfikacji wieloklasowej
    10. Metryki: dokładność, precyzja, czułość, f1-score, f-beta score
    11. Precision-Recall Curve, ROC Curve, metryka AUC
  2. Laboratorium z regresji i klasyfikacji – analiza nieznanego uczestnikom szeregu czasowego i stworzenie modelu do predykcji sprzedaży
    1. Ładowanie danych
    2. Preprocessing danych
    3. Eksploracja danych
    4. Regresja
    5. Regularyzacja
    6. Normalizacja danych
    7. Ewaluacja regresji
    8. Wybór modelu
    9. Zamiana problemu na problem klasyfikacji
    10. Dobór metryki
  3. Modele
    1. kNN
    2. Modele liniowe + regularyzacja
    3. Sieci neuronowe
    4. SVM z Kernel trick
    5. Drzewa decyzyjne, lasy losowe, boosting
    6. Porównanie metod
    7. Algorytm doboru właściwego modelu (pokrywa 80% przypadków użycia)
  4. Feature Engineering & Selection
    1. Pipeline do automatyzacji potokowego przetwarzania danych
    2. One Hot Encoding
    3. Polynominal & Interaction Features
    4. Transformacja ln(x+1)
    5. Kiedy przydaje się Feature Selection?
    6. 3 metody automatycznej selekcji cech (Feature Selection): Univariate Statistics, Model-Based Feature Selection, Iterative Feature Selection
  5. Klasteryzacja
    1. Algorytm k-Means
    2. Klasteryzacja aglomeratywna
    3. Dendogram
    4. DBSCAN, detekcja outlierów przy pomocy DBSCAN
    5. Ewaluacja klasteryzacji z ground truth, metryka ARI (Adjusted Rank Index)
    6. Porównanie metod klasteryzacji na przykładzie klasyfikacji cyfr
  6. Redukcja wymiarowości
    1. PCA (Principal Component Analysis)
    2. NMF (non-negative matrix factorisation), dekompozycja sygnałów z NMF
    3. Eksploracja danych z t-SNE
    4. Kiedy stosować redukcję wymiarowości?
    5. Kompresja danych z użyciem redukcji wymiarowości
  7. Big Data i zrównoleglanie obliczeń przy pomocy dask
    1. dask jako scheduler tasków
    2. Praca na chmurze obliczeniowej
    3. dask.DataFrame i inne rozproszone kolekcje
    4. Dask i Machine Learning
    5. Alternatywy dla dask
  8. Sieci neuronowe
    1. Perceptron
    2. Sieci neuronowe
    3. Funkcje aktywacji (sigmoid, tanh, ReLU, Leaky ReLU, SWISH, parametric ReLU)
    4. Propagacja wsteczna
    5. Parametry: liczba neuronów, regularyzacja, losowość, learning rate
    6. Keras i Tensorflow
  9. Wprowadzenie do Deep Learning
    1. Toolsets
    2. Feedforward Neural Networks
    3. Dropout
    4. Klasyfikacja zdjęć cyfr z FNN
    5. Konwolucyjne sieci neuronowe
    6. Warstwa Max Pooling
    7. Klasyfikacja zdjęć z CNN
    8. Zbiór danych CIFAR10
    9. Model Persistence
    10. Data Augumentation
    11. Proces uczenia, propagacja wsteczna
    12. Rekurencyjne sieci neuronowe z LSTM
    13. Demo: modelowanie średniej kroczącej przy pomocy LSTM
    14. Demo: generowanie tekstu przy pomocy rekurencyjnych sieci neuronowych

Korzyści ze szkolenia

W cenę każdego naszego szkolenia wliczone są następujące korzyści:

  • Doradztwo poszkoleniowe. Trener jest dostępny dla uczestników telefonicznie i mailowo w ciągu dwóch miesięcy od zakończenia szkolenia.
  • Raport po szkoleniu. Po szkoleniu trener przygotowuje raport wskazujący mocne i słabe strony grupy, zawierający rekomendacje dalszej ścieżki rozwoju oraz wyniki ankiety ewaluacyjnej. Raport jest w formie maila lub/i ustnej, przekazany ustalonej wcześniej osobie.
  • Dopasowanie do potrzeb. Analizujemy potrzeby podczas rozmowy telefonicznej trenera ze sponsorem, HR, team leaderem, menedżerem lub inną osobą.
  • Dopasowanie do grupy. Szkolenie jest dopasowane do każdej grupy z osobna dzięki analizie potrzeb każdego uczestnika na początku szkolenia lub w formie ankiety przed szkoleniem.
  • Efektywne wykorzystanie czasu szkolenia dzięki wcześniej wysłanej uczestnikom instrukcji przygotowania laptopów. Nie tracimy czasu na początku szkolenia na skonfigurowanie środowiska. W razie jakichkolwiek problemów, służymy wsparciem mailowym oraz przez Skype, Webex, etc.
  • Materiały szkoleniowe uaktualniane w czasie rzeczywistym w formie elektronicznej, przygotowywane osobno dla każdej grupy. Materiały zawierają wykłady, przykłady, ćwiczenia z rozwiązaniami i uwagi uczestników. Materiały są uaktualniane na bieżąco w czasie szkolenia, dzięki czemu możemy dodać komentarze uczestników oraz do pewnego stopnia modyfikować plan szkolenia zgodnie z potrzebami uczestników.
  • Rzetelny pomiar jakości szkolenia. Na końcu każdego szkolenia uczestnicy oceniają je w formie przygotowanej przez nas anonimowej, elektronicznej ankiety. Możemy także wykorzystać ankietę Klienta. Pomiar jest rzetelny, ponieważ ankieta jest anonimowa. Ponadto, nasz trener na czas przeprowadzenia ankiety wychodzi z sali szkoleniowej. Wyniki ankiety są udostępniane Klientowi, dzięki czemu dział HR ma mniej pracy.
  • Efektywna nauka. Nasz trener jest specjalistą nie tylko w dziedzinie Machine Learning, ale także w nauczaniu dorosłych. Świadczą o tym certyfikaty Software Carpentry i Data Carpentry. Efektywna nauka jest realizowana przez odpowiednio dobrane ćwiczenia, dyskusje, ćwiczenia mentalne i programowanie w dwójkach.
  • Integracja zespołu i wymiana doświadczeń. Podczas szkolenia uczestnicy programują w dwójkach, dzięki temu integrują się i wymieniają doświadczeniami, co jest szczególnie istotne, gdy uczestnicy są z różnych zespołów.
  • Forma warsztatowa i wynikająca z tego duża liczba ćwiczeń.

Opinie

O trenerze

Szkolenie prowadzi trener i konsultant, Krzysztof Mędrela. Nasz trener współpracuje z firmami i instytucjami takimi jak:

  • Nokia,
  • Ericsson,
  • Motorola,
  • Allegro,
  • AB S.A.,
  • UBS,
  • MTU Aero Engines,
  • Office for National Statistics (brytyjski GUS),
  • Aarhus University,
  • i wiele innych nie wymienionych ze względu na wymogi poufności

Jest trenerem specjalizującym się w nauczaniu dorosłych i certyfikowanym przez organizacje Software Carpentry i Data Carpentry, które do tej pory wyszkoliły ponad 30 tys. naukowców.

Zanim poświęcił się w 2016 roku pracy trenera i konsultanta, nabył od 2011 roku wszechstronne doświadczenie w branży IT, pracując przy różnych projektach, m.in.:

  • rozwijając web framework Django (open-source) we współpracy z Google,
  • współtworząc dedykowany system ERP dla organizacji szkoleniowej Software Carpentry (ponad 30 tys. absolwentów),
  • rozwijając dedykowane rozwiązania Machine Learning objęte NDA.

Krzysztof wierzy, że w Machine Learning same umiejętności techniczne nie wystarczą i dlatego kładzie nacisk na szersze spojrzenie i na aspekt biznesowy.