Eksploracja danych
W twoich bazach ukryta jest wiedza
Mianem eksploracji danych (data mining) określa się poszukiwanie wiedzy, ukrytej głęboko, gdzieś w gigabajtowych bazach. Wiedza to coś więcej niż informacja, to struktura, a więc specyficzne korelacje, prawidłowości statystyczne lub inne zależności, które dają się wypowiedzieć w języku matematyki lub w dowolnym języku naturalnym.
Rzecz jasna, niełatwo do nich dotrzeć - niekiedy nie podejrzewa się nawet ich istnienia. Z drugiej strony mogą one mieć realną wartość liczoną w milionach dolarów, np. jeśli dotyczą ważnych dla jakiegoś sektora zachowań rynkowych. Ich uchwycenie może oznaczać umiejętność przewidzenia przyszłości, a tym samym - dać znaczącą przewagę nad konkurencją. Nie chodzi tutaj tylko o tak jaskrawe przykłady jak notowania walut na rynku pieniężnym, czy akcji i obligacji na giełdzie papierów wartościowych. Zazwyczaj każde duże przedsiębiorstwo gromadzi na dyskach swoich komputerów przeróżne dane, które w zależności od podejścia, mogą mieć albo wartość czysto historyczną, albo też posłużyć do ciekawych analiz marketingowych, których koszt może ulec obniżeniu o bardzo istotny składnik - nakłady na samo zebranie danych.
Na ogół, gdy ekstrahujemy informację z baz danych, wiemy dokładnie czego szukamy. Tworzenie złożonych, przekrojowych raportów może być nawet bardzo skomplikowane technicznie, lecz zawsze jest procedurą dobrze określoną - raport stanowi odpowiedź na precyzyjnie zadane pytanie, w rodzaju "pokaż wszystkich klientów, którzy w ubiegłym miesiącu zamówili towary na łączną sumę ponad 10 tysięcy złotych i zalegają z płatnością". Istota eksploracji danych polega natomiast na tym, że nie potrafimy zadać konkretnego pytania. Interesuje nas tylko, czy w naszej bazie są jakieś prawidłowości.
Klasyczne przykłady zastosowań eksploracji danych
Eksploracja wymaga użycia specjalistycznych narzędzi, pozwalających szybko zauważać złożone związki pomiędzy danymi, zawartymi w wielkich korporacyjnych bazach. Nasi konsultanci używają tu produktów firm Statsoft oraz SPSS, a także stworzonego we własnym zakresie specjalistycznego systemu prognozowania N-Expert, opartego na sieciach neuronowych.
Ostatnio Oracle zaczął też udostępniać funkcje wspomagające eksplorację danych, wbudowane w bazę 9i. Więcej na ten temat w artykule opublikowanym w materiałach konferencyjnych Polish Oracle User Group.
Trzy podstawowe i najczęściej stosowane metody eksploracji danych to:
Sieci neuronowe
Sztuczne sieci neuronowe są układami przetwarzającymi informację w sposób równoległy, wzorowanymi na ludzkim mózgu. Choć analogia jest (przynajmniej na dzień dzisiejszy) dość daleka, to jednak sieci wykazują zadziwiająco wiele cech, o które posądza się raczej myślące organizmy żywe niż tradycyjne krzemowe komputery. Istotą sieci neuronowych jest możliwość ich uczenia, polegająca w rzeczywistości na długotrwałym dostrajaniu dużej ilości liczb ważących przetwarzane sygnały, zwanych wagami synaptycznymi. Z punktu widzenia człowieka sieci stanowią czarne skrzynki, produkujące np. całkiem trafne prognozy rzeczywistości w sobie tylko wiadomy sposób. Nauczona sieć to układ, który na określone sygnały wejściowe odpowiada we właściwy sposób i może w związku z tym stanowić model pewnego zjawiska lub procesu technologicznego, przewidując np. jego przyszły przebieg.
Więcej informacji na temat sieci neuronowych znajdziesz tutaj. Zobacz artykuł w materiałach konferencyjnych Polish Oracle User Group.
Drzewa decyzyjne
Algorytmy drzew decyzyjnych pozwalają automatycznie generować opisujące dane zdania analityczne, takie jak np. "Jeżeli temperatura na czujniku 1 wyższa niż 150 stopni i temperatura na czujniku 2 wyższa niż 120 stopni to prawdopodobna awaria". Jest to niezwykle cenna właściwość, gdyż umiejętność formułowania tego rodzaju wypowiedzi o rzeczywistości jest koniecznym (choć nie wystarczającym) warunkiem dla stwierdzenia, że się tę rzeczywistość "rozumie".
Zobacz artykuł w materiałach konferencyjnych Polish Oracle User Group.
Automatyczna detekcja klastrów
Na rekordy danych można patrzeć jak na punkty w wielowymiarowych przestrzeniach, których wymiary odpowiadają poszczególnym atrybutom danych. Jeżeli np. dane dotyczą pracy jakiejś maszyny, wymiarami mogą być temperatura, ciśnienie, pobór mocy itd. Bywa, że w rozmieszczeniu danych w takich przestrzeniach nie ma absolutnie żadnych prawidłowości. Niekiedy jednak grupują się one i tworzą swoiste zagęszczenia, tzw. klastry, które mają zazwyczaj określone znaczenie. Np. jeżeli w przestrzeni opisującej miejsce zamieszkania oraz wykształcenie ludzi istnieją klastry, znaczy to, że obie cechy są ze sobą powiązane. W przestrzeniach dwuwymiarowych klastry widoczne są "gołym okiem", jednak w przypadku dużej ilości wymiarów na ogół trudno je uchwycić nie posługując się specjalnymi metodami matematycznymi, np. tzw. algorytmem K-średnich.
Zobacz artykuł w materiałach konferencyjnych Polish Oracle User Group.