Wykorzystanie narzędzia analitycznego do integracji i czyszczenia danych

Start / Blog / Wykorzystanie narzędzia analitycznego do integracji i czyszczenia danych

Często podczas rozmów na temat pożądanych funkcji idealnego rozwiązania analitycznego dyskusja schodzi w kierunku liczby dostępnych algorytmów budowy modeli data mining oraz liczby możliwych do zmiany parametrów tych modeli (np. liczba powłok ukrytych w sieci neuronowej). Podobnie sytuacja wygląda w przypadku zapytań ofertowych. Wymagania opisane powyżej stanowią zazwyczaj 80% wszystkich wymagań.

Podobnie jak w ekonomii, tak i w tym przypadku mamy do czynienia za znaną zasadą Pareto, co sprowadza się do tego, że funkcjonalności te wykorzystywane są przez 20% czasu. Rodzi się więc pytanie, które funkcjonalności wykorzystywane są przez 80% czasu?

 

1. Wczytywanie i łączenie danych pochodzących z różnych źródeł

Narzędzie IBM SPSS Modeler umożliwia wczytywanie i łączenie w ramach jednego przepływu tabel z danymi pochodzących z wielu (różnych) źródeł, np. bazy danych, Hadoop, Pliki csv, Txt, Pliki MS Excel. Oczywiście tabele wejściowe mogą pochodzić też z jednego źródła, np. kilka tabel z tej samej bazy danych. Dane te mogą być łączone na wiele sposobów, z których najpopularniejsze to: join (węzeł Łączenie), append (węzeł Dołączanie).

1

Następnie kolejne węzły umożliwiają nam wybór odpowiednich kolumn (węzeł Filtrowanie), wybór rekordów (węzeł Selekcja), grupowanie (węzeł Agregacja), wyliczanie nowych kolumn (węzeł Wyliczanie). Tak więc użytkownicy mogą skorzystać z operacji tradycyjnie wykonywanych w języku SQL, ale nie muszą znać składni owego języka.

Dodatkowo, jeżeli dane pochodzą z tej samej bazy danych lub tego samego klastra Hadoop, to obliczenia zostaną właśnie tam wykonane. Funkcjonalność ta nazywa się SQL Pushback lub analogicznie Hadoop Pushback.

Jeżeli mamy kilka zbiorów danych pochodzących z bazy danych, a jeden zbiór, to zewnętrzny słownik, który mamy w Excelu, to z puntu widzenia wydajności lepiej jest w pierwszej kolejności załadować ów słownik do bazy danych, a następnie dokonywać złączenia. Jeżeli nie potrafimy załadować pliku Excel do bazy danych, to tutaj znów z pomocą przychodzi nam SPSS:

3

Oczywistym jest, że pożądanym narzędziem jest narzędzie, które pozwala na przeprowadzenie wymienionych operacji w tym samym narzędzie, w którym następnie odbywać się będzie modelowanie. Podejście polegające na łączeniu kilku narzędzi często wydłuża czas i prowadzi do błędów.

 

2. Czyszczenie danych

Narzędzie IBM SPSS Modeler umożliwia czyszczenie danych stanowiących wejście do analiz na wiele sposobów. Węzeł Audyt Danych pozwala nam się rozprawić z obserwacjami odstającymi i skrajnymi, które możemy uprzednio zdefiniować, a następnie odrzucić lub zmienić wartość. W tym samym węźle możemy zdecydować, jaką metodę imputacji przyjąć dla braków danych. Zakres tych metod jest bardzo szeroki, od stałej, przez proste wyrażenia algebraiczne (jak średnia), aż do algorytmów (np. drzewa decyzyjne) oraz wyrażeń własnych. Metody imputacji oraz zarządzania wartościami odstającymi i skrajnymi możemy dobierać per zmienna, grupa zmiennych, zbiór danych.

4

Oczywiście węzeł Audyt Danych stanowi zautomatyzowany sposób walki z brakami danych i obserwacjami odstającymi. Wszystko to możemy zrobić nieco bardziej manualnie korzystając m.in. z węzłów Wypełnianie, Wyliczanie, Selekcja.

Czyszczenie danych jest oczywiście dużo bardziej rozbudowanym tematem i nie sprowadza się jedynie do wartości odstających i skrajnych. Narzędzie IBM SPSS pozwala nam na zbudowanie wielu innych reguł walidacji danych opartych m.in. o odsetek braków danych, rozkład zmiennych w poszczególnych kategoriach bądź też miary rozrzutu. Reguły takie są zdefiniowane w węzłach Dobór Predyktorów oraz Auto Przygotowanie Danych. Dodatkowo, użytkownik może tworzyć własne reguły z wykorzystaniem węzłów, wymienianych wcześniej.

5
 

3. Sprawdzenie poprawności danych

Korzystając z funkcji tekstowych węzła Wyliczanie oraz węzła Selekcja można stworzyć własne reguły walidacji danych. Przedstawione na poniższych obrazkach rozwiązanie zostało stworzone do rozbijania, zapisanych w różnej formie (kolejności), adresów na części składowe. W drugim kroku weryfikowana była poprawność adresu poprzez porównanie ze słownikiem GUS-U. Do drugiego kroku wykorzystano węzły Łączenie, Dołączanie i Wyliczanie.

7 6 8

Powracając do tego co napisałem we wstępnie czynności opisane w punktach 1-3 stanowią często 80% zadań analityka. Oczywiście wykorzystanie powyższych procedur nie ogranicza się tylko do przygotowywania i czyszczenia danych, ale nadaje się bardzo dobrze do analiz ad-hoc. Funkcjonalności te nadają się także bardzo dobrze do przygotowania danych na potrzeby systemów raportowych. Znane są mi przykłady dużych przedsiębiorstw w Polsce, w których SPSS Modeler wykorzystywany jest (niemal) wyłącznie do tego celu.