W przeciągu kilkunastu ostatnich lat ludzka cywilizacja wyprodukowała więcej danych, niż kiedykolwiek wcześniej. Danymi nazywamy ogromne, często chaotyczne zbiory informacji kryjące w sobie nieocenioną wartość biznesową. Dziś przewagę konkurencyjną ma ten kto potrafi z tych bogatych źródeł sprawnie korzystać.
Podobnie jak w przypadku surowców mineralnych, dane należy najpierw wydobyć, a następnie odpowiednio przetworzyć. Szybki rozwój technologiczny niemal każdego dnia dostarcza biznesowi nowych narzędzi do przetwarzania danych. Mimo postępującej automatyzacji, wciąż potrzebna jest ludzka wiedza, odnośnie tego jak z tym cennym zasobem postępować. Współcześni analitycy niczym XIX wieczni poszukiwacze złota, muszą potrafić odsiać bezwartościowy piasek, od cennych grudek informacji.
Technika poszukiwania złota
Dane przetwarza dziś każde przedsiębiorstwo i nie ma wyjątku od tej reguły. Bez względu na to czy prowadzisz jednoosobową działalność gospodarczą, czy jesteś prezesem zarządu dużej korporacji, każdego dnia przetwarzasz mnóstwo informacji na podstawie których podejmujesz decyzje. Istotne znaczenie ma więc jakość danych, z którymi pracujesz, gdyż od niej zależy to ile strategicznych informacji uda Ci się pozyskać.
Kluczową dla biznesu kwestię stanowi obecnie skuteczna technika prawidłowego czyszczenia danych. Ten cenny surowiec może bowiem ulec uszkodzeniu na niemal każdym etapie jego obróbki: od momentu pozyskiwania, aż po końcową analizę. W niniejszym artykule chciałbym omówić podstawowe zagadnienia związane z tematyką czyszczenia danych, zwracając uwagę na trzy główne tematy:
- Brakujące wartości
- Anomalie
- Transformacja danych
Brakujące wartości
Brakującymi wartościami nazywamy wartości w zbiorze danych, których nie znamy. Ich nazewnictwo różni się od środowiska programistycznego. W SQL-u określane są NULL-em, a w Pythonie None. Często używa się także tekstu bez zawartości (“”) lub zdefiniowanych przez siebie wartości (np. “.”, “brak”).
Najczęstszą przyczyną pojawiania się wartości brakujących jest niekompletności lub błędy w systemie zbierania danych. Jednakże występowanie wartości brakujących spowodowane być może również zewnętrznymi ograniczeniami, takimi jak: zakaz prawny na przechowywanie danych bez pozwolenia ich właścicieli.
Nie zawsze można pozwolić sobie na ignorowanie wiersza z wartościami brakującymi. Tym bardziej jeśli brakuje nam całej próbki danych, a nie tylko pojedynczej wartości. Zatem jak odnaleźć wartość brakującą?
Zgadywanie – metoda radzenia sobie z wartościami brakującymi
Jest to najpopularniejsza z metod polegająca na podstawianiu w puste miejsce wartości powtarzającej się najczęściej w danej kolumnie z danymi. Wartości brakujące zastępować można również średnią. Aczkolwiek obecnie możliwe jest również zgadywanie z wykorzystaniem technologii sztucznej inteligencji.
Anomalie
Anomaliami nazywamy wartości, które znamy, lecz stanowczo różnią się one od reszty zbioru, zatem mamy wątpliwości co do ich prawdziwości. Wyobraźmy sobie, że przeprowadziliśmy ankietę i na jednym z arkuszu w rubryce “wiek” zauważyliśmy liczbę 100. Z pewnością zastanowimy się nad prawdziwością tej informacji, zatem śmiało możemy określić ją mianą anomalii. Jednakże nigdy nie mamy pewności czy zastanawiające nas dane nie są prawdziwy.
W celu wykrycia anomalii w ogromnych zbiorach danych stosowane są dedykowane modele uczenia maszynowego, jak Isolation Forest, który wykorzystuje drzewa decyzyjne wykrywając próbki danych istotnie różniące się od innych.
Wykryte anomalie są zazwyczaj usuwane, a następnie traktowane jako dane brakujące i zastępowane najbardziej pasującymi wartościami. Możliwe jest również pozostawienie anomalii (jeśli wierzymy, że przytoczona wcześniej liczba “100” nie była pomyłką). Pamiętajmy Jednakże algorytmy uczenia maszynowego stanowią najlepszą z metod nie tylko wykrywania, ale również transformacji anomalii.
Transformacja danych
Transformacja danych ma bardzo szerokie znaczenie. Może ona oznaczać każdą zmianę kształtu danych, jednakże w tym artykule skupiamy się na transformacji w kontekście czyszczenia danych i przygotowania do analizy.
Przygotowując dane do pełnej analizy musimy utrzymywać równowagę pomiędzy ilością zawartych informacji, a łatwością ich analizy. Co to znaczy? Analizując posty na przykładowym medium społecznościowych nie możemy ograniczać się do informacji czy są one pozytywne czy negatywne, gdyż stracimy dużo informacji. Z drugiej strony analiza pełnej treści postów okaże się trudna i czasochłonna.
Przykłady prawidłowych transformacji danych stanowią: zmieniania wieku klienta z dni na lata lub zamiana miejsca urodzenia z miasta na kraj.
Mam nadzieję, że udało mi się choć trochę przybliżyć niezwykle obszerną tematykę jaką jest analiza danych. Z pewnością będziemy do niej wracać w kolejnych publikacjach, ale już teraz zachęcamy do obejrzenia kolejnego odcinka naszej popularnonaukowej serii, aby zgłębić tematykę czyszczenia danych kluczowych dla instytucji finansowych.
AUTOR: Bohdan Turanyi – Machine Learning Engineer w Whiteaster
STRONA: https://whiteaster.com/
O Whiteaster
Jesteśmy ekspertami w dziedzinie nowych technologii. Tworzymy dedykowane oprogramowanie wykorzystując machine learning i technologie sztucznej inteligencji, ale również aplikacje webowe i mobilne. Misją naszej firmy jest dostarczanie systemów, dzięki którym klienci osiągają zamierzone cele biznesowe. W ub. roku otrzymaliśmy nagrodę miesięcznika IT w Administracji w kategorii „Oprogramowanie dedykowane administracji publicznej” za stworzony przez nas Portal Whiteaster Open Data.