Uczenie maszynowe na DataWorkshop, pragmatyczne wejście do światu ML
Podcast

Uczenie maszynowe na DataWorkshop, pragmatyczne wejście do świata ML

Uczenie maszynowe, lub tak zwana sztuczna inteligencja jest bardzo gorącym tematem, głównie dlatego, że można dzięki niej uzyskać zauważalną wartość dodaną w biznesie. Czasem nawet może być ona kluczowa, bo dzięki temu pojawią się nowe biznesy, które zmieniają dotychczasowe reguły gry. W każdej branży obecność uczenia maszynowego jest coraz bardziej odczuwalna nie tylko na świecie, ale również w Polsce.

Pytanie, które zadają sobie dyrektorzy, managerowie, liderzy to w jaki sposób przeszkolić mój zespół w obszarze uczenia maszynowego. Również podobnie pytanie, tylko z innej perspektywy dość często zadają sobie osoby techniczne, np. programiści lub analitycy. Jak rozpocząć pracę z uczeniem maszynowym?

Cały paradoks polega na tym, że ilość informacji na ten temat jest tak ogromna, że ciężko jest się w tym odnaleźć. Są osoby, które próbują przerobić jak najwięcej różnych książek, artykułów, itp. w wyniku czego mają wrażenie, że wiedzą wszystko… natomiast dość często prawda jest taka, że dużo słyszeli, ale mniej przerobili.

Rozwiązanie rzeczywistych problemów wymaga innego sposobu myślenia. Musisz zacząć patrzeć na świat innymi oczami, traktować uczenie maszynowe bardziej jako narzędzie, niż cel. Wiem, że jest to dość oczywiste dla osób z biznesu, natomiast dla osób technicznych sama zabawa w uczenie maszynowe może być sposobem na dobrze spędzony czas.

Między innymi dlatego staram się utrzymywać stały kontakt z różnymi biznesami, poznawać przeróżne problemy i próbować zrozumieć, jakie umiejętności są najbardziej potrzebne, żeby to robić skutecznie. W roku 2018 współpracowałem z wieloma firmami i pomagałem przerabiać różne tematy związane z uczeniem maszynowym, o różnej złożoności. Między innymi robiłem klasyfikację produktów w katalogu, wykrywanie fraudów, prognoznozwanie sprzedaży, prognozowanie pewnych wzorców na giełdzie, prognozowanie związane ze wsparciem klienta, prognozowanie budżetu, nawet częściowo wspierałem bardzo ciekawy projekt społeczny, który miał na celu zminimalizowanie awarii na drogach (bardzo trzymam kciuki, żeby ten projekt poszedł dalej, bo technicznie rokuje dobrze). Również były inne projekty. Podam Ci jeszcze jeden przykład. Jest firma, która ma pewną przepustowość. Jak jest za mało zleceń, jest źle, jak jest za dużo, też jest źle. Natomiast jest potrzeba na dużą ilość zamówień. Ilość zamówień można regulować przy pomocy reklamy, chociażby na Google. Pytanie tylko, jak to zrobić rozsądnie. Tutaj z pomocą przychodzi prognozowanie oparte na uczeniu maszynowym. Z jego pomocą można częściej trafić w złoty środek, w wyniku czego firma maksymalizuje swój zysk, utrzymując jakość na wysokim poziomie.

Świadomie pomagam wielu firmom, bo dzięki temu przepuszczam przez swój mózg kolejne wyzwania i próbuję łączyć kropki z różnych branż. Doświadczenie które posiadam, staram się przekazywać w moim autorskim kursie online. Właściwie, mam ich już dwa. Pierwszy to praktyczne uczenie maszynowe. Czwarta edycja startuje 25 lutego 2019. Drugi online kurs to praktyczne prognozy szeregów czasowych. Jako słuchacz BiznesMyśli otrzymujesz zniżkę 15% na pakiet Gold lub Standard (kod: BIZNES_MYSLI_15), jak i również dostęp do modułu zerowego. Jak do tej pory odbyły się już 3 edycje kursu, gdzie sumarycznie wzięło w nim udział ponad 200 osób. 

Osoby po kursie używają zdobytej wiedzy w różny sposób. Ktoś już miał taką potrzebę w firmie i stosuje, ktoś inny przekonuje swoje kierownictwa, że warto, ale również są osoby, które znajdują pracę. Również ich w tym wspieram. Potem do mnie wracają pracodawcy i pytają, czy mam jeszcze kogoś do polecenia, ponieważ te osoby się sprawdziły. Staram się to robić bardzo ostrożnie, żeby dobierać je odpowiednio.

Mówić można różne rzeczy, więc lepiej jednak zapytać wprost absolwentów, co oni o tym myślą. Dlatego zaprosiłem 3 osoby (tyle zmieści się w odcinku), żeby podzieliły się swoją opinią. Warto wziąć pod uwagę, że są to osoby, dla których nagranie podcastu wiązało się ze stresem, więc proszę wybacz potencjalne “plątanie się”.


Zaczniemy od Dawida. To jest młody, ambitny człowiek, które ma dużo energii. Myślę, że może wiele osiągnąć, o ile tę energię odpowiednio ukierunkuje. Z tego co obserwuję, ma ciekawy plan, chociaż sam plan to żadne wyzwanie. Natomiast trzymam kciuki za jego rozwój i zapraszam do lektury.

Dawid Malarz
Dawid Malarz

Cześć Dawid, przedstaw się: kim jesteś, czym się zajmujesz, gdzie mieszkasz?

Cześć Vladimir! Mam na imię Dawid. Mieszkam w okolicach Krakowa. Na co dzień uczęszczam do szkoły, technikum drugiej klasy informatycznego. W wolnym czasie staram się programować, uczę się Pythona, rozwijam się w swoich obszarach, a od 6 miesięcy jest to sztuczna inteligencja.

Biorąc pod uwagę Twój młody wiek, wszystko dobrze rokuje na przyszłość. A powiedz, co ostatnio czytałeś?

Ostatnio, podczas wakacji przeczytałem biografię Steve’a Jobsa, napisaną przez Waltera Isaacson’a. Bardzo ciekawa książka, opisująca bardzo inspirującego człowieka jakim był Steve Jobs.

Widzę, że rezonuje kiedy mówisz o nim. Wspomniałeś, że ostatnio przez te 6 miesięcy Twoim tematem zainteresowania jest tak zwana sztuczna inteligencja. Przerobiłeś kurs praktyczny uczenia maszynowego na DataWorkshop i powiedz, jakie były Twoje oczekiwania i czy udało się je osiągnąć?

Przed kursem miałem podstawową wiedzę, tzn. wiedziałem że coś jest, ale nie wiedziałem jak to wykorzystać i w jakiej kolejności Dzięki Tobie, i dzięki całemu kursowi dowiedziałem się wszystkiego po kolei, zrozumiałem bardzo dużo i wiem teraz jak to stosować żeby otrzymać określone wyniki. Rozumiem już naprawdę dużo dzięki temu.

Brzmi ciekawie. A powiedz teraz, tak jeszcze trochę z drugiej strony, jak się czułeś podczas kursu? Czy biorąc pod uwagę ilość informacji które były przekazane, bo materiał jest bardzo szeroki, jak się czułeś z tym wszystkim kiedy przez te dwa miesiące pracowaliśmy razem?

Podczas kursu musiałem niestety wstawać o 5:00 rano i przerabiać kurs przez dwie godziny, a następnie wracając ze szkoły jeszcze przerabiać go z godzinę, dwie. Tak codziennie, ponieważ starałem się jak najbardziej szczegółowo dowiedzieć wszystkich informacji. To było chyba najtrudniejsze, ale czułem się naprawdę zadowolony z tego, że widzę swoje postępy.

Dlaczego niestety? Zwykle, ludzie którzy przyzwyczajają się do wstawania o 5:00 rano osiągają potem wielkie sukcesy.

Tak, lubię wstawać rano, ale niestety po miesiącu już stało się to bardzo uciążliwe, bo mój cały system funkcjonowania przestawił się i byłem niewyspany na lekcjach.

Jeśli chodzi o sen, to z jednej strony bardzo fajnie wstawać o 5:00 rano, ale z drugiej strony trzeba też zadbać o te 8 godzin snu. A powiedz, co Cię najbardziej zaskoczyło podczas kursu?

Najbardziej mnie zaskoczyło to, w jaki sposób przekazujesz wiedzę. Jest to naprawdę sposób dzięki któremu czytam całego notebooka i rozumiem 90%, czytam drugi raz, rozumiem już 95% i, na przykład następnego dnia potrafię już wykorzystać w pewnym zakresie tą wiedzę i to naprawdę jest bardzo ciekawe, w jaki sposób Ty to stworzyłeś i jak to działa.

Pamiętam, że w ramach kursu ja zwykle motywuję na różne sposoby i była stworzona taka lokalna grupa “Mastermind”, w której też brałeś udział. Powiedz, jak to wyglądało. Pamiętam, że pod koniec kursu te spotkania przestały być regularne, ale z drugiej strony wiem, że próbowaliście, przynajmniej na początku wspierać się nawzajem. Powiedz coś więcej, jak to działało.

Wyszliśmy z założenia, że grupa powstaje po to żeby motywować siebie nawzajem, i nawet nie tyle żeby zadawać pytania na temat kursu jak coś zrobić, bo od tego był Slack, ale od tego żeby motywować się i wspierać. Jak ktoś nie ma czasu, to zakładamy, że ta osoba napisze nam na Slacku, na grupce, że dzisiaj nie mam czasu, ale postaram się zrobić daną rzecz i, na przykład wieczorem starałem się napisać do tej osoby i zapytać czy się udało. To bardzo motywuje, bo jednak masz jakieś zobowiązanie według drugiej osoby, przez co starasz się to wykonać nawet jak nie masz czasu.

Bardzo fajne zagranie psychologiczne. To takie pilnowanie się nawzajem w pozytywnym sensie tego słowa, zwykle przynosi wyniki. Również z Pawłem zorganizowaliście spotkanie lokalne w Krakowie. Powiedz mi, co Cię zmotywowało żeby to spotkanie się odbyło, oprócz tego, że próbowałem namówić wszystkich uczestników żeby takie spotkanie zrobić, ale nie wszyscy chcieli wziąć na siebie tą odpowiedzialność, a u Ciebie była taka chęć. Co Cię do tego zmotywowało?

Jestem młody, dopiero wchodzę całą branżę IT, sztucznej inteligencji i chciałbym poznawać ludzi z tej branży, tak żeby w przyszłości mieć z nimi kontakt. Dlatego stwierdziłem, że jeżeli teraz jestem na kursie, są osoby które mają te same zainteresowania, jest szansa żeby spotkać się z nimi, to dlaczego tego nie zorganizuje? Napisałem do Pawła czy nie byłby chętny ze mną to zrobić, on się zgodził i razem postanowiliśmy to zorganizować. Było chyba 5 osób i planujemy następne spotkanie, na które Cię bardzo serdecznie zapraszam.

Kto tam może się dołączyć? Czy wy z Pawłem jak zbieraliście grupę mieliście jakieś ograniczenia co do osób które mogą tam przyjść?

Nie, żadnych ograniczeń nie było. Wstęp jest wolny, nikt za nic nie płaci, my z chęcią zapraszamy każdą osobę która by chciała przyjść i porozmawiać z nami o swoich przeżyciach i zainteresowaniach na temat sztucznej inteligencji. Mówię sztucznej inteligencji, bo to najbardziej ogólny temat. Nie ma żadnych przypadków, kiedy mówimy, że nie można przyjść. Jest to otwarte spotkanie dla uczestników wszystkich Twoich kursów, jak i również innych osób.

Super! Między innymi wiem, że dołączyła się jedna osoba, bodajże z pierwszej edycji, bo wysyłam maile i próbuję nagłośnić tą sprawę. Cieszą mnie takie lokalne grupy, które próbują się wspierać nawzajem. Też tam nie chodzi o to, żeby porozmawiać na tematy techniczne, bo akurat na to nie ma za bardzo czasu żeby to wszystko omówić, ale bardziej wymiana doświadczeniem, jakieś wskazówki, triki życiowe.

To jest bardzo fajne miejsce i do końca mam nadzieję, że ta inicjatywa dłużej pożyje. Wspomniałeś, że generalnie rzecz biorąc czytając materiał, notebooki, przerabiając to co wszystko było przedstawione na kursie, to po jakimś tam czasie dochodziłeś do prawie 100% zrozumienia. Powiedz teraz, co dalej? Zdobyłeś tą wiedzę, udało się zrozumieć co było przedstawione na tym kursie, ale jaki jest następny twój krok? Co zrobisz z tą wiedzą którą zdobyłeś?

Moim postanowieniem noworocznym jest zdobycie rangi “master” na“Kaggle” jeszcze w tym roku, dlatego ten cały rok poświęcam na zdobywanie praktycznej wiedzy, i oczywiście trochę teorii. Na “Kaggle” są konkursy, więc sądzę że tutaj najbardziej wykorzystam swoją zdobytą wiedzę oraz nauczę się nowych rzeczy.

Brzmi bardzo ambitnie. Komu polecasz wziąć udział w kursie DataWorkshop?

Kurs polecam przerobić każdemu, kto jest zainteresowany tymi tematami, kto nie ma solidnych podstaw Pythona, bo szczerze nie miałem na początku, jednak bez problemu można wszystko zrozumieć. Przy odrobinie czasu i chęci da się naprawdę wynieść bardzo dużo z tego kursu.

Dzięki wielkie za znalezienie czasu i podzielenie się swoją opinią. Życzę Ci bardzo, żeby udało się osiągnąć ten stopień “master” na Kaggle. Również trzymam kciuki za twój praktyczny rozwój, bo czuć ten potencjał i energię do działania. Trzymam kciuki za takie inicjatywy, jak chociażby lokalne spotkania w Krakowie i przy okazji jeszcze raz zapraszamy wszystkich chętnych do udziału w spotkaniach. Jak na razie nie są one regularne, ale kto wie? Być może w tym kierunku to pójdzie. Życzę Ci wszystkiego dobrego.

Dziękuję, nawzajem.


Teraz przejdźmy do opinii Radka. To jest człowiek, z którym chce się współpracować. Jest rzetelny, przewidywalny, odpowiedzialny. Umie zadawać właściwie pytania i próbuje bardziej zrozumieć ogół tematu, niż rzeczy wyrwane z kontekstu. Radek miał pakiet premium, więc spędziliśmy z nim 8 godzin na samych konsultacjach, gdzie lepiej go poznałem. Myślę, że Radek jest dobrym przykładem, że warto znaleźć w swojej firmie podobne osoby i umożliwić im rozwinięcie skrzydeł.

Radek Cichocki
Radek Cichocki

Cześć Radek, przedstaw się: kim jesteś, czym się zajmujesz, gdzie mieszkasz?

Cześć Vladimir, jestem Radek. Mieszkam we Wrocławiu, zajmuje się w tej chwili prowadzeniem zespołu konsultantów, którzy wdrażają narzędzia firmy Atlassian, czyli takie jak JIRA, Confluence, Bitbucket, Bumble. Jeśli ktoś pracuje w IT, to prawdopodobnie słyszał o którymś z nich, albo ich używa. My się zajmujemy wdrażaniem tego od a do z, to znaczy jeździmy na warsztaty analityczne, analizujemy potrzeby klientów, później konfigurujemy te narzędzia u nich zgodnie z wymaganiami które zebraliśmy, rozszerzamy te narzędzia o różnego rodzaju pluginy, które dodają funkcjonalności których te narzędzia nie mają. Robimy to przez kodowanie w języku Java, a następnie szkolimy użytkowników z tego i administratorów.

Ostatecznie świadczymy support do tych produktów, także ja prowadzę taki zespół. Mój background to programowanie. Wywodzę się z tego nurtu software engineering’u. Studiowałem informatykę na Politechnice Wrocławskiej. Później troszkę na uczelni w Szwecji. Niedawno skończyłem też MBI, więc mam pogląd biznesowo techniczny na różne aspekty, co się fajnie uzupełnia i fajnie sprawdza. Pracuję w firmie, która nazywa się “Deviniti”. To jest software house Wrocławski z polskim kapitałem. Mamy tam około 150 osób.

Myślę, że faktycznie te narzędzia które wymieniłeś są dość znane. Sam ich używam. Pracowałem też w różnych firmach i widziałem je na własne oczy w tej, czy innej konfiguracji. Co ostatnio czytałeś?

Ostatnia książka którą przeczytałem w całości, bo czytam je tak trochę wybiórczo i po kawałku nazywa się “Disrupted My Misadventure in the Start-Up Bubble”. Po polsku tytuł jest troszkę źle przetłumaczony moim zdaniem, to jest: “Fackup, czyli moja przygoda z korpoświatem”. Książka jest autorstwa takiego pana, który się nazywa Dan Lyons, i on był długoletnim redaktorem w Forbes, w Newsweeku i ma doświadczenie bardzo rzetelnego dziennikarza, który później został z tego Newsweeka zwolniony i przeszedł do firmy, która się nazywa HubSpot.

Ta firma się zajmuje generalnie marketingiem, takim troszkę zautomatyzowanym. Trafił do całkiem innej kultury firmy czyli do takiej, która jest złożona z młodych, dynamicznych ludzi. Może bez dużego doświadczenia, ale z dużą energią. Porównywał to do tego doświadczenia jak działa Krzemowa Dolina, od takiej strony firm, które chcą szybko zarobić, może niekoniecznie dostarczając wartość, ale robiąc dużo szumu dookoła siebie. Jest to bardzo interesująca książka, napisana z ciekawej perspektywy, która dużo mi dała do myślenia i też pokazała cały ten świat Kalifornii i tego Zagłębia od takiej strony, której nie znałem, także mogę ją polecić.

Bardzo dziękuję za wspomnienie tej książki, bo ona faktycznie jest ciekawa, również jak poruszenie tego tematu, że ten świat Doliny Krzemowej, tej Kalifornii dość często wygląda nieco inaczej. Tam jest dużo zalet i tam są super możliwości, jeżeli chodzi o rozwój, i tak dalej. Również są takie „czarne”, mniej znane aspekty, których nie widzą osoby z zewnątrz i dość często zbyt romantycznie podchodzą do tego tematu.

Pamiętam, że wcześniej byłem większym „romantykiem” i chciałem tam na pewno się przeprowadzić. Teraz już troszkę mniej, chociaż nadal uważam, że tamte rejony są bardzo fajne, jeżeli chodzi o rozwój, w szczególności tematy uczenia maszynowego. Chociaż warto przyznać, że teraz Kanada jest takim drugim centrum jeżeli chodzi o możliwości w tym obszarze. Wspominając uczenie maszynowe, opowiedz swoją historię. Jak to się stało, że tym się zainteresowałeś, albo wróciłeś do tego?

To jest historia, która rozpoczęła się mniej więcej pod koniec moich studiów. Skończyłem studia na informatyce na Politechnice Wrocławskiej w 2006 roku i każdy ze studentów wybiera najpierw specjalizację. Ja wybrałem inżynier oprogramowania, a w ramach specjalizacji wybierało się profil i ten profil to była taka grupa przedmiotów, którą trzeba było zrobić. Ja wybrałem profil sztuczna inteligencja, ponieważ wszyscy wybierali jakieś tam bazy danych, takie standardy które jakoś mnie nie pociągały, a ja chciałem pójść w coś innego i właśnie wybrałem sztuczną inteligencję, bo pomyślałem sobie, że kiedyś napiszę jakiś taki program, który za mnie wszystko będzie robił, a ja będę tylko siedział i patrzył jak to się dzieje. Takie miałem marzenie. Później dość szybko się okazało, że jednak ta cała sztuczna inteligencja jeszcze tak niedużo potrafi. To jest wszystko w takim stadium stricte naukowym i do biznesu jest ciężko z tym wyjść.

Ja się trochę zawiodłem. Zostawiłem ten temat na dość długo i zajmowałem się tym wszystkim, co Ci moi koledzy wybrali, czyli takie standardowe programowanie, tworzenie różnych featureów do produktów które ktoś inny wymyślił. I tak się niedawno rozejrzałem, że nagle po tych kilkunastu latach od skończenia studiów, automatyczne samochody jeżdżą same i widzę, że coś się tu zaczęło dziać, więc przyjrzałem się tematowi raz jeszcze. Zobaczyłem, że to wszystko jest już dość fajnie rozwinięte i faktycznie w biznesie zaczyna się sprawdzać. Postanowiłem wrócić do tego, a że podwaliny jakieś teoretyczne miałem, to było troszkę łatwiej, ale chciałem zobaczyć jak w praktyce to wygląda i szukając materiałów trafiłem na Twój kurs, który obiecywał takie praktyczne podejście. Zapisałem się, przeszedłem przez niego i nie żałuję.

Jakie miałeś cele i oczekiwania? Czy udało się je osiągnąć? Jak się czujesz po kursie?

Moje oczekiwania od kursu były takie, żeby do końca tego minionego roku 2018 nabyć aktualną wiedzę na temat algorytmów machine learningu aplikowanych do biznesowych problemów, tak żebym mógł produkcyjnie wdrażać rozwiązania problemów biznesowych. Na tym mi bardzo zależało i to się udało osiągnąć. Znam teraz te algorytmy, które rzeczywiście dają jakieś wyniki, wiem jak je wdrażać. Pokazałeś nam na kursie wdrażanie na produkcję, co było bardzo ciekawym elementem którego wcześniej nigdy nie poznałem, zwłaszcza w trakcie studiów, bo tam raczej to było do momentu: stwórzmy jakiś fajny proof of concept (POC), zobaczmy czy działa i w zasadzie potem nikt nie mówił co dalej, a tutaj się dowiedziałem. Więc jak się czułem podczas kursu? Czułem się wspierany, bo stworzyłeś bardzo fajną społeczność na Slacku, gdzie nawzajem sobie pomagaliśmy i tam się fajnie wszyscy udzielali.

Twoje wsparcie też było bardzo duże. W zasadzie żadnego pytania zadanego na Slacku nie pozostawiłeś bez odpowiedzi. Było tam dużo nowego materiału, dużo nowych idei i to wdrażanie na produkcje, które było dla mnie kompletną nowością oraz sporo aspektów o których nawet nie myślałem, typu wersjonowanie wszystkiego po kolei żeby osiągać powtarzalne wyniki, łącznie z wersjonowaniem danych parametrów do modelu było bardzo ciekawe. To było bardzo inspirujące i ta iskra, którą straciłem wtedy z końcem studiów, teraz trochę odżyła do tego ML’a i jestem pełen energii żeby doczytać jeszcze więcej na ten temat.

Miałeś pakiet premium który jest dość rzadki jeżeli chodzi o ilość osób, które mają ten pakiet, bo fizycznie mam 24 godziny jak wszyscy inni, więc ciężko tutaj wziąć większą grupę. Czy dla Ciebie ten pakiet premium faktycznie był wartością dodaną, i jeżeli tak, to dlaczego?

Był. Ja właśnie dlatego wybrałem pakiet premium, ponieważ chciałem mieć kontakt z kimś, kto wie o czym mówi, żebym mógł bardzo szybko “ubijać” moje “głupie” pomysły oraz doradzać w którą stronę pójść dalej. Chciałem przyspieszyć swoją naukę, i tak jak wspominałem na początku ja też się zajmuje zawodowo konsultingiem, więc swój swojego pozna. Jestem w stanie szybko powiedzieć, czy ktoś naprawdę wie o czym mówi i jest w stanie doradzić, czy po prostu przepala czas mówiącą o ogólnikach. I Ty zdecydowanie wiesz o czym mówisz, i to czuć. Byłeś w stanie skutecznie przekazać mi swoją wiedzę i dobrze mnie ukierunkować w rozwiązywaniu problemów, które miałem. Także to była dla mnie duża wartość. Podczas tych konsultacji poruszaliśmy bardzo szeroki zakres tematów. To nie tylko były rzeczy techniczne, ale też były tematy takie jak podejść do klienta z tematem machine learningu. Bo ja wiem jak podejść do klienta z tematem którym się zajmuje, natomiast machine learning jest trochę taką specyficzną działką. Już samo to, że nie możesz na pewno obiecać wyników jest dziwne, ponieważ w takim typowym podejściu software’owym zawsze gdzieś tam zrobisz kawałek i nawet jeśli projekt się przeciągnie, to gdzieś tam te wyniki na koniec dostaną, a tutaj to wszystko zależy od danych, od ich jakości, ilości, więc jak podejść żeby było dobrze, też sobie omówiliśmy i to było dla mnie bardzo ciekawe.

Muszę też podziękować Tobie za to, że te konsultacje przechodziły bardzo sprawnie z tego powodu, że zawsze przed startem miałeś pytanie na które mogłem też zajrzeć jeszcze przed spotkaniem, jakoś się zastanowić nad nim, oraz te pytania było bardzo dobrze ustrukturyzowane i logiczne, przez co pracuje się znacznie łatwiej. To jest jedna rzecz za którą chcę Ci podziękować.  Druga rzecz, która jest bardzo fajna jeśli chodzi o współpracę, to miałeś konkretne zadanie które robiliśmy, przy czym specjalnie to było bardziej tak zrobione z mojej strony, że trochę rzucałem Cię na głęboką wodę, gdzie tylko nadzorowałem czy płyniesz w dobrym kierunku, czasem toniesz, ale nie aż tak głęboko i fajnie jest mieć możliwość współpracy z człowiekiem, który po pierwsze ma jakiś konkretny problem do rozwiązania, a po drugie ma tę chęć i po trzecie umiejętności. Bardzo przyjemnie się wtedy współpracuje.

Bardzo dziękuję

Czy było coś, co Cię zaskoczyło na kursie?

Tak, było kilka takich rzeczy. Myślę, że pierwszą to była istotność feature engineeringu. Ja sobie nie zdawałem sprawy, jak to jest istotne i ile czasu faktycznie się spędza nad tym. Mi się wydawało, że większość czasu będę spędzał nad doborem modelu do problemu, nad jego parametryzacją. Czyli dostaję dane, wrzucam je po prostu na jakiś model, patrzę na wyniki i dobieram sobie ten model odpowiednio. Natomiast okazało się, że jednak większość czasu to jest czyszczenie tych danych, to jest przyglądanie się różnym korelacją między różnymi cechami. I to było dla mnie dużym zaskoczeniem, bo okazało się, że jest dokładnie odwrotnie niż myślałem. Także to była pierwsza rzecz.

Druga rzecz to była ilość materiału, którą nam dałeś. Było mnóstwo filmów. Pierwszy na otwarcie każdego modułu, około godzinny na koniec modułu, webinar który jest też około godzinny, w trakcie do każdej lekcji w tym module też miałeś filmy, do tego książka w postaci tekstowej, w postaci audiobooka i jeszcze te konsultacje to naprawdę było duże wyzwanie żeby temu podołać i wszystko przerobić. I powiem szczerze, że wszystkiego nie przerobiłem, ale fajnie, że zostawiłeś to po kursie, także będę sobie do tego jeszcze wracał i przerabiał to dokładniej.

To było zaskoczenie. Przydatność tego materiału w praktyce to jest też coś, co mnie zaskoczyło, bo faktycznie to jest wiedza z którą mogę iść w biznes i zrobić coś konkretnego. Co prawda, jest jeszcze oczywiście bardzo dużo rzeczy które muszę doczytać, douczyć się tak jak, na przykład NLP czy chociażby te szeregi czasowe których też uczysz. To mi się pewnie przyda, natomiast już ta wiedza którą mam, pozwala mi osiągnąć wyniki nawet przy tym problemie, który przerabialiśmy na konsultacjach. To jest problem który właśnie rozwiązuję aktualnie w pracy. Polega on na przewidywaniu czasu rozwiązania pewnego problemu zgłoszonego przez klienta jakiemuś pracownikowi, który ma go rozwiązać. Mamy już trochę historycznych danych i okazuje się, że prawdopodobnie bez NLP, tylko z tą wiedzą którą mam z kursu praktyczne uczenie maszynowe jestem w stanie osiągnąć całkiem ciekawe wyniki. Konkurs Kaggle, ten który zrobiłeś, czyli przewidywanie cen nieruchomości. W zasadzie taka analogia do tego co robię w firmie, trochę na innych danych oczywiście i zaskoczyło mnie to, że wcale nie było tak prosto osiągnąć relatywnie dobry wynik do tych którzy byli TOP i spędzili nad tym mnóstwo czasu. Ja tego czasu aż tyle nie miałem, ale nawet gdybym go miał to oddaje tutaj honor kolegom. Osiągnęli naprawdę bardzo dobre wyniki.

Wspaniale! Kontynuując ten wątek jeżeli chodzi o trzy kroki, bo ten problem który przerabialiśmy w trakcie konsultacji można jeszcze usprawnić, ale kierunek przynajmniej jest wiadomy. Jakie jeszcze masz plany i jak chcesz zastosować wiedzę którą zdobyłeś? Nie wiem o jakich planach możesz opowiadać z poziomu firmy, ale jestem ciekawy co dalej.

Jeśli chodzi o firmę to mogę powiedzieć na razie tyle, że będziemy robić pełny proof of concept, takie mini prototypy różnych hipotez, próbować patrzeć czy mamy dane, które nam pozwalają rozwiązać problemy zgłaszane przez naszych klientów. To się wiąże głównie z klasyfikacją ticketów wpadających do systemów helpdeskowych, z podpowiadaniem jakie tematy należałoby opisać bardziej szczegółowo w bazie wiedzy. Żeby to dobrze zrozumieć trzeba mieć jakiś background w narzędziach Atlassiana, natomiast tak ogólnikowo mogę właśnie o tym powiedzieć. Będziemy weryfikować te hipotezy na podstawie danych, które mamy i na podstawie wiedzy, którą wyniosłem z tego kursu. To jest pierwsza rzecz, jeśli chodzi o to co dalej chciałbym zrobić. Druga rzecz, to chciałbym się oczywiście rozwijać praktycznie, nie tylko na tych danych które mam w firmie, ale też na innych. Myślę, że będę patrzył na Kaggle’a i może niekoniecznie ścigał się z tymi najlepszymi, bo musiałbym nie mieć życia żeby to robić i wygrywać, natomiast na pewno chciałbym poćwiczyć sobie i popatrzeć czy jestem w stanie poprawić swoje wyniki. Te dane na pewno mi się przydadzą i do uczenia się aspektów, takich jak NLP i być może szeregów czasowych.

Bardzo dziękuję. Komu możesz polecić kurs online praktyczne uczenie maszynowe DataWorkshop?

Ja bym go polecał w pierwszej kolejności programistom, i to wszystkim, ale zwłaszcza takim którzy chcą spróbować czegoś nowego, bo być może już się znudzili rozwiązywaniem tysięcznego buga i chcieliby zobaczyć coś ciekawszego. Poleciłbym to też ludziom, którzy potrafią myśleć logicznie, którzy mają ścisły umysł i których interesuje uczenie maszynowe, ale im bym polecał jednak najpierw przerobić taki choćby podstawowy kurs programowania, najlepiej w Pythonie. Jeśli to zrobią, to mają dobrą podstawę żeby wejść w Twój kurs, bo sam widziałem po sobie. Ja mam dużą wiedzę programistyczną, znam języki takie jak Java, C#, C, C++, gdzieś tam w tle Pascal kiedyś był też, więc programować potrafię, natomiast Pythona nie znałem.

Moduł zerowy który dałeś do tego kursu był bardzo pomocny, natomiast czasami miałem takie wrażenie, że ja dokładnie wiem co chcę zrobić ale nie wiem jak dokładnie to zapisać i musiałem troszkę researchu przeprowadzić w trakcie, co mnie troszkę spowalniało, zajmowało czas i paliło energię. To takie uczucie, jak wiesz co chcesz powiedzieć i masz to słowo na końcu języka, ale nie wiesz jakie to jest słowo. Tego się da uniknąć jeśli się tego Pythona troszkę lepiej pozna wcześniej. Więc takie dwie grupy: programiści i ludzie którzy myślą logicznie i interesują się uczeniem maszynowym.

Super! Dziękuję Ci bardzo Radek za Twój czas, który spędziłeś dzieląc się swoją opinią i życzę Tobie, żeby udało się zrobić te wszystkie rzeczy, które masz zaplanowane w firmie, jak i również prywatnie. Wszystkiego dobrego, do usłyszenia, do zobaczenia.

Bardzo dziękuję, do usłyszenia.


Teraz kolej na Pawła. Paweł to człowiek, który jest dla mnie bardzo inspirujący. Mimo tych wszystkich trudności, które ma w życiu, stara się z nimi sobie radzić, i co ważne mieć przy sobie dobry humor i zero pretensji do innych. Teraz nie chcę opowiadać historii, bo prawdopodobnie część z nich jest prywatna, ale faktycznie, wiele osób na jego miejscu zachowałoby się zupełnie inaczej, bardziej agresywnie do świata.

Kolejną inspiracją z jego strony jest to, że Paweł wygrał konkurs, który był zorganizowany podczas kursu. Inspiruje mnie to dlatego, że poziom który udało się mu osiągnąć w rozwiązaniu był dość dobry, a przedtem nie miał styczności z uczeniem maszynowym. Co prawda musiał spędzić trochę czasu (i to zrobił), ale warto dodać że ma trójkę dzieci i pracę pełnoetatową, więc ciężko mu zarzucić, że jest łatwiej mu znaleźć wolny czas. Dlatego tutaj bardziej chodzi o organizowanie życia. Zapraszam do lektury.

Paweł Dulak
Paweł Dulak

Cześć Paweł, przedstaw się: kim jesteś, czym się zajmujesz, gdzie mieszkasz?

Cześć Vladimir. Ja mieszkam w Krakowie, staram się pomagać takim nietechnicznym firmom w prowadzeniu ich biznesu w internecie. Opiekuje się ich serwerami i stronami www, bazami danych. W dużej mierze to jest oparte na rozwiązaniach chmurowych. Takie trochę programowanie, trochę zarządzanie. To są moje główne zajęcia.

Co ostatnio czytałeś?

Dla swojego rozwoju czytałem ostatnio Davida Allena, “Getting Things Done”. To jest taka książka do której wracam co jakiś czas, żeby trochę sobie poukładać swoje życie. A z rzeczy związanych bardziej z machine learningiem, to też miałem okazję zajrzeć do książki “Superinteligencja” Nicka Bostroma. To jest taka książka o scenariuszach i zagrożeniach, które niesie ze sobą rozwój sztucznej inteligencji. Potraktowałem to bardziej jako zbiór opracowań naukowych i czegoś ciekawego, co traktuje o tej dziedzinie która jest dla mnie jeszcze cały czas trochę niepoznana.

A co się stało, że zainteresowałeś się uczeniem maszynowym. Jak do tego doszedłeś?

To jest tak, że ja od dłuższego czasu słucham różnych podcastów. Kiedyś trafiłem na Twój i jako że w pracy też mam do czynienia z różnymi algorytmami, zacząłem się zastanawiać czy coś takiego mogłoby się przydać właśnie naszym klientom w ich pracy. Właściwie niewiele później okazało się, że jeden z naszych klientów chciałby zbadać sentyment komentarzy, które zostawiają klienci na ankietach. Ankiety są rozsyłane przez banki i klienci wypełniają te ankiety zostawiają też komentarze. Chcieliśmy zbadać sentyment tych komentarzy. Okazało się, że są gotowe rozwiązania. My zastosowaliśmy bodajże “Amazon Comprehend”. Jest to gotowy moduł który się zajmuje dokładnie badaniem sentymentu, natomiast brakowało mi jakiejś głębszej wiedzy dotyczącej właśnie tego, jak to się dzieje że to wszystko pracuje tak, jak trzeba i czy moglibyśmy coś zmienić na własne potrzeby. Dlatego chciałem poznać tę dziedzinę żeby nie było tak, że tylko używam jakichś narzędzi i zupełnie nie wiem co tam gdzieś w środku siedzi.

To może warto powiedzieć tak trochę na boku, że słuchasz różnych podcastów, również BiznesMyśli, za co Ci dziękuję. A teraz przejdźmy do tego o czym wspominałeś, że zacząłeś myśleć jak swoim klientom można pomóc przy pomocy uczenia maszynowego i prawdopodobnie wtedy pomyślałeś o kursie DataWorkshop praktyczne uczenie maszynowe. Jakie miałeś oczekiwania i czy zostały one spełnione na tym kursie?

Sprawa wygląda tak, że ja właściwie zupełnie wcześniej nie próbowałem sam interesować się uczeniem maszynowym. Zajrzałem może na dwie strony dotyczące “TensorFlow”, czy jakichś innych bibliotek, natomiast było to dla mnie na tyle nieczytelne na pierwszy rzut oka, że stwierdziłem że nie będę sam próbował gdzieś się tego nauczyć i stąd właśnie pomysł żeby zajrzeć na kurs, na którym to jest przestawione od A do Z. Głównie chodziło mi o nabycie, dosłownie od podstaw tej wiedzy, żeby dla kogoś kto wcześniej zupełnie nie miał z tym do czynienia, nie czytał zbyt wiele na ten temat, żeby dowiedzieć się wszystkiego co jest mi potrzebne aby chociażby minimalne rozwiązanie uruchomić, a przynajmniej zrozumieć co tam się dzieje. Przy wyborze jakichś bibliotek, czy czegoś co chciałbym użyć żebym nie musiał się zastanawiać co oni do mnie piszą, o co tam chodzi na tych stronach.

I okazało się, że na kursie dostałem całą dużą dawkę wiedzy, dokładnie od podstaw. To mnie bardzo ucieszyło, że zaczęliśmy od takich zupełnie prostych rzeczy, bardzo prostych pojęć i spojrzenia na bardzo proste rozwiązania, co mnie troszeczkę ośmieliło do używania później czegoś bardziej skomplikowanego. Te rozwiązania były wprowadzane stopniowo, coraz trudniejsze, dzięki czemu łatwiej mi było zrozumieć co się dzieje, dlaczego pewne rozwiązania się w taki a nie inny sposób wykorzystuje. Dzięki takim bardzo praktycznym przykładom, które tam się pojawiały, tak naprawdę mam wrażenie, że rozumiem w tym momencie jak te mechanizmy działają na tyle, żeby już świadomie wybierać rozwiązania które mogą pomóc w konkretnej sytuacji dla mnie, czy dla mojego klienta. I to jest to, o co mi chodziło. Bardzo się cieszę, że właśnie w ten sposób udało się dojść do takich rezultatów.

Co Cię najbardziej zaskoczyło na kursie?

Myślę, że te biblioteki które już są, i są na wyciągnięcie ręki, że są one bardzo proste w takim podstawowym użyciu w momencie, kiedy jeszcze nie jesteśmy jakoś bardzo zainteresowani głębokimi parametrami tych bibliotek, jakimś dobieraniem specyficznych parametrów, czy jakąś bardzo nietypową sytuacją. Mamy proste dane z których chcemy wyciągnąć jakieś proste rezultaty, to właściwie wystarczy parę linijek kodu i to wszystko działa. To mnie bardzo zaskoczyło, że właściwie mając trochę uporządkowanych danych mogę je po prostu pobrać, zasilić w odpowiedni sposób model, ten model zaczyna działać i już za chwilę mogę tak naprawdę korzystać z rezultatów tego, co stworzyłem. Nie spodziewałem się, że tak proste są te rozwiązania, bo myślałem że to jest dużo bardziej skomplikowane, i że trzeba będzie dużo więcej czasu poświęcić żeby dojść do jakichś sensownych rezultatów.

Zwykle pytam moich gości co ich zaskoczyło, a teraz sam powiem, co mnie zaskakuje przy każdej edycji. W ramach kursu jest konkurs. Też brałeś udział w tym konkursie, wygrałeś go, gratuluję. I co mnie zaskakuje, że wcześniej jakoś szczególnie tym się nie interesowałeś technicznie, gdzieś tam może słyszałeś w podcastach, ale jako obszar nie był on zbadany przez Ciebie wcześniej. Podobnie było w drugiej edycji. Osoba która wygrała, też za bardzo nie pracowała z uczeniem maszynowym.

Co prawda i pierwszą i drugą sytuację łączy jedna rzecz – wasze doświadczenie w IT. Co mnie cieszy, albo inspiruje i też zaskakuje jednocześnie to, że jeżeli jest osoba która ma duże doświadczenie w IT, to wystarczy jej pokazać kierunek myślenia, pokazać narzędzie i to działa. Ludzie po prostu wygrywają konkursy i warto przyznać, że rozwiązanie które udało Ci się osiągnąć i jest mega dobre. Czasami firmy które się w tym specjalizują nie potrafią powtórzyć podobnego wyniku, więc to dla mnie jest zaskakujące, jak czasem tą wiedzę można tak łatwo przelać na odpowiedni grunt.

Ja się cieszę, że faktycznie udało mi się taki rezultat osiągnąć. Trochę myślę o tym, że w mojej pracy, na co dzień tak naprawdę ja rozwiązuje problemy. Często klienci przychodzą do nas z różnymi dziwnymi pomysłami, czy dziwnymi problemami i ja często muszę przeskakiwać z jednego kontekstu na drugi. Czasem coś trzeba poprawić po stronie bazy danych, czasem po stronie oprogramowania, czasem na frontendzie. Te rozwiązania nie zawsze są takie zupełnie banalne. Gdzieś to moje życie, jako taka złota rączka dla naszych klientów, pokazało mi trochę jak różnie można podejść do problemu i może to pomogło trochę też w tym, żeby znaleźć mniej typowe rozwiązanie, czy inaczej podejść do tego konkursu, ale cieszę się, że taki wynik udało się osiągnąć.

Super. Wiem, że z Twojej firmy już 3 osoby dołączają się do czwartej edycji. To jest ciekawe, że firma ma budżet i wybiera interesujące szkolenie, bo ludzie są ciekawi tego, natomiast jakie Ty masz teraz plany? Jak zamierzasz wykorzystać wiedzę którą zdobyłeś podczas kursu, czy to prywatnie, tak hobbystycznie, czy bardziej właśnie zawodowo.

Zupełnie na początek, mam taki swój prywatny projekt, ponieważ mam swoją aplikację, taki mały program do prowadzenia budżetu domowego i pilnowania wydatków. Stwierdziłem, że jedną z rzeczy których nie lubię tam robić, to jest kategoryzacja tych wydatków, przypisywanie ich do właściwych grup i zawsze to zostawiam gdzieś na ostatnią chwilę. Potem mam całą masę takich rzeczy do poprawienia, a ponieważ mam już tam trochę danych, to spróbuję taką prostą kategoryzację na razie wyszkolić i zapiąć do tego programu, zobaczyć czy tam jej chociażby w minimalny sposób pomoże, a nawet jeżeli poradzi sobie z połową tych rekordów które ja muszę ręcznie przerobić, to już będzie dla mnie duży zysk.

Druga rzecz, to tam jest wyszukiwanie takich rekordów, które są nieistotne ze względu na budżet, bo na przykład jeśli wypłacamy pieniądze w bankomacie, to tak naprawdę one nie znikają i nie jest to wydatek, tylko one przechodzą z konta do portfela. Trzeba to w odpowiedni sposób też obsłużyć. Takie dwie rzeczy to jest zupełny początek. Prywatnie chciałbym to zrobić dlatego, że nie chcę od razu rzucać na klientów jakiejś nowo poznanej wiedzy. Chcę zobaczyć jeszcze raz jak to w praktyce gdzieś u mnie zadziała, natomiast też u naszych klientów już się pojawiło, tak jak wspominałem o tym kliencie który bada sentyment wypowiedzi swoich respondentów, to tam jest też pytanie o to, czy dałoby się to kategoryzować żeby, na przykład przypisać pewne komentarze do tego, że ten komentarz dotyczy na przykład obsługi w banku, a tamten komentarz dotyczy kosztów, a inny komentarz dotyczy trudności z wzięciem kredytu. Myślę, że to jest taki kolejny krok, żeby spróbować zobaczyć co z danych które nasi klienci mają można by jeszcze wyciągnąć i czy jest jakaś wartość, którą dla nich moglibyśmy w ten sposób przedstawić. Natomiast to w dużej mierze będzie zależało od tego, jakie dane już u klientów są i czy będziemy w stanie coś sensownego i dobrego dla nich znaleźć.

Jak zwykle od Ciebie można się spodziewać, że wszystko już jest poukładane zgodnie z planem. Jeżeli chodzi właśnie o tą klasyfikację kategorii, to też prawdopodobnie może być ciekawe, bo tak się robi w podobnych problemach, że niekoniecznie klasyfikuje się to na ostatnią kategorię tylko, na przykład dwie trzy, albo cztery, i masz taki AI, a następnie wybierasz nie z 10, z 20 tylko z dwóch trzech i on Ci już sugeruje. Potem wystarczy tylko kliknąć. To już jest taki półautomat, który stosunkowo łatwiej jest zrealizować, a tym bardziej że będziesz mieć jeszcze więcej danych, przez co łatwiej Ci będzie zrozumieć, w których miejscach model się myli. Będziesz mógł go poprawiać, żeby to dawało coraz lepszy wynik. Swoją drogą, to brzmi jak dobry pomysł na startup.

Ja patrząc też na swoje doświadczenia z pilnowaniem swojego budżetu myślę, że nie jest tak łatwo powierzyć takie dane komuś na zewnątrz. Co innego jest trzymać te dane w chmurze, czy u kogoś na serwerach, a co innego u siebie na swoim laptopie i obrabiać je lokalnie. Ja już mam tych danych na tyle dużo u siebie, że mogę spokojnie jakiś model wyszkolić, ale myślę że gdybym miał startup uruchamiać i zbierać cudze dane, to bym się trochę bał czegoś takiego.

Komu polecasz zrobić kurs online na DataWorkshop?

Przede wszystkim osobom, które chcą poznać coś ciekawego i które nie boją się spędzić naprawdę sporo czasu nad prostymi rzeczami, ale takimi które wymagają spojrzenia i przetestowania własnymi rękami, jak to działa, spróbowania czy dane rozwiązanie jest dobre, czy nie. Takich osób, które mają trochę dostępu do danych, przez co będą miały później co zrobić z tą wiedzą, bo tak naprawdę wiedza dla samej wiedzy nie wiem czy jest bardzo sensowna, ale w momencie kiedy ktoś tak jak, na przykład u nas ma dostęp do klientów, którzy mają dane może im jakoś pomóc, to myślę że to byłoby super.

Również, tak z mojego punktu widzenia dobrze jest przynajmniej troszeczkę tego oprogramowania znać, bo tam faktycznie sporo czasu się spędza pisząc różne rozwiązania, które może nie są bardzo skomplikowane, ale było mi łatwiej dlatego, że już gdzieś dużo różnych rzeczy pisałem i nie musiałem się zastanawiać nad samą składnią języka, tylko po prostu mogłem od razu przejść do rzeczy. Podsumowując, dla osób które są żądne wiedzy i chcą faktycznie coś ciekawego poznać co może zmienić nasze życie i dla osób które gdzieś chociaż trochę miały styczność z programowaniem.

Dzięki Paweł za Twój czas. Też życzę Ci żeby tak na spokojnie, w sposób poukładany udało się wdrożyć tą wiedzę którą zdobyłeś na kursie i trzymam kciuki żeby wszystko to, co gdzieś tam pojawiło się w słowach, pomysłach udało się zrealizować. Wszystkiego dobrego!

Dziękuję Ci bardzo. Bardzo to miłe z Twojej strony i mam nadzieję, że faktycznie uda się tą wiedzę gdzieś wykorzystać z pożytkiem dla mnie i z pożytkiem dla innych. Dzięki.


Dziękuję Ci bardzo za poświęcenie czasu na cały odcinek. Wiem, że to jest bardzo ciekawy temat dla osób które chcą rozpocząć naukę z uczeniem maszynowym, ale również wiem, że czytają to osoby które są ciekawe jak to się wszystko odbywa. Dziękuję Ci bardzo jeżeli udało Ci się dotrzeć do końca tego odcinka podcastu. Zapraszam na kolejny odcinek podcastu, w tym przypadku to będzie 50. Zobaczymy czy uda mi się zrealizować to, co chcę zrobić, bo mam ambitny plan, ale z drugiej strony mam teraz bardzo ograniczony czas ze względów prywatnych, ale o tym wspomnę może później. Tak czy owak, mam ciekawy plan zrealizować jeden odcinek, którego trochę się boję, bo chcę poruszyć tematy których na co dzień nie poruszam, jednak dużo nad tym się zastanawiam i o tym myślę. Będę bardzo ciekawy Twojej opinii, a na dzisiaj to tyle. Jeszcze raz dziękuję za wspólnie spędzony czas i do usłyszenia, do zobaczenia!

Od 2013 roku zacząłem pracować z uczeniem maszynowym (od strony praktycznej). W 2015 założyłem inicjatywę DataWorkshop. Pomagać ludziom zaczać stosować uczenie maszynow w praktyce. W 2017 zacząłem nagrywać podcast BiznesMyśli. Jestem perfekcjonistą w sercu i pragmatykiem z nawyku. Lubię podróżować.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *