Kurs: Nowoczesne języki przetwarzania danych: Python, R i Matlab lato 2015/16

Język wykładowy Angielski
Opiekun Jan Chorowski
Liczba godzin
Rodzaj Kurs inżynierski
ECTS 5
Polecany dla I roku Nie
Egzamin Nie

Opis przedmiotu:

Skuteczna obrobka danych wymaga stosowania odpowiednich narzędzi. W tym celu chętnie wykorzystywane są Python, R, i Matlab (<http://www.kdnuggets.com/2013/08/languages-for-analytics-data-mining-data- science.html>, <http://www.kaggle.com/wiki/Software>). Języki te są bardzo podobne: są interpretowane i umożliwiają wykonywanie interaktywnych obliczeń i wizualizacji. Stąd wynika największy problem związany z ich skutecznym wykorzystaniem - aby obliczenia przebiegały sprawnie konieczne jest wykorzystanie wysokopoziomowych struktur danych (macierzy, tabeli danych) oferowanych przez te języki, aby uniknąć wolnego wykonywania interpretowanych pętli. W efekcie programy są zwięzłe, a obliczenia przebiegają sprawnie. Ćwiczenia do kursu będą obejmowały małe projekty praktyczne, np.: * Efekty dźwiękowe i poprawianie obrazkow w Matlabie. * Modelowanie kursow akcji w R. * Analiza danych z blogow, Facebooka czy Twittera w Pythonie. Planowany zakres tematyczny: 1. Matlab: * Matlab jako kalkulator, obliczenia na macierzach. * Wykresy i animacje. * Symulacje fizyczne i podstawy przetwarzania sygnałow. * Efekty dźwiękowe. * Integracja z Javą i funkcjami w C. 1. R: * Wprowadzenie, struktury danych. * Planowanie eksperymentow. * ggplot: nowoczesny pakiet graficzny 1. Python: * numpy, architektura ndarray, broadcasting, ufuncs. * Narzędzia do obrobki danych: Pandas, scikits-learn. * Zbieranie danych z internetu: Beautiful Soup, API do popularnych serwisow. * Obliczenia symboliczne: sympy, theano. W zależności od zainteresowania uczestnikow przedmiot może objąć albo pakiety macierzowe i metody ich implementacji (BLAS, LAPACK), lub więcej przykładow analizy danych. Rozważam też przedstawienie podstaw Julii - nowego języka rozwijanego na MIT i stworzonego od podstaw aby możliwa była łatwa kompilacja just-in-time przez llvm. **Uwaga:** kurs nie będzie uczył podstaw Pythona, tylko użycia specjalistycznych bibliotek. ** **

Wykłady

Lista
Prowadzący Termin zajęć Limit Zapisani Kolejka
Jan Chorowski
cz 12:00-14:00 (s. 25) 300 16 0

UWAGA! Wyższa liczba oznacza wyższy priorytet, po zapisaniu do grupy zostajemy usunięci z kolejek o niższym priorytecie.

Pracownie

Lista
Prowadzący Termin zajęć Limit Zapisani Kolejka
Jan Chorowski
śr 16:00-18:00 (s. 137) 15 10 0
Piotr Wnuk-Lipiński
wt 14:00-16:00 (s. 137) 15 6 0

UWAGA! Wyższa liczba oznacza wyższy priorytet, po zapisaniu do grupy zostajemy usunięci z kolejek o niższym priorytecie.


Konsultacje prowadzących:


Imię i nazwisko Pokój Konsultacje
Jan Chorowski 203 Fri 12:15-2pm, you must book a slot at https://calendar.google.com/calendar/selfsched?sstoken=UUtYVm5mOVkxUVRNfGRlZmF1bHR8ZmJjZmRiMzU4ODA0NDAyYTYzOTZiZjNjY2Y2ZDQwODk
Piotr Wnuk-Lipiński 203 środa 14.00 - 15.00, czwartek 13.00 - 14.00, piątek 12.00 - 14.00, możliwe też inne terminy, konsultacje online (domyślnie) lub offline (po ustaleniu emailem), proszę o wcześniejszy kontakt emailem lub zarezerwowanie terminu przez kalendarz Google