| Wstęp | |
| Modele data mining | |
| Przegląd algorytmów | |
| Wybór algorytmu w celu analizy danych | |
| Dodatkowe funkcje algorytmów | |
| Podsumowanie |
Dzisiejsze bazy danych osiągają wielkości liczone w terabajtach - w tej masie danych mogą znajdować się ukryte informacje o istotnym znaczeniu. Jak zatem można poprawnie wnioskować na podstawie tak ogromnych baz danych?
Gwałtowny przyrost wielkości baz danych w organizacjach rządowych, przedsiębiorstwach i instytutach naukowych, spowodował ograniczenia w analizie oraz interpretacji zgromadzonych w nich danych. Nieodzownie potrzebne stały się narzędzia i techniki automatycznego i inteligentnego analizowania baz danych. Obecnie są one przedmiotem zainteresowań badaczy szybko rozwijającej się dziedziny wiedzy nazywanej eksploracja wiedzy z baz danych (knowledge discovery in databases, KDD). Ogólnie można powiedzieć, iż eksploracja wiedzy z baz danych jest nietrywialnym procesem identyfikowania nieznanych, ważnych, potencjalnie użytecznych oraz ostatecznie zrozumiałych wzorców w danych.
Proces eksploracji wiedzy wykorzystuje metody (algorytmy) drążenia danych w celu ekstrakcji (identyfikacji) ukrytej reguł, pojęć, relacji w bazie danych, przetwarzając, próbkując oraz transformując zapisane w niej dane. Jest to działanie interaktywne oraz iteracyjne, angażujące użytkownika poprzez dokonywanie decyzji w stosunku do kolejnych etapów analizy, do których możemy zaliczyć:
1. | Selekcja danych(selection) |
2. | Wstępna obróbka (preprocessing) |
3. | Transformacja (transformation) |
4. | Drążenie danych (data mining) |
5. | Interpretacja / Ocena (interpretation / evaluation) |
Algorytm drążenia danych jest mechanizmem który tworzy modele drążenia danych. W celu stworzeniu modelu, w pierwszej fazie algorytm analizuje zbiór danych, poszukując zależności między danymi. Algorytm wykorzystuje wyniki przeprowadzonej analizy w celu określenia parametrów modelu.
Stworzony przez algorytm model może przyjmować różne postacie takie jak:
| • | zbiór reguł opisujących koszyk produktów, |
| • | drzewo decyzyjne, które określa prawdopodobieństwo czy określony klient kupi dany produkt, |
| • | model matematyczny, który prognozuje sprzedaż, |
| • | zbiór skupisk które opisują zależności między danymi. |
Usługi Microsoft SQL Analysis Services (SSAS) dostarczają kilku algorytmów do wykorzystania w celu ekstrakcji wiedzy. Algorytmy te mogą być stosowane równolegle z rozwiązaniami firm trzecich, zgodnymi ze specyfikacją OLE DB Data mining. Należy zwrócić uwagę, iż każdy model, a więc i matematyczny, jest tylko hipotetycznym oraz przybliżonym i uproszczonym odwzorowaniem cech rzeczywistego układu.
Usługi analityczne zawierają następujące typy algorytmów:
| • | Algorytmy klasyfikacji służą do prognozy jednej lub kilku zmiennych dyskretnych w oparciu o zmienne niezależne; przykładem tego typu algorytmu jest Microsoft Decision Trees Algorithm, |
| • | Algorytmy regresji służą do prognozy zmiennych ciągłych (np. zysk, strata) w oparciu o zmienne niezależne; przykładem takiego algorytmu jest Microsoft Time Series Algorithm, |
| • | Algorytmy grupowania dzielą dane na grupy lub klastery na podstawie ich wzajemnego podobieństwa; przykładem takiego algorytmu jest Microsoft Clustering Algorithm, |
| • | Algorytmy asocjacji określają wielkość korelacji pomiędzy zmiennymi. Przedstawia się je w postaci reguł asocjacyjnych rozważanych w kontekście analizy koszyka zakupów (market basket analysis); przykładem takiego algorytmu jest Microsoft Association Algorithm, |
| • | Algorytmy analizy sekwencji pozwalają znaleźć ścieżki kolejnych zdarzeń w zbiorze danych takich jak wzorce wizyt na stronach internetowych; przykładem takiego algorytmu jest Microsoft Sequence Clustering Algorithm. |
Złożoność problemu wyboru algorytmu w celu analizy danych i tym samym ekstrakcji wiedzy ze zbioru danych wymaga posiadania wiedzy apriori. Wyniki procesu analizy danych mogą znacznie się różnić w zależności od wybranego algorytmu, zaś niektóre z nich mogą dać więcej niż jeden wynik. Na przykład, algorytm Microsoft Decision Trees może być z powodzeniem zastosowany nie tylko w celu predykcji, lecz także w celu redukcji liczby kolumn (wymiaru macierzy) zbioru danych. Jest to możliwe ze względu na właściwości wspomnianego algorytmu, który jest w stanie określić, które zmienne (kolumny) nie mają wpływu na końcowy model. Nie jest konieczne stosowanie algorytmów niezależnie od siebie - w pojedynczym rozwiązaniu na etapie eksploracji danych można wykorzystać inne algorytmy niż na etapie prognozowania. Na przykład algorytm segmentacji, stosowany do poszukiwania wzorców, może być użyty do podziału danych na jednorodne grupy. Dane takie posłużą jako dane wejściowe dla algorytmu klasyfikacji w celu budowy drzew decyzyjnych.
Modele drążenia danych mogą służyć do różnych celów w zależności od potrzeb. Tabela poniżej stanowi zestawienie dostępnych algorytmów w Microsoft SQL 2005.
Cele, zadania | Algorytm |
Prognozowanie zmiennych dyskretnych, na przykład czy określony klient kupi produkt w ramach kampanii reklamowej. | Microsoft Decision Trees Algorithm Microsoft Naive Bayes Algorithm Microsoft Clustering Algorithm Microsoft Neural Network Algorithm |
Prognozowanie zmiennych ciągłych, na przykład prognozowanie sprzedaży określonego asortymentu na następny rok. | Microsoft Decision Trees Algorithm Microsoft Time Series Algorithm |
Predykcja sekwencji, na przykład dla witryny internetowej ciąg kliknięć w ramach jednej sesji. | Microsoft Sequence Clustering Algorithm |
Poszukiwanie homogenicznych grup, na przykład grupowanie klientów. | Microsoft Clustering Algorithm Microsoft Sequence Clustering Algorithm |
Poszukiwanie wzorców, na przykład analiza koszyka zakupów, transakcji giełdowych. | Microsoft Association Algorithm Microsoft Decision Trees Algorithm |
Ze względu na różnice w prezentacji wyniku działania poszczególnych algorytmów, usługi analityczne (Analysis Services) dostarczają odrębnych widoków dla każdego z algorytmów. Przeglądanie modelu w usługach analitycznych odbywa się w zakładce Mining model viewer, dostępnej w Data Mining Designer dla właściwego algorytmu.
W MS SQL 2005 istnieje możliwość rozszerzenia wyników o dodatkowe funkcje. Poniższa lista to zestaw funkcji o które mogą być rozszerzone algorytmy w usługach analitycznych:
| • | BottomCount |
| • | RangeMin |
| • | BottomPercent |
| • | TopCount |
| • | Predict |
| • | TopPercent |
| • | RangeMax |
| • | TopSum |
| • | RangeMid |
Poszczególne algorytmy wspierają także inne funkcje jednak żaden z nich nie pozwala na dublowanie kluczy.
Dzięki wykorzystaniu technik drążenia danych (potocznie data mining), przedsiębiorstwa są w stanie wykryć trendy sprzedaży czy wzorce zachowań konsumentów, wcześniej nieznane bądź pomijane. Zinterpretowane dane, czyli informacje uzyskane w procesie drążenia danych, są w stanie przyczynić się do podniesienia efektywności działalności firmy, przekładając się tym samym na większe zyski. Przedstawione powyżej algorytmy drążenia danych, są kluczowym elementem technik eksploracji danych zaimplementowanych w Microsoft SQL 2005.
![]() | Paweł Weichbroth (Combidata Poland) |