Podsumowanie 1. edycji szkolenia „Wprowadzenie do Data Science z Python”

Niedawno zakończyłem pierwszą edycję mojego autorskiego szkolenia. Chciałbym się z Tobą podzielić krótką relacją z procesu jego tworzenia i podsumowaniem jego przebiegu.

Pomysł

Zacznijmy od początku, a więc od pomysłu. Z przygotowaniem szkolenia wprowadzającego do Data Science nosiłem się od dawna. Pierwszym raz pomyślałem o tym mniej więcej przed dwoma laty. Miałem wtedy pewne wątpliwości. Dotyczyły one odbioru kolejnego szkolenia tego typu na rynku – jest ich przecież cała masa. Czy rzeczywiście potrzebne jest jeszcze jedno? Co miałoby ono wnieść? Czy jest coś, co jeszcze nie zostało omówione?

Research

By rozwiać moje wątpliwości i ocenić szanse powodzenia inicjatywy zrobiłem solidną analizę. Przeanalizować agendy dziesiątek szkoleń dostępnych online. Skrupulatnie notowałem wszystkie wnioski.

Później spisałem na kartce uwagi dotyczące tych szkoleń, które sam miałem okazję przerobić. Niektóre były lepsze, inne gorsze. Zadałem kilka pytań:

  • Które z tych szkoleń zmieniły coś w mojej pracy?
  • Które informacje szczególnie utkwiły mi w pamięci?
  • Które z nich przeniosły mnie na wyższy poziom w Data Science?

Wtedy zdałem sobie sprawę, że listę tych wartościowych szkoleń można zawęzić do zaledwie 3 pozycji. Wiedza z pozostałych jest w mojej pamięci albo w pewien sposób „zamazana” (wielokrotnie powtarzana podczas różnych szkoleń – nie jestem w stanie powiedzieć gdzie i kiedy się danej umiejętności nauczyłem), albo nieaplikowalna w praktyce i nigdy nie miałem okazji z niej skorzystać.

Pokazuje to skalę marnotrawstwa czasu i pieniędzy, bo przecież za te szkolenia zawsze płaciłem – gotówką lub poświęconym czasem. Przypomniał mi się wtedy cytat, który kiedyś przeczytałem:

Learning is new procrastination.

Przykre to, lecz zgadzam się z tym w 100%. Wiele osób przyswaja nowe treści, nie wiedząc do końca, po co i gdzie może tę wiedzę wykorzystać. Co więcej, w rozmowach ze znajomymi z branży dowiedziałem się, że dosyć powszechną praktyką jest kupowanie szkoleń i niekończenie ich. Podobnie z subskrypcjami: firma, w której pracują, zapewnia dostęp do DataCamp/EDX/Udemy, a na koniec roku okazuje się, że przerobili jedno spośród dziesiątek szkoleń i w dodatku nic z niego nie pamiętają.

PS. Zrób proszę  szybki eksperyment. Odpowiedz sobie na pytania:

  1. W jakich 3 szkoleniach/kursach ostatnio brałaś/-eś udział?
  2. Jakie informacje z nich pamiętasz?
  3. Kiedy użyłaś/-eś nowej wiedzy w praktyce?

Czy Twoje spostrzeżenia są podobne do moich? 🙂

Najlepsze szkolenia dały mi wędkę wraz z odpowiednim instruktarzem obsługi, a nie samą rybę. Pokazywały też, jakie są ryby, czym się charakteryzują, jak dobrać i dostroić wędkę do danej ryby, którą chce się złapać. Na każdym z nich prowadzący dzielili się informacjami z najbardziej interesujących wypadów na ryby (zarówno tych udanych, jak i tych zakończonych porażkami).

Powyższy research uzupełniłem ankietą, jaką przeprowadziłem wśród czytelników bloga i członków różnych grup związanych z Data Science na grupach Facebook. Ankieta dotyczyła ich ogólnych oczekiwań względem treści prezentowanych na blogu i potencjalnych nowych umiejętności, które chętnie by posiedli. Pytałem o to, czego najchętniej by się nauczyli, jakie mają największe problemy w analizie danych, etc.

Analiza i wnioski

Po researchu przyszła kolej na analizę. Co łączyło te 3 najlepsze szkolenia, w których sam miałem okazję wziąć udział?

  1. Stawiały na praktyczne użycie przerabianej wiedzy. Przykłady pochodziły z realnych projektów. Analizowane problemy były tożsame z tymi z projektów, w których miałem okazję brać udział. Nie było tam lania wody i problemów typu: klasyfikacja kwiatków na podstawie wielkości liści.
  2. Bazowały na sprawdzonych w praktyce algorytmach i technikach modelowania. Czy jest sens uczyć się na temat algorytmu/techniki „xyz”, gdy w praktyce są one praktycznie nieobecne w produkcyjnych zastosowaniach? W swojej karierze nie wdrożyłem żadnego modelu opartego o np. SVM. Zbudowałem za to wiele modeli z użyciem np. różnych rodzajów regresji i metod drzewiastych.
  3. Dawały mi bardzo dobre zrozumienie omawianych technik i algorytmów. Pozwalały na wyrobienie pewnej intuicji dotyczącej praktycznego zastosowania i m.in.:
    1. Dogłębnie zrozumiałem, jak działają.
    2. Poznałem ich dobre i słabe strony.
    3. Wiedziałem, na co uważać w praktycznych zastosowaniach z ich użyciem.
    4. Zrozumiałem, w jakim kontekście z nich korzystać, a kiedy lepiej postawić na coś innego.

Podsumowując i nieco parafrazując znane powiedzenie: najlepsze szkolenia dały mi wędkę wraz z odpowiednim instruktarzem obsługi, a nie samą rybę. Pokazywały też, jakie są ryby, czym się charakteryzują, jak dobrać i dostroić wędkę do danej ryby, którą chce się złapać. Na każdym z nich prowadzący dzielili się informacjami z najbardziej interesujących wypadów na ryby (zarówno tych udanych, jak i tych zakończonych porażkami). 😉

Co do wyników przeprowadzonej ankiety, to wnioski były jednoznaczne: ankietowani oczekiwali dzielenia się praktycznym doświadczeniem, „brudnych” i nieuporządkowanych zbiorów danych oraz przykładów maksymalnie zbliżonych do tego, z czym mierzymy się podczas realnych projektów.

Plan był więc dosyć prosty, jeśli chodzi o koncepcję: przygotować szkolenie, które połączy wszystkie powyższe wnioski. Nieco trudniej wyglądała kwestia realizacji. 😉

Przygotowywanie szkolenia

Prace nad szkoleniem rozpocząłem na początku 2023 roku. Zakładałem, że pracując po godzinach, maksymalnie w kwartał przygotuję wszystkie prezentacje i kody. Dziś widzę, jak optymistyczne były moje założenia. 😉 W Alior Bank przeszedłem w tryb pracy na pół etatu, by więcej czasu poświęcić na działalność związaną ze szkoleniami.

W maju otworzyłem działalność gospodarczą i byłem gotów do prowadzenia szkoleń. Pozostało mi jedynie kilka kwestii formalnych związanych z bezpiecznymi płatnościami online i drobnymi sprawami urzędowymi.

Koniec końców pierwsze szkolenie odbyło się w lipcu, a nie w kwietniu, jak początkowo zakładałem. Powodów było kilka:

  1. Życie jest pełne niespodzianek. Nie można wszystkiego przewidzieć. Pojawiło się kilka sytuacji, których obiektywnie nie dało się przewidzieć. Dodatkowo kilka problemów w życiu prywatnym i opóźnienie gotowe. 😉
  2. Cierpię na przypadłość zwaną potocznie perfekcjonizmem. Ma ona swoje plusy i minusy, a jednym z minusów jest (zbyt) długi czas przygotowywania różnych rzeczy.
  3. Przygotowanie zbioru inspirowanego realnym przypadkiem było bardziej czasochłonne, niż zakładałem. Był on w surowej postaci, tj. dane niespójne, umieszczone w kilku tabelach. Uczestnicy szkolenia musieli je odpowiednio wczytać, połączyć (wertykalnie i horyzontalnie), a następnie pogrupować i sprowadzić do postaci tzw. ABT, która pozwoli zamodelować badane zjawisko opisane w projekcie, który realizowaliśmy na potrzeby szkolenia. Konieczne było też przejście procesu inżynierii zmiennych, gdyż surowy zbiór nie posiadał żadnej gotowej zmiennej (ani objaśnianej, ani objaśniającej). Jak na realnym projekcie – wszystko musieliśmy przygotować sami. 🙂
  4. Przygotowałem znacznie więcej materiałów, niż było to konieczne na 20h szkolenie. Z oczywistych przyczyn wolałem mieć więcej niż mniej materiałów. Finalnie wyszło:
    1. Ponad 200 obszernych slajdów.
    2. Kilkaset linii kodu Python.
    3. Kilkadziesiąt ćwiczeń.
    4. Ok. 110 minut materiałów wideo, które jako bonus nagrałem i udostępniłem uczestnikom szkolenia.

Nie zrozum mnie proszę źle – nie szukam wymówek. Po prostu takie jest życie. 🙂

Poniżej zamieszczam kilka przykładowych slajdów z prezentacji szkoleniowych.

This slideshow requires JavaScript.

Przebieg szkolenia

Szkolenie było rozłożone na 3 dni, po 6 godzin nauki każdy. Co więcej, pomiędzy sesjami szkoleniowymi przygotowałem 3 sesje konsultacyjne, po 1.5h każda. Odpowiadałem w nim na wszystkie pytania użytkowników, których nie zdążyłem zaadresować podczas sesji szkoleniowych i które uczestnicy mogli zadawać również przez dedykowany formularz.

Szkolenie odbywało się w formie zdalnej z użyciem Microsoft Teams, które są dziś już standardem w zdalnej nauce i pracy. Na potrzeby szkolenia, każdemu uczestnikowi zapewniłem dostęp do dedykowanej spójnego i kompletnego środowiska, uruchomionego na maszynie wirtualnej w Microsoft Azure. Miało to zapobiec wszelkim problemom z konfiguracją, jaką uczestnicy posiadają na swoich prywatnych komputerach (różny wersje bibliotek i różne parametry maszyn, które są w różnym stopniu obciążone).

Podczas szkolenia postawiłem na:

  1. Dogłębne zrozumienie podstaw matematyczno-statystycznych – uważam, że stanowią one solidny fundament, na którym w przyszłości można budować kolejne kompetencje.
  2. Praktyczne przykłady – inspirowane realnymi problemami, z którymi sam się spotykałem podczas realizowanych projektów.
  3. Pragmatyczne podejście – omawianie tylko i wyłącznie takich technik i algorytmów, które mają zastosowanie w realnym świecie.

Począwszy od przygotowywania zbioru, poprzez eksploracyjną analizę danych, aż na technikach umożliwiających poprawę jakości dopasowania modelu – wszystko miało tu swój konkretny cel. Dobrym przykładem powyższego podejścia była część szkolenia, którą roboczo nazwałem „EDA, która ma sens”.

Nie było w niej absolutnie żadnych wykresów, podsumowań, czy statystyk, które nie byłyby istotne dla analizowanego zbioru z punktu widzenia użytego algorytmu, typów zmiennych, czy problemu, z którym się mierzyliśmy. Bez lania wody. Każde użyte narzędzie miało tu bardzo konkretny cel. Nie omawiałem technik i algorytmów, których użyteczność jest obiektywnie wątpliwa, bądź których to produkcyjnie z różnych przyczyn nikt nie stosuje. Stawiałem w 100% na pragmatyzm, gwarantujący skuteczność w codziennej pracy. 🙂

Opinie uczestników

Po szkoleniu przeprowadziłem anonimową ankietę wśród uczestników. Poniżej przedstawiam jej podsumowanie.

  • Średnia ocena szkolenia –  5/5.
  • Wszyscy ankietowani ocenili, że:
    • poleciliby szkolenie bliskiej osobie,
    • materiały były klarowne i zrozumiałe,
    • w odpowiedni sposób angażowałem uczestników,
    • w odpowiedni sposób tłumaczyłem nawet te trudniejsze zagadnienia,
    • stosunek teorii do ćwiczeń był bliski optimum,
    • tempo prowadzenia szkolenia było bliskie optimum.

Ponadto, jako najbardziej wartościowe elementy szkolenia, uczestnicy wskazywali m.in.:

  • rady wynikające z doświadczenia prowadzącego,
  • odnoszenie się do realnych projektów,
  • jakość materiałów,
  • sposób interakcji prowadzącego z uczestnikami,
  • gruntowny opis algorytmów,
  • częste nawiązywanie prowadzącego do praktyki.

Niemal wszystkie z priorytetów, które zakładałem, zostały zaznaczone w opiniach uczestników. Niezwykle mnie to cieszy, bo wszystko wskazuje na to, że osiągnąłem oczekiwany cel. 🙂

Dalsze plany

Na przełomie września i października odbędzie się kolejną edycję szkolenia. Jeśli chcesz wziąć w niej udział, zapisz się proszę na listę oczekujących. Powiadomię Cię w momencie, gdy szkolenie będzie dostępne do zakupu.

Źródło grafiki tytułowej: Nick Morrison, Unsplash

Podobał Ci się ten artykuł?

Jeśli tak, to zarejestruj się, by otrzymywać informacje o nowych wpisach. Dodatkowo w prezencie wyślę Ci bezpłatny poradnik 🙂

Bądź pierwszy, który skomentuje ten wpis!

Dodaj komentarz

Twój adres email nie zostanie opublikowany.


*