Przepis na rzetelny projekt data science

Przepis na rzetelny projekt data science

Przygotowanie modelu uczenia maszynowego i prezentacja danych to tylko ostatnie etapy pracy projektowej specjalistów data science. W międzyczasie muszą bacznie przyglądać się źródłom danych, a także ich jakości. Wyjaśniamy, przez jakie etapy należy przejść, aby udany projekt data science był na wyciągnięcie ręki.

1. Zrozumienie potrzeb biznesowych

Udany projekt w data science jest możliwy wtedy, gdy data scientist ściśle współpracuje z klientami. Bez tego dużo trudniej zrozumieć problemy biznesowe, z którymi mierzy się firma, a tym samym sformułować cele, do których dąży. Warto bazować na pięciu podstawowych pytaniach, na jakie odpowiedzi znajdziemy za pomocą właściwych metod machine learning. Jako przykład pytań weźmy kwestię relacji z klientami.

• Regresja: Ile? Jak dużo? – Ile umów zawrzemy w przyszłym miesiącu?

• Klasyfikacja: Do jakiej kategorii należy X? – Czy nowa opinia w mediach społecznościowych należy do kategorii pozytywnych, czy negatywnych?

• Grupowanie: Do jakiej grupy należy Y? – Czy klient zawarł umowę przez internet, czy stacjonarnie?

• Wykrywanie anomalii: Czy jest w tym coś dziwnego? – Czy to dziwne, że klienci zaczęli kupować dużo więcej kart graficznych?

• Rekomendacja: Jaki wariant wybrać? – Czy danej grupie klientów powinniśmy zaproponować zniżkę, czy prezent?

Po ustaleniu pytań i wątpliwości, które zostaną rozwiane dzięki wnikliwym analizom i rekomendacjom ekspertów, warto skupić się na miernikach sukcesu. Przy określaniu celów można posiłkować się np. zasadą SMART. To akronim od angielskich słów: specific, measurable, achievable, relevant, time-bound – konkretny, mierzalny, osiągalny, istotny i określony w czasie. Cele spełniające te kryteria będzie łatwo poddać weryfikacji.

Na tym etapie data scientist powinien także skompletować zespół projektowy, gdzie każdy będzie miał przypisaną rolę i obowiązki.

2. Pozyskanie danych

Skoro już wiadomo, do czego potrzeba danych, nadszedł czas, żeby zakasać rękawy i je zebrać. Dobrze zacząć od konsultacji z osobą wyspecjalizowaną w danej dziedzinie – jej wkład we wskazanie możliwych i najbardziej właściwych źródeł informacji będzie nieoceniony. W zależności od projektu dane będą pochodziły z jednego lub wielu miejsc.

Pośród typowych źródeł możemy wyliczyć: automatyczne funkcje wbudowane w aplikacje, czujniki wykorzystywane w technologiach internetu rzeczy, monitoring mediów społecznościowych, badania ilościowe i jakościowe prowadzone wśród użytkowników, klientów i pracowników, a nawet bezpośrednią obserwację. Proces zbierania danych dobrze jest monitorować pod kątem istotności informacji, które sprawią, że udany projekt data science będzie na wyciągnięcie ręki. Jeśli tej informacji nie ma, nie warto marnować czasu zespołu na gromadzenie kolejnych bajtów.

3. Czyszczenie danych

Samo zebranie danych to początek drogi do sukcesu. Trzeba pamiętać o możliwych problemach, związanych choćby z jakością pozyskanych danych – nieprzetworzone mogą zawierać nieścisłości i nie być kompletne, przez co wszelkie wnioski wyciągnięte na ich podstawie można łatwo poddać w wątpliwość.

Tym kłopotom może zaradzić kolejny krok – czyszczenie danych. Na tym etapie należy wykryć błędne, niedokładne, nieaktualne, a także powielone lub zbędne informacje. Dodatkowo trzeba ustandaryzować formaty danych. Faza czyszczenia, choć nie zawsze lubiana przez data scientistów, jest kluczowa dla powodzenia całego projektu. Dane o niewystarczającej jakości mogą prowadzić do błędów w rozumowaniu czy tworzyć fałszywy obraz sytuacji. W biznesie może się to skończyć złymi decyzjami skutkującymi np. utratą klientów lub kapitału.

4. Eksploracyjna analiza danych

Kiedy dane są już wyczyszczone, przychodzi czas na półautomatyczną lub automatyczną analizę, która umożliwia określenie nieznanych wcześniej wzorców i tendencji. W tej fazie trzeba skupić się na właściwym zrozumieniu danych, by były przydatne w decyzjach biznesowych. Metody nie są z góry narzucone – data scientiści mogą bowiem korzystać z drzew decyzyjnych, metod ewolucyjnych, regresji, uczenia maszynowego czy zbiorów przybliżonych. Dzięki tej pracy da się spostrzec również wartości odstające i sprawdzić, co się za nimi kryje.

Poddanie danych analizie to krok niezbędny do sformułowania hipotez dotyczących problemu biznesowego. Co ciekawe, eksploracyjną analizę danych od lat 70. ubiegłego wieku promował John Tukey, amerykański matematyk i statystyk. Tukey zachęcał do stawiania hipotez mogących prowadzić do zbierania nowych danych i wykonywania nowych eksperymentów.

5. Inżynieria cech

Cecha jest mierzalną właściwością lub atrybutem obserwowanego zjawiska, zaś inżynieria cech pozwala wskazać dane wyjściowe używane w modelach uczenia maszynowego. Często potrzeba wiedzy z danej dziedziny, bo im lepsze określenie charakterystyk, tym większe szanse na zrozumienie świata przez maszynę.

Na tym etapie specjaliści data science sięgają zazwyczaj po dwa działania: selekcję i konstrukcję cech. Selekcja polega na wyeliminowaniu charakterystyk, które dają więcej szumu niż informacji. Umożliwia też uniknięcie tzw. klątwy wielowymiarowości, czyli sytuacji, w której algorytm, zamiast uczyć się docelowych funkcji, musi zmagać się z wykładniczo rosnącymi danymi. Konstrukcja cech z kolei dotyczy tworzenia nowych cech na podstawie już istniejących charakterystyk.

6. Modelowanie predykcyjne

Wybór algorytmu uczenia maszynowego jest zależny m.in. od wielkości zbiorów danych, ich rodzaju i ilości, a także dostępnego czasu i oczekiwanych danych wyjściowych. Warto przetestować kilka modeli, żeby wybrać najbardziej odpowiedni. Selekcję można przeprowadzić, posiłkując się dostępnymi w sieci schematami blokowymi (na przykład "Machine Learning Algorithms Cheat Sheet"). Dzięki nim można szybko ocenić, czy lepiej sięgnąć po metody nadzorowanego, czy też nienadzorowanego uczenia maszynowego.

Po wytrenowaniu algorytmu należy przyjrzeć się jego skuteczności, przeprowadzając choćby walidację krzyżową polegającą na podziale próby na podzbiory, gdzie część jest poddawana analizie, a reszta służy potwierdzeniu wyników przetwarzania. Inżynier uczenia maszynowego Sudeep Agarwal zaleca sprawdzian k-krotny, gdzie algorytmy trenowane są kolejno na wszystkich podzbiorach poza jednym, a wyniki są na końcu łączone.

7. Wizualizacja danych

Pokazanie danych może wydawać się zadaniem prostym, ale tak naprawdę wcale do takich nie należy. Wizualizacja ma na celu prostą, skuteczną i atrakcyjną prezentację wniosków wyciągniętych dzięki uczeniu maszynowemu. Spełnienie tych warunków sprawia, że dane zostaną użyte przy podejmowaniu odpowiednich decyzji biznesowych. Z kolei zbyt zawiłe i nieczytelne informacje mogą skutkować niewykorzystaniem efektów pracy data scientistów w procesach decyzyjnych. Taka sytuacja rodzi frustrację, więc tym bardziej należy skupić się na tej fazie pracy. Warto pamiętać, że wizualizacja danych wymaga kompetencji nie tylko statystycznych, ale również z takich dziedzin, jak komunikacja czy psychologia.

8. Korekta

Zaraz, zaraz… przecież miało być 7 kroków! I to się w pewnym sensie zgadza, jednak praca z danymi, tak samo jak projektowanie aplikacji, jest procesem iteracyjnym. Przejście wszystkich etapów nie oznacza końca zadań związanych z konkretnym projektem. Być może pojawiły się nowe spostrzeżenia, lub – zwyczajnie – wypracowany model nie do końca spełnia wszystkie warunki. Jeśli pojawiają się nowe zagadnienia, należy ponownie usiąść ze wszystkimi zainteresowanymi i zweryfikować, co i na którym etapie można poprawić. Nierzadko będzie tak, że nowe elementy będą wymagały wprowadzenia zmian tylko w części kroków.

W tekście posiłkowaliśmy się „Cyklem życia data science” zaproponowanym przez Sudeepa Agarwala, inżyniera uczenia maszynowego.

Udostępnij link

https://www.datasciencerobie.pl/udany-projekt-data-science-w-7-krokow/