Eksploracja danych

From Studia Informatyczne

Spis treści

Forma zajęć

Wykład (30 godzin) + laboratorium (30 godzin)

Opis

Rozwój technologii systemów baz danych, hurtowni danych oraz repozytoriów danych, z jednej strony, z drugiej, upowszechnienie systemów informatycznych w najróżniejszych dziedzinach zastosowań, takich jak: administracja, przemysł, bankowość, handel, nauka, itp., wreszcie, powszechność korzystania z sieci WWW, jako globalnego systemu informatycznego, spowodowało nagromadzenie olbrzymich wolumenów danych i informacji. Ta eksplozja gromadzonych i przetwarzanych danych spowodowała, że „toniemy” w gromadzonych danych. Ta powódź danych i potrzeba wydobycia z tych danych użytecznej wiedzy legła u podstaw rozwoju technologii eksploracji danych, obejmującej metody i algorytmy automatycznej analizy i eksploracji danych. Celem wykładu jest zapoznanie studentów z podstawowymi pojęciami, metodami i algorytmami technologii eksploracji danych. Wykład jest ilustrowany licznymi przykładami zastosowań prezentowanych metod i algorytmów, oraz ćwiczeniami laboratoryjnymi.

Sylabus

Autorzy

Kurs został przygotowany przez zespół pracowników Instytutu Informatyki Politechniki Poznańskiej pod kierunkiem prof. dr. hab. inż. Tadeusza Morzego, w składzie:

  • prof. dr hab. inż. Tadeusz Morzy
  • dr inż. Mikołaj Morzy
  • mgr inż. Anna Leśniewska

Wymagania wstępne

  • Podstawowe wiadomości z zakresu systemów baz danych, magazynów danych oraz analizy danych.

Zawartość

Wykłady:

  • Kurs rozpoczyna się wprowadzeniem do tematu eksploracji danych. (2 godz.)Omówione zostały tutaj podstawowe zagadnienia związane z dziedziną eksploracji danych, przedstawiono główne kierunki rozwoju oraz metody eksploracji danych, jak również możliwości zastosowań w świecie rzeczywistym.
  • Drugi moduł kursu poświęcony jest problematyce związanej z odkrywaniem asocjacji. (7 godz.) W ramach tej części kursu zostały przedstawione następujące zagadnienia: wprowadzenie do problematyki odkrywania asocjacji, sformułowanie problemu, typy reguł asocjacyjnych, podstawowe algorytmy odkrywania binarnych reguł asocjacyjnych - algorytm A-Priori oraz algorytm FP-Growth, wielopoziomowe i wielowymiarowe reguły asocjacyjne, korelacje vs asocjacje.
  • Trzeci moduł kursu jest poświęcony odkrywaniu wzorców sekwencji. (4 godz.) Moduł porusza następujące zagadnienia: sformułowanie problemu odkrywania wzorców sekwencji, podstawowe algorytmy - algorytm GSP oraz algorytm PrefixSpan, odkrywanie wzorców sekwencji z ograniczeniami, uogólnione wzorce sekwencji.
  • Czwarty moduł poświęcony jest problematyce klasyfikacji. (6 godz.) W module przedstawiono następujące zagadnienia: sformułowanie problemu klasyfikacji, metody klasyfikacji, kryteria oceny metod klasyfikaji, kryteria podziału - Indeks Gini oraz Zysk Informacyjny, obcinanie drzewa, naiwny klasyfikator Bayes'a, kNN, dokładnośc klasyfikacji.
  • Piąty moduł poświęcony jest tematyce grupowania. (4 godz.) W tej cześci kursu omówione zostały następujące zagadnienia: wprowadzenie do problemu grupowania, klasyfikacja metod grupowania, metody grupowania hierarchicznego, metody grupowania iteracyjno-optymalizacyjne, podstawowe algorytmy grupowania - algorytm k-średnich oraz algorytm k-medoidów.
  • Szósty moduł poświęcony jest eksploracji tekstu. (4 godz.) Omówione zostały tutaj następujące zagadnienia: wprowadzenie do problemu eksploracji tekstu, wyszukiwanie dokumentów, reprezentacje tekstu, ukryte indeksowanie semantyczne SVD, struktury danych.
  • Ostatni moduł porusza tematykę eksploracji sieci Web. (3 godz.) Przedstawiono tutaj zagadnienia związane z klasyfikacją metod, podstawowe algorytmy rankingu stron - algorytm PageRank oraz Hubs&Authorities, eksploracja logów.

Laboratoria:

Laboratorium ma na celu zaznajomienie studentów z nowoczesnymi technologiami eksploracji danych. Głównym zadaniem laboratorium jest ilustracja zagadnień przedstawianych podczas wykładu. W trakcie laboratorium studenci zapoznają się z komercyjnym systemem eksploracji na przykładzie Oracle Data Mining i implementują wybrane algorytmy eksploracji danych przy użyciu języka PL/SQL.

  • Moduł pierwszy poświęcony jest procesowi przygotowaniu danych, które mają zostać poddane procesowi eksploracji. (3 godz.) Omówione zostały tutaj zagadnienia związane z wstępnym przetwarzaniem danych, takie jak dyskretyzacja, normalizacja, identyfikacja osobliwości.
  • Moduł drugi związany jest z dalszym etapem przetwarzania danych i przedstawia dostępne metody określania ważności atrybutów (2 godz.).
  • Moduł trzeci rozpoczyna cykl kursu ilustrujący wykorzystanie metod eksploracji danych. (3 godz.) Przedstawiono tutaj podstawowe metody i algorytmy odkrywania reguł asocjacyjnych.
  • Moduł czwarty poświęcony jest tematyce ekstrakcji cech. (2 godz.) Student zapoznaje się z tematyką odkrywania cech z wykorzystaniem algorytmu Non-Negative Matrix Factorization.
  • Moduł piąty przedstawia problematykę klasyfikacji. (9 godz.) Przedstawiono tutaj następujące techniki klasyfikacji: naiwny klasyfikator Bayesa, adaptatywna sieć Bayesa, indukcja drzew decyzyjnych, algorytm Support Vector Machines.
  • Kolejny moduł prezentuje techniki związane z problematyką analizy skupień. (4 godz.) Przedstawiono tutaj metody grupowania z wykorzystaniem algorytmów k-średnich (k-Means) oraz algorytmu O-Cluster.
  • Moduł siódmy poświęcony jest tematyce regresji oraz wykrywaniu anomalii. (2 godz.) W ramach tego modułu przedstawiono metodę regresji z wykorzystaniem algorytmu One-Class-SVM.
  • Moduł ósmy poświęcony jest problematyce odkrywania osobliwości (ang. outliers). (2 godz.) W ramach laboratorium przeprowadzono ćwiczenie z wykorzystaniem algorytmu SVM.
  • Ostatni moduł przybliża tematykę eksploracji danych tekstowych. (3 godz.) Moduł ten ilustruje w pierwszej części kroki wstępne niezbędne do przetwarzania tekstu w środowisku SQL, oraz za pomocą narzędzia Oracle Data Miner, jak i wykorzystanie narzędzia ODM bezpośrednio do eksploracji danych tekstowych.

Literatura

  • Data Mining: Concepts and Techniques, J. Han, M. Kamber, Morgan Kaufman, 2000
  • Data Mining: Practical Machine Learning Tools and Techniques with Java Implementations, I. H. Witten, E. Frank, Morgan Kaufman, 2000
  • Pricinciples of Data Mining, J. Hand, H. Mannila, P. Smyth, MIT Press, 2001
  • Systemy uczące się, P. Cichosz, WNT, 2000
  • Odkrywanie asocjacji: Algorytmy i struktury danych, T. Morzy, OWN, 2004

Moduły

Wykłady

  1. Wprowadzenie WIKI, PDFk, PDF, TEST, FLASH
  2. Odkrywanie asocjacji WIKI, PDFk, PDF, TEST, FLASH
  3. Algorytmy odkrywania binarnych reguł asocjacyjnych WIKI, PDFk, PDF, TEST, FLASH
  4. Wielopoziomowe i wielowymiarowe reguły asocjacyjne WIKI, PDFk, PDF, TEST, FLASH
  5. Odkrywanie wzorców sekwencji I WIKI, PDFk, PDF, TEST, FLASH
  6. Odkrywanie wzorców sekwencji II WIKI, PDFk, PDF, TEST, FLASH
  7. Klasyfikacja I WIKI, PDFk, PDF, TEST, FLASH
  8. Klasyfikacja II WIKI, PDFk, PDF, TEST, FLASH
  9. Klasyfikacja III WIKI, PDFk, PDF, TEST, FLASH
  10. Grupowanie I, WIKI, PDFk, PDF, TEST, FLASH
  11. Grupowanie II, WIKI, PDFk, PDF, TEST, FLASH
  12. Eksploracja tekstu I, WIKI, PDFk, PDF, TEST, FLASH
  13. Eksploracja tekstu II WIKI, PDFk, PDF, TEST, FLASH
  14. Eksploracja sieci Web WIKI, PDFk, PDF, TEST, FLASH

Laboratoria

  1. Przygotowanie danych do eksploacji DOC, PDFk, PDF, WIKI
  2. Określanie ważności atrybutów DOC, PDFk, PDF, WIKI
  3. Odkrywanie reguł asocjacyjnych DOC, PDFk, PDF, WIKI
  4. Naiwny klasyfikator Bayesa DOC, PDFk, PDF, WIKI
  5. Adaptywna sieć Bayesa DOC, PDFk, PDF, WIKI
  6. Indukcja drzew decyzyjnych DOC, PDFk, PDF, WIKI
  7. Support Vector Machine (klasyfikacja) DOC, PDFk, PDF, WIKI
  8. Grupowanie (K-Means) DOC, PDFk, PDF, WIKI
  9. Grupowanie (O-Cluster) DOC, PDFk, PDF, WIKI
  10. Odkrywanie cech i algorytm Non-Negative Matrix Factorization DOC, PDFk, PDF, WIKI
  11. Regresja SVM DOC, PDFk, PDF, WIKI
  12. Odkrywanie osobliwości DOC, PDFk, PDF, WIKI
  13. Eksploracja danych tekstowych DOC, PDFk, PDF, WIKI

Materiały pomocnicze

  1. Przygotowanie danych
  2. Odkrywanie reguł asocjacyjnych
  3. Odkrywanie cech - algorytm Non-Negative Matrix Factorization
  4. Regresja - algorytm SVM
  5. Klasyfikacja - algorytm SVM

Dodatkowe zasoby

  1. GnuPlot