Cel szkolenia:
Celem szkolenia jest zapoznanie uczestników z Machine Learning, głównie z jego możliwościami, praktycznym zastosowaniem i ograniczeniami.
O szkoleniu:
Dwudniowe szkolenie wprowadza w jedną z dziedzin sztucznej inteligencji, tzw. Machine Learning (uczenie maszynowe) i jest przeznaczone dla osób z podstawową umiejętnością programowania. W trakcie krótkich wykładów, ćwiczeń i dyskusji uczestnicy nabywają umiejętność rozwiązywania typowych problemów. Podczas warsztatu kładziony jest nacisk także na aspekt biznesowy – uczestnicy uczą się oceniać, czy dany problem da się i opłaca rozwiązać z użyciem Machine Learning. Szkolenie będzie prowadzone w modelu BYOL – bring your own laptop.
Dla kogo jest ten kurs?
Dla programistów, Project Managerów, dyrektorów IT, analityków Data Science i Business Inteligence, a także dla osób znających podstawy programowania i chcących nauczyć się jak używać Machine Learning.
Forma szkolenia:
Szkolenie w większości oparte jest na warsztatach i ćwiczeniach omawianych na forum. Uczestnicy dostają przygotowane wcześniej elektroniczne materiały szkoleniowe, w których mogą robić notatki i wprowadzać zmiany. Podczas spotkania opracowywane są case study dotyczące wielu różnych branż.
Korzyści ze szkolenia:
Po ukończonym szkoleniu uczestnicy potrafią wykorzystać dostępny w Pythonie toolset do szybkiego tworzenia prototypów i weryfikowania hipotez. Z łatwością oceniają możliwości rozwiązania danego problemu przy pomocy Machine Learning, a także potrafią dobrać do niego odpowiedni algorytm.
Po szkoleniu znasz:
- możliwość i ograniczenia Machine Learning,
– korzyści z właściwego opisania problemu,
– typy problemów, które można rozwiązać używając Machine Learning,
– najpopularniejsze algorytmy stosowane zarówno w uczeniu nadzorowanym, jak i nienadzorowanym,
– najpowszechniejsze błędy przy ocenie pracy modelu,
– strony internetowe i książki, dzięki którym będą mogli rozwijać się dalej w Machine Learning.
Po szkoleniu potrafisz:
- ocenić, czy możliwe jest rozwiązanie danego problemu przy pomocy Machine Learning,
– oszacować korzyści z rozwiązania danego problemu,
– dobrać odpowiedni algorytm do problemu,
– opracować, jak mierzyć rezultat i na tej podstawie wybrać najlepszy model,
– przekształcić dane wejściowe do innej, bardziej użytecznej postaci,
– wykorzystać dostępny w Pythonie toolset do szybkiego tworzenia prototypów i weryfikowaniu hipotez,
– ocenić pracę modelu w wiarygodny sposób.
W trakcie szkolenia zapewniamy:
- elektroniczne materiały szkoleniowe, w których na bieżąco można dodawać notatki i komentarze,
- pomoc w przygotowaniu komputera,
- przerwę kawowo-ciasteczkową,
- lunch,
- certyfikat uczestnictwa.
Wartość:
2399zł + VAT
Agenda
AGENDA
Dzień 1 | |
09:00 – 09:30 | Przedstawienie się: – Omówienie celów spotkania – Omówienie agendy warsztatów – Zapoznanie się z potrzebami uczestników |
09:30 – 11:00 | Tooling – Jakie są najpopularniejsze środowiska i języki programowania stosowane w Data Science i Machine Learning (MATLAB, R, Python)? Czym różnią się między sobą? – Dlaczego będziemy korzystać z Pythona? – Jakie są przydatne narzędzia do pracy w Pythonie (IDE: PyCharm,Visual Studio Code, menedżer pakietów pip, interaktywna konsola IPython i Jupyter Notebook, virtualenv) i jak z nich korzystać? Python w pigułce – Jakie są podstawowe typy danych istotne przy przetwarzaniu danych i Machine Learning (list, tuple, dict, numpy.array, pandas.DataFrame, pandas.Series, dask.DataFrame, dask.Bag)? – Dlaczego jest tak wiele bibliotek do przetwarzania danych? – Jakie są mniej znane konstrukcje językowe (menedżery kontekstu, parametry nazwane, duck typing, metoda str.format, funkcja enumerate) w Pythonie? |
11:00 – 11:15 | Przerwa |
11:15 – 12:15 | Wizualizacja danych w matplotlib – Jak wizualizować i eksplorować dane z użyciem biblioteki matplotlib? – Jak narysować wykresy liniowe i punktowe? – Jak przedstawić wiele serii oraz legendę? – Jak zastosować skalę liniową, logarytmiczną, logitową lub “symlog”? – Jak zapisać wykres do pliku? – Jak narysować kilka wykresów na jednym arkuszu (subplot)? – Jak eksplorować dane tworząc interaktywne wykresy? |
12:15 – 13:15 | Lunch |
13:15 – 15:00 | Podstawy uczenia maszynowego – Wprowadzenie w formie case study (klasyfikacja). – Jaka jest relacja między sztuczną inteligencją (AI), uczeniem maszynowym (Machine Learning) i Deep Learning? – Jakie są podstawowe pojęcia i nazewnictwo, z którego będziemy korzystać? Czym jest zbiór danych (dataset), cecha (feature), obserwacja (sample, observation), wejście, wyjście, model? – Na czym polega przeuczenie (nadmierne dopasowanie, overfitting) i czym różni się od niedopasowania? – Jak prawidłowo podzielić dane na zbiór uczący/trenujący, walidujący i testujący? Dlaczego jest to takie ważne? – Jakie są typy danych (wielkości ciągłe, kategorie i flagi) i reprezentować bardziej złożone struktury, takie jak daty, obraz, dźwięk, video itd. – Jakie problemy rozwiązuje ML i jak dobrać odpowiedni algorytm? Czy różni się uczenie nadzorowane od nienadzorowanego, czym jest klasyfikacja binarna i wieloklasowa, regresja, klasteryzacja, systemy rekomendacji, ranking itd. – Jak wygląda iteracyjny model pracy analityka wykorzystującego Machine Learning? – Jakie są łatwo dostępne zbiory danych (np. Iris) i jak je załadować? – Jak eksplorować dane dzięki agregowaniu ich i wizualizacji? – Kiedy, dlaczego i jak normalizować dane? Jakie są różne sposoby normalizacji? |
15:00 – 15:15 | Przerwa |
15:15 – 17:00 | Uczenie nadzorowane (Supervised Learning) – Czym różni się klasyfikacja od regresji? Co to jest klasyfikacja binarna i wieloklasowa? Jak realizuje się klasyfikację wieloklasową? – Jaka jest zasada działania algorytmu k-Nearest Neighbour? – Jak działają i czym różnią się między sobą poszczególne modele liniowe: metoda najmniejszych kwadratów, Ridge, Lasso, Elastic Net, naiwny klasyfikator Bayesa, (kernelized) Support Vector Machines. – Co to są drzewa decyzyjne i lasy losowe oraz Gradient Boosting? Jak wykorzystać XGBoost? – Jak działają sieci neuronowe? Jak stosować perceptron wielowarstwowy? Jak dobrać strukturę sieci – liczbę warstw i neuronów w każdej warstwie ukrytej? Czym jest Deep Learning i jak zastosować TensorFlow do budowania bardziej złożonych sieci neuronowych? – Jak porównywać pracę różnych algorytmów? – Jak stuningować parametry poszczególnych algorytmów? – Dlaczego jest tak wiele różnych algorytmów i jak dobrać odpowiedni algorytm do problemu? Który z nich jest najlepszy? – Jak tuningować modele i znaleźć optymalne wartości parametrów (grid search)? – Jak wyliczyć pewność predykcji klasyfikatora (decision_function i predict_proba)? – Które modele wymagają normalizacji danych? |
Dzień 2 | |
09:00 – 11:00 | Uczenie nienadzorowane (Unsupervised Learning) – Jakie są zastosowania dla uczenia nienadzorowanego? – Jak ocenić rezultat modelu, kiedy nie mamy Ground Truth? – Jak redukować wymiarowość danych? Co to jest analiza głównych składowych (Principal Component Analysis) oraz nieujemny rozkład macierzy (Non-Negatice Matrix Factorization)? Czym różnią się te dwie metody między sobą? Kiedy stosować PCA, a kiedy NNMF? – Jak można eksplorować dane przy pomocy algorytmu t-SNE? – Do czego przydaje się klasteryzacja i jak jej dokonać? Jak dokonać prostej klasteryzacji z użyciem algorytmu k-Means Clustering? – Jak wyznaczyć całe hierarchie grup przy użyciu metod aglomeracyjnych, m.in. ward’a? Jak użyć DBSCAN? – Jak ocenić rezultat klasteryzacji mając Ground Truth? Co to jest Adjusted Rand Index (ARI) i Normalized Mutual Information (NMI)? – Jak ocenić rezultat klasteryzacji nie mając Ground Truth? – Jak podczas klasteryzacji znaleźć obserwacje odstające (outliers)? O czym one świadczą? – Co to jest Semi-Supervised Learning i kiedy się go stosuje? |
11:00 – 11:15 | Przerwa |
11:15 – 12:45 | Ocena pracy modelu – Jakie są najpowszechniejsze błędy metodologiczne? – Jak uzyskać wiarygodną ocenę dokładności modelu? Do czego służy zbiór uczący, walidujący i testujący? – Jak otrzymać bardziej stabilną ocenę dzięki kroswalidacji (Cross Validation)? – Jakie są różne sposoby podziału danych do kroswalidacji (k-krotna walidacja, leave-one-out, kroswalidacja stratyfikowana, kroswalidacja serii czasowej, implementacja własnej strategii, podział predefiniowany)? Jak połączyć kroswalidację z Grid Search? – Jak ocenić pracę klasyfikatora binarnego, zwłaszcza gdy klasy nie są zbalansowane? Czym różni się precyzja (precision) i czułość (recall) od dokładności (accuracy)? Kiedy lepiej jest stosować F1-Score od dokładności (accuracy)? Co to jest krzywa ROC i jak ją interpretować? Co to jest AUC? – Jak ocenić pracę klasyfikatora wieloklasowego? – Jakie są metryki do regresji (R2, błąd średniokwadratowy, średni błąd absolutny). – Jak oszacować korzyść biznesową, jaką da rozwiązanie danego problemu? |
12:45 – 13:45 | Lunch |
13:45 – 15:15 | Reprezentacja danych, Feature Engineering & Feature Selection – Dlaczego sposób reprezentacji danych ma tak duży wpływ na końcowy rezultat? – Jak reprezentować kategorie? Co to jest One-Hot-Encoding i jak się to stosuje? – Kiedy tworzenie nowych cech na podstawie istniejących (Feature Engineering) poprawia końcowy rezultat? – Jakie są techniki Feature Engineering – dyskretyzacja, transformacje nieliniowe, wielomiany. – Jak wykorzystać wiedzę domenową przy generowaniu nowych cech? – Dlaczego warto ograniczyć liczbę cech (Feature Selection)? – Jakie są trzy podstawowe sposoby automatycznego wyboru najistotniejszych cech: Univariate Statistics, Model-Based Feature Selection, metoda iteracyjna? |
15:15 – 15:30 | Przerwa |
15:30 – 17:00 | Uczenie maszynowe & Big Data – Co zrobić, gdy dane nie mieszczą się w pamięci lub ich przetwarzanie trwa zbyt długo? Kiedy dask jest dobrym rozwiązaniem? Kiedy warto zainteresować się PySpark? A kiedy użyć TensorFlow? – W jaki sposób zrównoleglić obliczenia na klaster obliczeniowy bez przepisywania całego kodu? – Które algorytmy daje się łatwo zrównoleglić? Co zrobić, jeśli korzystamy z któregoś z pozostałych? |
17:00 – 17:15 | Zakończenie, rozdanie certyfikatów i ankieta ewaluacyjna |
Prelegenci
TRENER

Krzysztof Mędrela
Trener i konsultant specjalizujący się w Pythonie oraz Machine Learning. Szkoli i prowadzi programy rozwojowe w firmach takich jak Nokia, Ericsson, Motorola, Allegro, UBS, oraz w sektorze publicznym (np. Office for National Statistics), zarówno w Polsce, jak i za granicą. Wierzy, że same umiejętności techniczne nie wystarczą w Machine Learning i dlatego kładzie nacisk na szersze spojrzenie oraz na aspekt biznesowy.
Zanim poświęcił się pracy trenera i konsultanta, nabył wszechstronne doświadczenie pracując jako programista. Nie ogranicza się tylko do Machine Learning. Rozwijał oprogramowanie open-source i jest twórcą modułu System Check Framework wydanego w 2014 roku w Django, wiodącym frameworku webowym w Pythonie. Jako freelancer, współtworzył i wdrażał AMY - dedykowany, open-sourcowy system ERP dla organizacji szkoleniowej Software Carpentry, która wyszkoliła do tej pory ponad 30 tys. naukowców.
Uczestnicy o szkoleniu
“Szkolenie było udane. To duża sztuka zmieścić taki materiał w 2 dni i dojść do momentu gdy całą wiedzę pozyskaną można już zastosować. Oczywiście sporo wiedzy jeszcze zostało do ogarnięcia ale to całkiem dobry punkt wyjścia.”
Uczestnikom najbardziej w szkoleniu podobało się:
– interaktywność,
– ćwiczenia,
– kompetencje i wiedza trenera,
– bardzo dobra komunikacja z uczestnikami,
– świetne materiały szkoleniowe,
– wyczerpujące odpowiedzi trenera,
– dużo kodu i poruszanie wszystkich tematów.

Aneta Włodkowska
aneta.wlodkowska@gigacon.org
Patroni Medialni
- poradnik przedsiębiorcy