Jan Świerczyński | Business Intelligence | 14.12.2022
Szybki rozwój technologiczny w niemal każdej organizacji sprawił, że liczba danych, którymi operują, znacząco się powiększyła. Jeszcze na początku lat 90. firma Teradata chwaliła się utworzeniem pierwszego systemu dla Wal-Mart o pojemności 1 TB (1000 GB). Dzisiaj bazy i hurtownie danych popularnych serwisów internetowych, jak na przykład platforma YouTube, niewyobrażalnie przewyższają tę liczbę.
Idź do:
Doszliśmy więc do takiego punktu w historii ludzkości, w którym dane przetwarzane przez dobrze prosperującą firmę stają się niemożliwe do przeanalizowania wyłącznie za pomocą tradycyjnych metod, czyli pracy ludzi i ich „mocy obliczeniowej”. Czasami także jakość danych utrudnia cały proces i potrzeba tutaj wsparcia, które odnaleźliśmy w komputerach. Dlatego właśnie metody eksploracji danych wykorzystują odpowiednie algorytmy – najważniejsze z nich opisuję w artykule.
Data mining, inaczej eksploracja danych, to proces odkrywania reguł, zależności i wzorców w zebranych informacjach w celu uzyskania wiedzy. Jest to technologiczne połączenie tradycyjnych metod analizy (czyli relatywnie od dawna ludziom znanej statystyki) ze współcześnie stosowanymi algorytmami i rozwiązaniami szeroko rozumianej sztucznej inteligencji oraz sposobami na przetwarzanie dużych wolumenów danych przez jedną lub więcej jednostkę obliczeniową.
„Every dataset, every database, every spreadsheet has a story to tell”
Stuart Frankel, CEO of Narrative Science
Data mining jest jednym z nieodłącznych elementów KDD (ang. Knowledge Discovery in Databases), czyli odkrywania wiedzy zebranej w bazach danych. Proces ten dzielimy na:
Obecnie w paradygmacie rozróżniamy dwie główne grupy metod eksploracji, z których wybieramy jedną na potrzeby naszej analizy. Są to:
W obrębie każdej z nich są skategoryzowane 3 techniki eksploracji danych – najpopularniejsze podejścia do eksploracji. Oczywiście dziedzina ta ciągle się rozwija, przybywa algorytmów, jak również podejść, zatem w tym artykule skupimy się właśnie na tych kluczowych. Poniżej postaram się wyjaśnić każdą grupę oraz metodę oraz podać przykładowe użycia w celu lepszego zrozumienia.
1. Metody predykcyjne – skupiają się na próbie przewidzenia wyniku na podstawie wartości innych danych wejściowych. Wyniki tych metod nazywane są z języka angielskiego targetem lub wartościami zależnymi, natomiast atrybuty wykorzystane do ich uzyskania wartościami niezależnymi bądź wyjaśniającymi (ang. explanatory). Do tych metod zaliczamy:
Przykładowe algorytmy modelujące: naiwny klasyfikator Bayesowski, regresja logistyczna, K-najbliższych sąsiadów, drzewa decyzyjne, maszyna wektorów nośnych (ang. „Support Vector Machine”).
Przykładowe algorytmy modelujące: regresja liniowa, regresja grzbietowa, aproksymacja wielomianowa
Przykładowe algorytmy modelujące: autoregresja (ang. Autoregressive Integrated Moving Average, ARIMA), ruchoma średnia, wygładzanie wykładnicze.
2. Metody deskrypcyjne – próbują wyciągnąć z otrzymanych wartości wejściowych wzorce (korelacje, tendencje danych, klastry, anomalie itp.), które są w stanie opisać relacje między otrzymanymi danymi. Metody te mają za zadanie scharakteryzować, dość ogólnie, właściwości danych wejściowych (odkryć wzorce, powiązania, odpowiednio zgrupować dane i wykryć charakterystyczne anomalie), jednak do wyciągnięcia konkretnych wniosków potrzebują dodatkowej pracy nad odpowiednim przygotowaniem i zwizualizowaniem danych. Techniki to:
Przykładowe algorytmy: algorytm Apriori, algorytm Eclat
Przykładowe algorytmy: algorytm centroidów (ang. K-means clustering), algorytm BIRCH (ang. Balanced Iterative Reducing and Clustering Using Hierarchies)
Oczywiście odpowiedź na to pytanie brzmi: „to zależy”.
Data mining jest zaledwie częścią całego łańcucha KDD, a widzimy po wcześniejszym punkcie artykułu, jak obszerny jest to temat. Wpływ na nasze decyzje będzie miało wszystko to, co wydarzyło się z danymi po drodze. Jednak są pewne schematy, których można się trzymać. Jeżeli wiemy, że nasze wyniki mają być dyskretne – zastosujemy klasyfikatory; jeżeli mają być wynikami liczbowymi, różnymi – wykorzystamy techniki predykcji regresyjne. Natomiast jeżeli nie mamy oczekiwań bądź są one ogólne w stosunku do naszych danych i chcemy się na ich podstawie czegoś nauczyć, to wykorzystamy techniki deskrypcyjne.
Data storytelling. Jak opowiadać historię za pomocą danych?
Przeczytaj artykułUstaliliśmy, jakiej metody / techniki użyjemy – teraz przed nami pytanie o algorytm, który stworzy z naszych danych model. No cóż, tutaj nie ma jednoznacznej odpowiedzi. Osobiście spotkałem się z podejściem, aby wybrać te algorytmy, które się najlepiej rozumie lub co do których wiemy, że najlepiej „zrozumieją” nasze dane – i porównać je. Jeżeli jednak możliwości wypróbowania kilku rozwiązań nie ma, warunki produkcji na to nie pozwalają bądź są inne ograniczenia – rozstrzygnie doświadczenie developera bądź zespołu, który wdraża te rozwiązania.
Eksploracja danych to ogromny obszar wpisujący się w ważny obecnie trend budowania organizacji data driven, a o każdym ze wspomnianych algorytmów mógłby powstać osobny materiał. Przedsiębiorstwa, które chcą być napędzane przez dane, inwestują w technologie takie jak Microsoft Power BI, Tableau czy Qlik Sense. Służą one do wizualizacji wniosków otrzymanych przez opisane przeze mnie metody w zrozumiałej dla każdego formie. Takie rozwiązania pomagają znaleźć trendy i ukryte zależności pomiędzy danymi z różnych źródeł, wydobywać potencjał dużych zbiorów danych i podejmować trafne decyzje. Wiele przedsiębiorstw wykorzystuje je nie tylko do analizy danych historycznych, ale też prognozowania, tak aby np. zwiększać sprzedaż.
Dodaj komentarz: