Product Manager w zespole AI
Jak wygląda praca Product Managera w zespole AI? Na to i wiele innych pytań odpowie gość tej rozmowy – Ola Możejko. Mieliśmy okazję się poznać podczas organizacji konferencji DataWorkshop Club Conf w 2018 roku, a później widywaliśmy się na wielu innych wydarzeniach. Zawsze można było liczyć na świetną merytorykę jej prezentacji oraz wyjątkową atmosferę, która jej towarzyszyła. Historia Oli jest bardzo ciekawa – skończyła studia matematyczne, później pracowała jako Machine Learning Engineer, Data Scientist i niedawno zdecydowała się zmienić tę ścieżkę kariery i zostać Product Managerem. Porozmawiamy o tym, skąd pomysł na taką zmianę, ale także o sztuce zarządzania projektami, roli Product Managera w zespole AI i nie tylko. Zaczynamy!
Cześć Ola. Przedstaw się: kim jesteś, czym się zajmujesz i gdzie mieszkasz?
Cześć Vladimir. Jestem Ola, mieszkam aktualnie w Warszawie i pracuję jako młodsza managerka do spraw produktów Allegro. Wcześniej ponad 4 lata spędziłam pracując na technicznych stanowiskach, robiąc projekty związane z uczeniem maszynowym. Dwa lata spędziłam w startupie, który świadczył usługi konsultingowe w zakresie sztucznej inteligencji. Później niepełne 2 lata jako Senior Data Scientist w Pracuj.pl.
Bardzo Ci dziękuję za zaproszenie i cieszę się, że będziemy mogli porozmawiać.
Cieszę się również, że udało nam się spotkać. Twoja ścieżka kariery to bardzo ciekawa historia. Udało Ci się połączyć obszary, których zwykle się nie łączy.
Najpierw, zgodnie z tradycją, zapytam, jaką ostatnio książkę przeczytałaś? Nie musi być stricte techniczna, ale może. Dlaczego warto ją przeczytać?
Ostatnio ze względu na zmianę roli czytam intensywnie książki biznesowe. Jednak tym razem nie chciałabym podzielić się żadną książką biznesową, tylko nieco mniej oczywistą propozycją. Jest to książka, która zrobiła na mnie największe wrażenie ze wszystkich, które przeczytałam w 2021 roku. Jest to pozycja chilijskiego pisarza Benjamina Labatuta, która nazywa się When We Cease to Understand the Word.
To jest zbiór opowieści o wielkich naukowcach. Pojawiają się tam takie nazwiska jak m.in. Grothendieck, Schrödinger czy Schwarzschild. Jest to rzecz gdzieś z pogranicza historii nauki i fikcji. To, co mi w tej książce się jakoś bardzo spodobało to to, że przedstawione tam są bardzo subtelne zależności pomiędzy różnymi badaniami naukowymi czy różnymi postaciami, np. jest pokazane jak wynalezienie błękitu pruskiego wiążę się później z wykorzystaniem Cyklonu B. Są też trudniejsze tematy poruszone, ale jest to naprawdę w bardzo ciekawy sposób opisane i z tej mozaiki historii naukowców, które gdzieś tam balansują na granicy fikcji i historii nauki, wyłaniają się bardzo ważne pytanie, które też są aktualne w kontekście sztucznej inteligencji. Są to pytania o odpowiedzialność za prowadzone badania, za ich nieprzewidziane konsekwencje.
Oprócz tego też bardzo ciekawa jest warstwa opisu postaci tych naukowców i tego, jak ich geniusz wpływał na ich życie prywatne. Naprawdę bardzo ciekawa rzecz i serdecznie wszystkim polecam.
Bardzo dziękuję za to polecenie. Może nie jestem osobą, która najwięcej książek czyta, ale dość często jest tak, że goście polecają książkę, którą akurat przeczytałem. Ty mnie zaskoczyłaś, więc dzięki wielkie za niespodziankę.
Działasz bardzo aktywnie w branży ML, DS od kilku już lat. Ciekawe jest, że dość znacząco zmieniłaś swoją ścieżkę, bo zaczynałaś jako ML Engineer, Data Scientist. Teraz postanowiłaś być Product Managerem. Skąd taka decyzja i pomysł na zmianę?
Mam taką cechę, że bardzo lubię analizować dane, ale też sytuacje, ludzi i siebie. Wydaje mi się, że każda dobra analiza zaczyna się od postawienia jakiegoś pytania. Ja mam takie pytanie, które mi towarzyszy bardzo często w życiu i to jest pytanie: Dlaczego?. Jest też taka metoda, która jest używana m.in. przy ocenie powodów różnych awarii i to jest tzw. 5 Whys. Chodzi o to, że pytamy kilkukrotnie, umownie 5 razy, dlaczego coś się stało, aż dojdziemy do tej głównej przyczyny. Ja to często stosuję i stosowałam na sobie. Też w kontekście zawodowym, czyli pytałam się na bieżąco, dlaczego robię to, co robię, jaka jest moja motywacja, która za tym stoi i też badałam, co mi to daje, a co ja wnoszę.
W toku tych obserwacji i pytania samej siebie o własne motywacje zauważyłam, że po pierwsze w mojej pracy to, co naprawdę sprawiało, że chciało mi się z radością stawać rano i iść do tej pracy, to był etap planowania strategicznego, ustalania celów, priorytetów, kontaktu z ludźmi, później ewaluowania wyników, ich prezentacji czy tworzenia planów. Sam proces implementacji też był dla mnie satysfakcjonujący, ale to nie było to, co dla mnie było w tym najważniejsze i co gdzieś głęboko mnie motywowało, żeby te prace wykonywać.
Dostawałam również feedback, że to jest coś, w czym ja się dobrze sprawdzam, czyli właśnie planowanie. Często w pracy wcześniej w startupie dostawałam jakieś dodatkowe zadania związane właśnie trochę z zarządzaniem, akurat bardziej projektami niż produktem. Do tego pracując w machine learningu, właśnie od tej strony technicznej, często miałam w sobie silną potrzebę uporządkowania i ustrukturyzowania tego, co tam się dzieje.
Wydawało mi się, że o ile gdzieś przy tworzeniu oprogramowania istnieje już jakiś zbiór dobrych praktyk, do tego jak tym produktem czy projektem zarządzać, to w machine learningu to jeszcze nie jest do końca zdefiniowane. To też tam gdzieś się trochę pokrywało z sytuacją na rynku, bo faktycznie zaczęły się tak od 2, 3 lat mniej więcej pojawiać stanowiska AI Product Managerów czy AI Project Managerów.
Tak sumarycznie te wszystkie rzeczy, czyli badania swojej motywacji, obserwowanie, które rzeczy dają mi satysfakcję w pracy, co ja wnoszę też w dane środowisko, to wszystko gdzieś popchnęło mnie właśnie w kierunku tej zmiany ścieżki. Dostałam taką szansę od Allegro, żeby w tę stronę się rozwijać, za co jestem bardzo wdzięczna. Po 3 miesiącach (bo teraz pracuję 3 miesiące jako Product Manager) na razie uważam, że to była bardzo dobra zmiana i decyzja.
Wrócę do swojego początkowego stwierdzenia, że łączysz nieoczywiste obszary. Jakie są fakty? Fakt pierwszy: skończyłaś ścisłą matematykę. Później pracowałaś przez dobrych kilka lat jako Data Scientist, Machine Learning Engineer itd., czyli taka mocna techniczna rola. Teraz kolejny krok, który udało się postawić – jesteś na pozycji Product Managera.
Wielkie brawa za samoanalizę i wczuwanie się w siebie, zastanawianie się, czego tak naprawdę się chcę od życia, bo większość osób niestety (z różnych powodów) tego nie robi. Wielkie brawa za to, ale też za odwagę.
Czy według Ciebie osoby, które np. pełnią rolę Project Managera, Product Managera i zarządzają zespołami technicznymi (w szczególności zespół ML, AI, DS), potrzebują przynajmniej przerobić szkolenia techniczne?
Moja opinia jest taka, że niekoniecznie trzeba przejść wcześniej całą ścieżkę techniczną, żeby być dobrym Product Managerem, Project Managerem (czy kimś, kto zarządza zespołem, o ile to nie jest lider techniczny tylko z poziomu bardziej biznesowego), żeby wykonywać tę pracę dobrze (chociaż to na pewno pomaga). Natomiast uważam, że jest konieczny jakiś elementarny kurs czy szkolenie. Szczególnie przy rozwijaniu produktów machine learningowych.
Spotkałam się wcześniej w swojej pracy na stanowiskach technicznych z takim podejściem, często ze strony osób, które zarządzały projektami, że taki projekt machine learningowy to jest w zasadzie to samo co projekt software’owy.
Zgadzam się z tym do pewnego stopnia, bo uważam, że to ma sens na takim poziomie, że przy tworzeniu rozwiązania machine learningowego trzeba pisać testy, trzeba pisać kod w taki sposób, żeby to było skalowalne, utrzymywalne, łatwe do uprodukcyjnienia. Nie zgadzam się co do samej koncepcji tego, czym jest rozwiązanie oparte o machine learning, a czym jest jakieś czysto sotware’owe rozwiązanie, że to są jakby dwie te same rzeczy.
Z mojej perspektywy one są zupełnie inne i przede wszystkim przy robieniu rozwiązań, które zawierają komponent machine learningowy, myślę, że trzeba się przestawić z deterministycznego myślenia na myślenie probabilistyczne. Łatwiej jest zrobić coś takiego, kiedy się przeszło kurs czy szkolenie, kiedy w jakiś tam sposób liznęło się tego, jak wygląda praca z danymi i że jest ona obarczona dosyć dużym ryzykiem, dosyć dużą niepewnością, że jest to jednak praca eksperymentalna.
Powiedziałaś takie ciekawe stwierdzenie, że zamiast deterministycznego podejścia, potrzebne jest bardziej probabilistyczne. Dla wyjaśnienia: tu chodzi po prostu o to, że w projektach ML, DS mamy znacznie większe ryzyko, niepewność tego, czym się zarządza.
Teraz pomyślmy w ten sposób: są osoby techniczne, które właśnie tworzą te projekty bardziej ze strony technicznej, jak im należy rozszerzyć umiejętności, aby zaczęły lepiej rozumieć biznes albo zaczęły lepiej wytwarzać wartościowe dane? Co podpowiesz w tym przypadku? Czy też może przerobić jakieś kursy biznesowe?
Mogę powiedzieć, co mi pomogło. Nie czuję się tutaj jeszcze wielkim ekspertem, bo pracuję 3 miesiące na takim bardziej biznesowym stanowisku. Wydaje mi się, że to oczywiście zależy od organizacji, ale w bardzo wielu organizacjach jest po prostu możliwość, nawet jak jest się na stanowisku technicznym, do jakiegoś stopnia angażować się w takie inicjatywy bardziej biznesowe.
Ja w moich poprzednich pracach też zawsze blisko współpracowałam z Product Ownerem czy Project Managerami, czy też wcześniej jak pracowałam jako konsultant, to po prostu z naszymi klientami biznesowo.
Sądzę, że taką pierwszą rzeczą to jest, żeby w miejscu, w którym się jest aktualnie w danej organizacji, poszukać możliwości poznania tego biznesu. Wydaje mi się, że w taki sposób na pewno można się dużo nauczyć, prawdopodobnie więcej niż z książek.
Książki też oczywiście czytałam i jak w głowie zakiełkował pomysł, żeby iść bardziej w stronę zarządzania produktem machine learningowym, to znalazłam listę książek, którą należy przeczytać, jak się chce zostać Product Managerem i to było m.in. Cracking the PM Interview, to była książka bardziej pod rozmowy rekrutacyjne. Ale też taka książka Swipe to Unlock, która opisuje różne produkty technologiczne i główne trendy. Ona jest sprzed kilku lat, więc tam może do jakiegoś stopnia się zaktualizowała, ale też pomogła mi troszkę zmienić sposób myślenia z takiego myślenia mocno technicznego na bardziej wysokopoziomowe produktowe.
Natomiast wydaje mi się, że warto na pewno książki czytać i ewentualnie jakieś kursy też robić. To, co jest najważniejsze to, żeby w miejscu, w którym się jest aktualnie, poszukać jakichś perspektyw rozwoju w tę stronę.
Tutaj myślę, że warto jeszcze kilka rzeczy zdefiniować, bo wybrzmiało tutaj u nas Project Manager, Product Manager i Product Owner. Może dajmy jakieś w miarę proste definicje, na czym polegają te role, jakie są różnice?
Mogę powiedzieć, jak ja to rozumiem.
Project Manager to jest osoba, która czuwa nad procesem, czyli mamy jakiś określony projekt do zrealizowania i ta osoba jest odpowiedzialna za realizację tego projektu.
Product Manager to jest taka osoba, która też definiuje wizje, strategie, jakieś bardziej długoterminowe priorytety i w jaki sposób one będą realizowane.
Product Owner to jest osoba, która jest odpowiedzialna za realizację pewnej wizji.
Product Manager i Product Owner gdzieś tam się zazębiają, ale Product Manager ma właśnie w takiej definicji, którą ja znam, nieco więcej odpowiedzialności. Czyli jest też odpowiedzialny za wizję rozwoju tego produktu. Product Owner bardziej za development.
Czy możesz powiedzieć więcej o swojej aktualnej roli w Allegro? Wiem, że pewnie nie wszystko możemy tutaj mówić, ale np. jaki problem rozwiązuje zespół, w którym pracujesz albo jaki produkt właśnie tworzycie, do kogo on jest skierowany, jaką wartość otrzymuje użytkownik końcowy, odbiorcy, w jaki sposób to mierzycie, jaką wartość dostarcza implementacja ML w tym przypadku?
Jak to mierzymy, to nie jestem pewna, czy mogę powiedzieć. Pracuję jako Product Manager w Zespole Rekomendacji. Rekomendacje na pewno kojarzysz z YouTube, Spotify, Netflix. One też występują w e-commerce, m.in. na Allegro. Wydaje mi się, że wszyscy powinni raczej kojarzyć, czym są rekomendacje, ale to są po prostu podpowiedzi dla użytkownika, które pojawiają się w różnych miejscach na stronie Allegro, ale też na całej ścieżce zakupowej.
One mają za zadanie z jednej strony pokazywać użytkownikowi takie przedmioty, którymi użytkownik jest potencjalnie zainteresowany, czyli dopasowane do jego bądź jej preferencji. Z drugiej strony też pełnią taką funkcję inspiracyjną, czyli coś, czym może użytkownik mógłby być potencjalnie zainteresowany.
Naszym głównym celem w rekomendacjach jest po prostu poprawienie jakości rekomendacji, czyli aby to, co my pokazujemy użytkownikowi na stronie w ramach rekomendacji, było jak najbardziej dopasowane do preferencji tegoż użytkownika.
A powiedz, jak duży jest zespół Allegro, który zajmuje się ML, DS (bo tu pewnie jest znacznie szerszy, bo też jest tam taki dział badań)?
Tak, zespół Machine Learning Research liczy około 40 osób. Natomiast w całym obszarze Big Data, AI jest ponad trzykrotnie więcej (chyba ok. 150 osób). W obszarze Big Data i AI są nie tylko oczywiście Machine Learning Researcherzy, ale też Software Engineerzy, Product Managerowie, Data Engineerzy. Przy okazji powiem, że cały czas też szukamy nowych osób, więc jeśli ktoś byłby zainteresowany, to zapraszam.
Dlaczego w firmie bardzo potrzebni są Product Managerowie wykwalifikowani w AI, ML, DS? To nie są osoby, które mają doświadczenie w zarządzaniu produktami, tylko w tym przypadku właśnie wybrzmiał ten AI Product Manager. Dlaczego akurat tak?
Wydaje mi się, że wykwalifikowanych AI Product Managerów tak samo potrzeba jak wykwalifikowanych Product Managerów ogólnie. Czyli, że jak mamy jakiś produkt to potrzebna jest taka osoba, która będzie patrzyła na to wszystko bardziej z lotu ptaka, która będzie definiowała potrzeby użytkownika, potem przekładała to na cele biznesowe i następnie pomagała zdefiniować zespołowi priorytety i sprawnie je zrealizować.
Jeżeli chodzi o AI Product Managerów, to ja już troszkę wcześniej wspomniałam o tym ryzyku i niepewności związanej z przygotowaniem takich produktów, które zawierają komponent sztucznej inteligencji. Tutaj też jest duża rola Product Managera jako takiej osoby, która nad tym czuwa, czyli nad takimi rzeczami jak Fairness, Explainability tych modeli. Ale też takie sensowne podejście do rozwoju tego produktu w oparciu o algorytmy ML’owe ogólnie, czyli ktoś, kto z jednej strony rozumie biznes, ale z drugiej strony ma takie realne spojrzenie na to, co Machine Learning jest w stanie przynieść, jak to estymować mniej więcej, jak to mierzyć. Dlatego wydaje mi się, że ta rola jest bardzo potrzebna.
Teraz jak opisałaś te wszystkie rzeczy, które trzeba wykonywać, to naprawdę dużo tego jest. Trochę to wybrzmiało w ten sposób, że ta cała niepewność, która otacza projekty ML’owe, w tym przypadku w większości spada na tę właśnie rolę?
To jest dosyć mocne stwierdzenie. Nie wiem, czy ja się z nim zgadzam. Wydaje mi się, że jeszcze mam troszkę za mało doświadczenia na tym stanowisku, żeby być w stanie to jakoś jednoznacznie określić. Natomiast powiedziałabym, że jest to na pewno też rola takiego AI Product Managera. Czy ona w pełni spada na tę osobę? Nie wydaje mi się. Oczywiście wszyscy, którzy pracują nad danym produktem, są za to odpowiedzialni, ale być może Product Manager jest taką osobą, która czuwa bardziej nad tym.
Zespół, który tworzy produkty ML, DS i np. zatrudnia osoby techniczne, które znają algorytmy, potrafią rozwiązać problemy, które stoją przed nimi z Product Managerem prawdopodobnie czuje się bardziej komfortowo, bo ma więcej możliwości, aby skupić się na rzeczach technicznych i nie zawsze skupia się na wszystkim od razu (rzeczy związane z ryzykiem itd.). Czy to stwierdzenie jest sensowne?
Tak. Nie tylko z ryzykiem, ale też ogólnie z priorytetami biznesowymi, jak to mierzyć. Mam nadzieję, że mój zespół potwierdzi to, co mówię, że faktycznie mając Product Managera, mogą się skupić bardziej na rzeczach technicznych.
Natomiast też poza szacowaniem ryzyka, pilnowaniem kwestii związanych z wyjaśnialnością danych modeli czy Fairness, oczywiście troszkę zależy od organizacji, ale rolą takiego Product Managera jest komunikacja ze stakeholderami, czyli z innymi osobami, na które ten produkt wpływa (zarówno na zewnątrz jak i wewnątrz organizacji). To też jest rola, którą Product Manager przejmuje trochę od zespołu. Jeżeli rozważamy stan: jest zespół, który nie ma Product Managera i jest zespół, który ma Product Managera.
Mamy różnych interesariuszy w zależności od tego, jaka to jest organizacja. Możemy mieć interesariuszy zewnętrznych, czyli np. klientów. Tak jak ja pracowałam wcześniej w startupie konsultingowym, możemy mieć interesariuszy wewnętrznych, czyli np. jakieś inne zespoły w firmie, które rozwijają produkty, które mają punkty styku z produktem, za który Ty konkretnie odpowiadasz. Mamy też użytkowników. Niektórzy Product Managerowie też są odpowiedzialni bezpośrednio za właśnie ten punkt styku z użytkownikami i to też jest taka przestrzeń, w której Product Manager się pojawia, żeby tą komunikacją zarządzać i troszkę zespół z tej komunikacji w jakimś tam stopniu odciążyć.
Dotknęłaś bardzo fajny i wrażliwy temat komunikacji.
Istnieje taki żart (w szczególności wśród programistów): Nie po to studiowałem informatykę przez 5 lat, aby teraz rozmawiać z ludźmi. W Data Science ten problem być może jest troszkę mniejszy, bo w sumie sama rola wymaga rozmawiania z ludźmi. Ale tu też trzeba przyznać, że rozmowa z ludźmi, właśnie z stakeholderami, bardziej biznesowymi to zwykle tu jest duży dyskomfort.
Zastanawiam się właśnie, czy to jest tak, że to przypadkiem nie jest też taka kompetencja, którą nie jest wcale tak łatwo zdobyć, jeżeli chodzi o rozwój osobisty? Umiejętność porozmawiania z kimś, kto widzi zupełnie inaczej ten świat.
Jak sobie z tym radzisz? Rozwijasz się niezależnie czy przez te role, które miałaś przedtem, przy okazji rozwijałaś tę komunikację? Jak sobie usprawnić tematy związane z komunikacją? Od czego warto byłoby zacząć?
Ja miałam dosyć dużą ekspozycję też na studiach na tego typu pracę, ponieważ byłam aktywnie zaangażowana w działalność samorządu i to wiązało się oczywiście z rozmowami ze studentami, wykładowcami, różnymi firmami, które współpracowały z Uniwersytetem. Później przez jakiś czas jeszcze na studiach pracowałam w Akceleratorze startupów, gdzie pomagałam koordynować różne projekty (robiłam to dodatkowo, na niepełny etat).
Oprócz tego udzielałam korepetycji też na studiach, żeby sobie dorobić. Po prostu ja gdzieś tam już od początku, od studiów miałam jakieś punkty styku z ludźmi, gdzie musiałam nad tą komunikacją pracować. Najczęściej pracowałam nad nią ucząc się na błędach i wydaje mi się, że cały czas to robię, że to jest proces, który cały czas trwa.
Na pewno to, co pomaga, co też ostatnio jak robiłam jakieś kursy, mocniej wybrzmiało i o czym już słyszałam, ale nie zawsze to robię, to jest analiza słuchaczy, tzn. kto jest osobą, do której będziesz opowiadał o danym temacie. Niezależnie od tego, czy to jest prezentacja biznesowa, czy tak jak w Twoim przypadku to jest podcast, czy to jest kolega z zespołu, to warto się zastanowić, jak ta osoba myśli, czego ona oczekuje, czego się potencjalnie obawia i tę komunikację spróbować do tej osoby dostosować.
To jest oczywiście bardzo trudne i cały czas się tego uczę, ale wydaje mi się, że to jest taka jedna rzecz, która mogłaby potencjalnie pomóc. Jeżeli mamy coś do zakomunikowania i wiemy, że ta komunikacja nie jest dla nas prosta, to najpierw warto zastanowić się, do kogo mówimy, co chcemy powiedzieć. Błąd, który ja na początku popełniałam, to jest zalewanie informacjami technicznymi osób, które niekoniecznie muszą być nimi zainteresowane, bo być może nawet nie mają przestrzeni na to, żeby się nad każdą informacją pochylić, bo są odpowiedzialne za cykl różnych inicjatyw.
Jak mówiłaś o zrozumieniu ludzi, kto jest odbiorcą po drugiej stronie, tutaj mi od razu przyszła jedna z takich książek z nazwą dość kontrowersyjną Otoczeni przez idiotów T. Eriksona. Opowiada o tym, na ile różni ludzie potrzebują różnych informacji, różnego sposobu komunikacji itd.
W Twoim przypadku, co jest fajne, to było bardziej naturalne podejście. W sposób naturalny się rozwijałaś i pewnie łapałaś różne zależności.
Podsumujmy sobie to, co już usłyszałem. Z jednej strony Product Manager to też ta niepewność, ryzyko, które w projektach ML, AI, bierze na siebie (być może nie w całości, ale w zauważalnym stopniu). Druga rzecz to właśnie komunikacja. Myślę, że tylko te dwie rzeczy, które już wybrzmiały, zasługują na to, żeby taka rola pojawiła się w zespole, bo dzięki temu to przyspieszy cały proces.
Porozmawialiśmy na temat różnic pomiędzy projektem klasycznym IT i projektem AI. Wymień co najmniej 3 najbardziej znaczące różnice albo wyzwania, które przekładają się na sukces takiego projektu ML, AI, DS. Najlepiej na przykładach.
Odpowiem na podstawie moich doświadczeń z pracy w startupie, bo miałam największe spektrum, jeżeli chodzi o przegląd różnych inicjatyw. Miałam okazję współpracować z różnymi klientami i nad różnymi projektami, dlatego sądzę, że bardzo ważne jest dobre zdefiniowanie problemu.
Mieliśmy kiedyś taką sytuację, że umówiliśmy się z klientem, że będziemy klastrowali dla niego pewne informacje. My to rozumieliśmy jako grupowanie tematyczne, tzn. że mieliśmy zbiór artykułów i te klastry to miało być zgrupowanie informacji, które są na ten sam temat.
Natomiast okazało się, że klientowi chodziło o coś innego, że to nie koniecznie musiał być ten sam temat, ale np. pewne fragmenty tych artykułów musiały się w jakimś tam stopniu pokrywać. I do tego może nawet nie był wcale potrzebny machine learning. W końcu zrobiliśmy rozwiązanie łączone, gdzie było dosyć duże heurystyki, a ono działało bardzo dobrze.
Więc wydaje mi się, że taka pierwsza rzecz, która jest trudna przy nowych projektach machine learningowych, to jest właściwe rozwiązanie problemu. To jest coś, czego właśnie się nauczyłam, że szczególnie jak zaczynamy jakiś nowy projekt, to musimy sobie odpowiedzieć, co my tak naprawdę chcemy tym projektem osiągnąć. Ja bardzo lubię myśleć w kategoriach tego, co ma być na wejściu i tego co ma być na wyjściu, bo to pomaga ten proces myślowy ustrukturyzować.
Też w takim kontakcie z klientem, przez co rozumiem zarówno klienta zewnętrznego, jak i też ewentualnie klienta wewnętrznego, należy dowiedzieć się, jakie są tak naprawdę oczekiwania. Wydaje mi się, że to jest dużo trudniejsze do zrobienia niż w takich klasycznych projektach software’owych.
Oczywiście to w nich też się pojawia, że wymagania się czasem zmieniają, że czasem też są błędy komunikacyjne, ale w projektach machine learningowych to jest o tyle trudniejsze, że jeszcze nie do końca jest dobre zrozumienie tego, na jakiej zasadzie działa machine learning, że słowo machine learning jest mocno przehype’owane i często ludzie chcą wdrażać rozwiązania machine learningowe, a być może wcale tego machine learningu nie potrzebują albo nie mają wystarczająco dużo danych. Pierwsze wyzwanie to jest dobre zmapowanie problemu i zrozumienie podstaw tego, jak wygląda praca z danymi i na czym ta praca ma polegać.
Drugie wyzwanie, o którym już troszkę wspomniałam, to jest wyjaśnialność decyzji, które podejmuje model i to jest bardzo ważne w aplikacjach finansowych. Na przykład jak mielibyśmy model machine learningowy, który decyduje, czy komuś da kredyt na dom, to taki model, żeby być używany, potrzebowałby być łatwo wyjaśnialny.
To jest taka druga rzecz, która wydaje mi się, że różni się w projektach machine learningowych od takich klasycznych projektów IT, gdzie trzeba gdzieś myśleć o tej wyjaśnialności modeli. I też o tym, żeby te modele były fair tzn., żeby nie wykorzystywały cech, które mogłyby być potencjalnie uznane później za jakąś dyskryminację. To jest właśnie szczególnie ważne przy wrażliwych tematach. Wszystkie projekty związane z finansami albo rzeczy związane z CV, np. jakieś automatyczne screenowanie kandydatów do pracy.
Podsumowując: dobre zmapowanie problemu, wyjaśnialność danych modeli i zadbanie o to, żeby te modele były faktycznie fair.
Fajnie dążyć w tym kierunku, żeby znaleźć właściwe rozwiązanie problemu. To jest bardziej co, ale brakuje mi trochę jak. Jakie pytania najlepiej zadać klientowi przed rozpoczęciem współpracy, aby to skutkowało tym, że faktycznie ten projekt albo produkt się uda? Powiedziałaś już trochę o input, output, czyli co na wejściu, co na wyjściu, więc to możemy zaliczyć częściowo jako odpowiedź na to pytanie. Ale jakie jeszcze pytania warto zadać?
Takie pytanie: Jak byśmy mieli rozwiązać ten problem bez użycia machine learningu, czyli np. ręcznie jak byśmy to zrobili? Żeby troszkę sprawdzić, czy to jest faktycznie problem, który nadaje się do zastosowania tam machine learningu, czy być może wystarczy jakaś heurystyka lub w ogóle jakieś rozwiązanie software’owe, które nie wykorzystuje machine learningu.
Kolejne takie pytanie to byłoby o dane. Jak już zdefiniowaliśmy sobie ten input i output to ja zapytałabym: Czy posiadamy taki zbiór danych, który może być inputem i który ma gdzieś ten output, którego ewentualnie oczekujemy, w zależności od problemu, który będziemy chcieli rozwiązać? Czy posiadamy zbiór danych, który będzie nam służył jako zbiór treningowy? Albo czy możemy taki zbiór danych zbudować w jakimś skończonym czasie?
To też jest problem, z którym ja się spotkałam w mojej pracy (nawet powiedziałabym, że dość często), że jest potrzeba stworzenia rozwiązania machine learningowego inteligentnego, ale nie ma danych. Jakkolwiek może dziwnie to brzmi, jest to na pewno jedno z pierwszych pytań, które zadałabym klientowi zaraz po tym, jak ma wyglądać input i output.
Takie ostatnie, bardzo ważne pytanie z perspektywy biznesowej: Jaki jest nasz baseline? Czyli mamy jakieś rozwiązanie, które działa obecnie albo jakieś proste rozwiązanie, które szybko możemy zaimplementować, które nie wykorzystuje machine learningu i zmierzyć naszą metrykę.
Może jeszcze zanim baseline to jeszcze: Co chcemy zmierzyć dokładnie? Czyli jak definiujemy nasz sukces, jaką metryką będziemy się posługiwać, żeby mierzyć jakość tego rozwiązania. Później jaki jest nasz baseline, czyli jaki jest poziom metryki, który mamy aktualnie albo jakieś szybkie rozwiązanie, jeżeli to jest zupełnie nowy projekt, który możemy zaimplementować, żeby mieć się z czym porównywać, jak ten machine learning performuje.
Później zdefiniowanie sobie kryteriów sukcesu i kryteriów porażki. Tworzenie rozwiązań machine learningowych to jest proces eksperymentalny i też iteracyjny. Więc: Jak my definiujemy sukces, jak my definiujemy porażkę? Czyli podniesienie tej metryki o tyle i tyle jest dla nas satysfakcjonujące i będzie oznaczało, że chcemy to rozwiązanie wdrożyć, a np. jeśli mamy taki i taki spadek, to zarzucamy już eksperymenty i próbujemy innego podejścia przykładowo.
Podsumowując:
- Jaki jest problem, który chcemy rozwiązać?
- Jak miałby wyglądać input i output?
- Czy możemy ten problem rozwiązać bez wykorzystania machine learningu?
- Jaka jest metryka, jak chcemy mierzyć nasz sukces?
- Jaki jest baseline i wynik, do którego dążymy?
Bardzo fajne pytania. W tych rozmowach zawsze jest taki problem, że pytania mogą być dobre, ale odpowiedź niekoniecznie. Spróbujmy wziąć jedno z pytań, które powiedziałaś i ciekaw jestem, jak to pytanie podkręcisz jeszcze bardziej?
Na przykład: Jak definiujemy nasz sukces? Spróbujmy zagrać w grę, np. pytasz mnie, ja załóżmy, że jestem osobą biznesową, to odpowiem: Chcę, byśmy na tym zarobili. Jakie pytanie dodatkowe zadasz? Jak sobie radzisz właśnie z tym dzieleniem: metryka sukcesu techniczna i metryka sukcesu biznesowa? To zagadnienie samo w sobie jest dużym wyzwaniem.
Tak, zgadzam się, że jest dużym wyzwaniem. Kwestia przełożenia metryk technicznych na biznesowe zdecydowanie nie jest oczywista i prosta do zdefiniowania.
Natomiast tak jak podałeś ten przykład, czyli ktoś mówi, że ma klienta, który mówi, że chce zarobić więcej, ja po prostu dopytywałabym dalej:
Ok, ale w jaki sposób chcesz zarobić więcej? Czy chcesz, żeby więcej użytkowników skorzystało z Twojego serwisu? Czy chcesz, żeby spędzali więcej czasu na tym serwisie? Czy np. chcesz, żeby angażowali się w Twoje subskrypcje np. Twojego kursu?
Więc to coś konkretnie dopasowanego do tego biznesu. Jakbym miała takiego klienta, który by nie wiedział, to spróbowałabym jakoś razem z nim zidentyfikować możliwości. Jeśli ktoś prowadzi biznes, to na pewno coś mierzy: Co mierzycie teraz? Na czym teraz zarabiacie? Gdzie widzicie potencjalne obszary rozwoju?
Na pewno to trzeba uszczegółowić.
Na przykład dopytać, co to znaczy więcej?
Tak.
Fajnie podsumowałaś, że jak ktoś prowadzi biznes, to na pewno coś mierzy. Trochę się zastanawiam, czy to zawsze jest właściwie tak. Faktycznie coś tam mierzą, ale wydaje mi się, że dość często firmy trochę mają małe kompetencje w tych tematach, jeżeli chodzi o mierzenie. Ale faktycznie, zwykle coś mierzą.
Jak widać, temat jest trudny. Czy zawsze starasz się sprowadzić metrykę biznesową sukcesu w taki sposób, aby tam pojawiły się jakieś pieniążki? Spotkałem się z takimi projektami, gdzie próbowało się oszczędzać czas, np. że ktoś wykonuje pracę, teraz się wykonuje to szybciej.
Ta metryka zawsze była bardziej tricky, bo nie do końca wiadomo, co to znaczyło w praktyce, bo ten człowiek nadal tam pracuje, więc owszem może zrobić coś innego dla firmy, bardziej wartościowego, ale de facto nadal dostanie tę samą pensję. Spotkałem się z taką opinią, że w tym przypadku niby wygraliśmy, ale nie wiadomo co. Czy zawsze próbujesz sprowadzić tę metrykę biznesową do pieniędzy, czy to zależy i od czego?
Wydaje mi się, że jeszcze troszkę za krótko siedzę w tym biznesowym świecie, żeby na to pytanie odpowiedzieć. Teraz w mojej pracy mam po prostu bardzo konkretne metryki, którymi nie do końca chcę się dzielić i które są już zdefiniowane. Natomiast wcześniej też jak pracowałam na technicznych stanowiskach, pracowałam głównie na technicznych metrykach. Ale może mogę się podzielić przykładem ze startupu, że jak współpracowaliśmy z klientami, to jak później klienci definiowali, czy nasz projekt przyniósł sukces, to wydaje mi się, że później te metryki są oczywiście przeliczane na pieniądze, ale nie zawsze to były metryki, które zawierały wprost pieniądze. Generowanie wartości dla użytkownika czy dla firmy, można definiować na różne sposoby, gdybym miała to powiedzieć sumarycznie.
Tu można powiedzieć, że jak na razie miałaś duże szczęście, że pracujesz z konkretnymi ludźmi, zespołami. To akurat super sprawa, ale powiem szczerze, że to nie zawsze jest ten komfort.
Porozmawialiśmy o Twoim różnorodnym doświadczeniu, bardziej pod kątem technicznym, biznesowym, ale jeszcze miałaś okazję współpracować z klientami zagranicznymi. W Allegro też pewnie macie różnych ludzi, zespół wymieszany, pewnie nie tylko Polacy tam pracują. Czy widzisz większą różnicę w sposobie prowadzenia projektów, pytania, które się pojawiają? Np. w firmach, które są w 100% polskie czy właśnie taka współpraca z zagranicznymi klientami? Czy jest jakaś taka różnica, np. bardziej pragmatyczni są po którejś stronie albo bardziej technologiczni? Jak to oceniasz?
Ja takiej różnicy nie odczułam, ale wydaje mi się, że też miałam szczęście, że trafiałam na bardzo profesjonalnych współpracowników i zespoły. Na pewno ja akurat w tym projekcie nie uczestniczyłam, ale jak pracowałam w startupie, mieliśmy klientów z Korei i tam były dosyć duże różnice kulturowe i trzeba było faktycznie mocno się na tym pochylić, w jaki sposób z tymi klientami się komunikować i współpracować. Natomiast ja bezpośrednio przy tym projekcie nie miałam okazji pracować, więc nie jestem w stanie tutaj konkretnych przykładów przytoczyć.
Natomiast jeżeli chodzi o różnice pomiędzy Polską a Zachodem, czyli Stanami bądź Wielką Brytanią, gdzie głównie przy takich projektach pracowałam, to szczerze mówiąc ja poza innym językiem, w którym się komunikowaliśmy, większych różnic nie odczułam.
Może jest jakaś taka kwestia, ale wydaje mi się, że w Polsce jest zaszczepiona w ludziach mniejsza pewność siebie niż na Zachodzie, ale ja nie lubię też tak generalizować. Nie jestem w stanie tutaj tak jednoznacznie na to pytanie odpowiedzieć, ale nie było żadnych różnic, które bym drastycznie odczuła.
Na koniec spróbujmy dokonać pewnej predykcji, w końcu mówimy o ML. Jak Twoim zdaniem będzie wyglądała dziedzina ML, DS za jakieś 5, może 10 lat? Co z tego będą mieć klienci, użytkownicy końcowi, którzy właśnie z tych produktów będą korzystać, wspieranych przez ML?
Moja prognoza jest taka, że na pewno większy nacisk będzie położony na ocenę ryzyka związanego ze sztuczną inteligencją i machine learningiem. Tutaj też te rzeczy, o których mówiłam tj. Fairness i wyjaśnialność modeli. Wydaje mi się, że właśnie takie metody, które pochylają się nad tym, żeby rozwiązania machine learningowe były łatwiej wyjaśnialne, na jakiej podstawie modele podejmują decyzje, żeby nie były stronnicze i żeby jakoś tam te ryzyka szacować i estymować.
Będą się coraz mocniej rozwijały i za 5 lat będziemy może na takim etapie, gdzie to wszystko będzie bardziej uregulowane prawnie. Teraz to jest dosyć nowe, jeżeli chodzi o regulacje prawne tych kwestii związanych z podejmowaniem decyzji przez algorytmy. Tutaj mamy np. kwestie z autonomicznymi samochodami, gdzie mamy już od dawna technologie do tego, ale z powodów (nie jestem pewna czy tak jest) związanych z kwestiami, jak takie samochody ubezpieczać, to jeszcze nie jest wdrożone na szeroką skalę.
Jak ja miałabym przewidywać, wydaje mi się, że w ciągu najbliższych 5 lat (może 10) będziemy mieli takie kwestie jak właśnie wyjaśnialność modeli i to, czy modele są fair, uregulowane prawnie. I będą też istniały frameworki – już trochę istnieją, ale wydaje mi się, że to się rozwinie jeszcze bardziej.
A taki drugi obszar, który widzę, to wydaje mi się, że coraz więcej będzie zastosowań sztucznej inteligencji w biznesie i w ogóle na świecie i coraz więcej automatyzacji. Coraz więcej firm będzie też dokonywało transformacji cyfrowej i wykorzystywało rozwiązania, które wspierają, zwiększają automatyzację.
Natomiast taki obszar, który wydaje mi się, że teraz się rozwija i gdzie ja przewiduję, że za 5, 10 lat mogą być dosyć przełomowe zmiany, to jest właśnie wykorzystanie sztucznej inteligencji w medycynie, np. przy generowaniu leków, obrazowaniu medycznym, wykrywaniu różnych chorób i to wydaje mi się, że mogłoby być bardzo z korzyścią dla przyszłego użytkownika, klienta, czyli po prostu każdego z nas.
Tutaj jestem optymistką, bo tak snuję taką bardzo optymistyczną wizję przyszłości, że właśnie wszystkie modele będą wyjaśnialne, że to będzie uregulowane prawnie i jeszcze AI będzie nam pomagało szybciej wykrywać choroby. Oczywiście niekoniecznie musi tak być, bo jest też bardzo dużo ryzyk z tym związanych, ale to są takie dwa główne obszary, gdzie ja widzę potencjalnie największy rozwój w ciągu najbliższych 5, 10 lat.
Bardzo dziękuję za taką prognozę, ale też trzymajmy mocno kciuki, aby ta optymistyczna wizja się zmaterializowała, a nie te bardziej pesymistyczne, bo różnie to może być. Ja też bardzo mocno trzymam kciuki, aby to się udało.
Dzięki wielkie Ola za dzisiejszą rozmowę. Ciekawe rzeczy tu wybrzmiały i do usłyszenia, do zobaczenia przy następnej okazji.
Dzięki, cześć.
Mam do Ciebie prośbę, którą zwykle mam na koniec: powiedz co najmniej jednej osobie o tym odcinku albo w ogóle, że istnieje podcast Biznes Myśli. Będę bardzo wdzięczny za to, że właśnie polecasz dalej. Dzięki temu docieramy do większej liczby osób.