Eksploracja danych

datamining.jpg

Prowadzący

dr hab. inż. Mikołaj Morzy, prof. nadzw.

telefon: 61 665 2961

email: Mikolaj.Morzy@put.poznan.pl

Instytut Informatyki Politechniki Poznańskiej, ul. Piotrowo 2, 60-965 Poznań

Miejsce przedmiotu w programie studiów

Przedmiot obowiązkowy na II stopniu studiów magisterskich uzupełniających na kierunku Informatyka, specjalność Technologie Przetwarzania Danych

Cele

Celem przedmiotu jest zapoznanie studentów z podstawowymi technikami eksploracji danych i odkrywania wiedzy w bazach danych. Podczas laboratoriów studenci implementują i testują różne algorytmy eksploracji danych (określanie ważności atrybutów, odkrywanie cech, odkrywanie asocjacji, klasyfikacja, analiza skupień, regresja) oraz ćwiczą proces odkrywania wiedzy w bazach danych. Główny nacisk położony jest na ćwiczenia praktyczne, studenci poznają istniejące narzędzia służące do eksploracji danych (Orange Data Mining, Rapid Miner, KNIME), jak i implementują własne rozwiązania przy użyciu języka Python (scikit-learn). W ramach laboratoriów studenci poznają także najważniejsze języki programowania w świecie data science : R i Pythona.

Wymagane wiadomości

Znajomość podstawowych pojęć z zakresu statystyki, umiejętność napisania i uruchomienia prostego programu w Pythonie

Plan laboratoriów

Program zajęć laboratoryjnych obejmuje następujące zagadnienia:

  • wstępne przetwarzanie danych
  • określanie ważności atrybutów
  • reguły asocjacyjne
  • podstawy metod klasyfikacji
  • naiwny klasyfikator Bayesa
  • drzewa decyzyjne
  • algorytmy z rodziny Support Vector Machines
  • meta-algorytmy klasyfikacji

Bibliografia

książki

UWAGA : absolutnie fantastyczna kolekcja 27 darmowych książek z obszaru eksploracji danych, uczenia maszynowego i predictive analytics : http://www.dataonfocus.com/21-free-data-mining-books/

  1. Eksploracja danych. Metody i algorytmy, T.Morzy, Wydawnictwo Naukowe PWN 2013
  2. Data Mining: Concepts and Techniques, J.Han, M.Kamber, J.Pei, Morgan Kaufmann, 2005
  3. Handbook of Data Mining and Knowledge Discovery, W.Kloesgen, J.Zytkow, (eds) Oxford University Press, 2002
  4. Introduction to Data Mining , P.Tan, M.Steinbach, V.Kumar, Addison Wesley, 2005
  5. Data Mining: Practical Machine Learning Tools and Techniques, I.Witten, E.Frank, Morgan Kaufmann; 2 edition (June 10, 2005)
  6. Introduction to Data Science, J.Stanton, Syracuse University’s School of Information Studies (darmowy e-book), kod R do przykładów w książce
  7. The LION way: Machine Learning plus Intelligent Optimization, darmowa książka Roberto Battitiego i Mauro Brunato

tutoriale

kursy MOOC

  • Data Mining : kurs prowadzony przez Jiaweia Hana i Johna C. Harta, niekwestionowane autorytety w dziedzinie eksploracji danych. Kurs koncentruje się na wyszukiwaniu wzorców i technikach eksploracji tekstu. W ramach wykładów można zapoznać się z algorytmami odkrywania reguł asocjacyjnych, sekwencji czy wzorców w grafach, oraz podstawowymi pojęciami z dziedziny information retrieval i text mining. Osobny moduł poświęcony jest algorytmom analizy skupień (cluster analysis).
  • Data Science : głównymi osobami stojącymi za tym kursem są Jeff Leek i Roger Peng. Tytuł specjalizacji jest dość ogólny, poszczególne kursy w ramach specjalności dotyczą różnych aspektów analizy danych, od wizualizacji, poprzez analizę statystyczną, na prezentacji skończywszy. Wszystkie ćwiczenia i zadania w ramach specjalizacji są realizowane w języku R, i jest to także dobra okazja do opanowania tego języka. Gdybym miał sugerować poszczególne kursy, to w kolejności od najbardziej wartościowego byłyby to:
  • Mining Massive Datasets : autorami kursu są najlepsi specjaliści ze Stanfordu: Jeff Ullman, Jure Leskovec i Anand Rajaraman. Kurs jest niejako uzupełnieniem tego, o czym rozmawiamy w trakcie laboratoriów z eksploracji danych, ponieważ koncentruje się bardziej na technikach dla big data, takich jak haszowanie czy MapReduce, ale zawiera też wykłady ściśle związane z naszym kursem: drzewa decyzyjne, redukcję wymiarowości, k-NN, SVM. To jest niezwykle przydatny kurs o dużej wartości.
  • Machine Learning : jeszcze jeden kurs ze Stanfordu, tym razem przygotowany przez Andrew Ng, jednego z najbardziej znanych naukowców w obszarze uczenia maszynowego. Kurs jest bardzo przystępny, niezwykle starannie przygotowany i bardzo ciekawy. Jego jedyną wadą jest użycie w zadaniach języka Octave (zamiast R).
  • Statistical Learninig : kurs przygotowany przez Trevora Hastie i Roba Tibshirani, bazujący na ich fantastycznej książce An Introduction to Statistical Learning with Applications in R. W ciemno mogę polecić ten kurs jako jeden z najlepszych dostępnych na rynku.
  • Statistics: Making Sense of Data : bardzo przyjazny kurs prowadzony przez dwójkę młodych naukowców z University of Toronto. W prosty i przystępny sposób przedstawiają podstawowe pojęcia związane ze statystyką, testy statystyczne, próbkowanie, przedziały ufności, itp.
  • Learning from Data : kurs z Caltechu, niestety, nie zdążyłem jeszcze obejrzeć wykładów i nie potrafię wypowiedzieć się na temat jakości tego kursu, natomiast lista tematów jest bardzo zbieżna z programem przedmiotu “Eksploracja danych”.

programowanie

Laboratoria

Zaliczenie

Obecność na jednej jednostce laboratoryjnej daje 2 pkt.. W trakcie semestru pojawi się kilka opcjonalnych zadań do wykonania za 5pkt. Pod koniec semestru pojawi się projekt zaliczeniowy, za który będzie można otrzymać maksymalnie 30 pkt.

Zadania samodzielne (5 pkt.)

Rozwiązania zadań samodzielnych należy przesyłać na adres Mikolaj.Morzy@put.poznan.pl do dnia 16.06.2019. W przypadku rozwiązań wykorzystujących notatniki/Pythona należy przesłać notatnik w wersji *.pdf i *.ipynb, w przypadku rozwiązań wykorzystujących RapidMiner/Orange Data Mining należy przesłać plik *.pdf ze zrzutami ekranu i krótkim komentarzem.

projekt zaliczeniowy (do 30 pkt.)

Realizacja projektu zaliczeniowego nie jest obowiązkowa. Termin nadsyłania rozwiązań mija w niedzielę, 30 czerwca 2019.

Aktualna punktacja

Kryteria oceny są następujące:

  1. ndst: 0-15
  2. dst: 16-25
  3. dst+: 26-30
  4. db: 31-45
  5. db+: 46-50
  6. bdb: 51-
 
ed-sum.txt · Last modified: 2019/06/14 01:10 by Mikołaj Morzy
 
Except where otherwise noted, content on this wiki is licensed under the following license:Public Domain
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Debian Driven by DokuWiki