Locked History Actions

pms/18umz

Uczenie maszynowe (D UMZ UI0) 2017/2018

Korespondencja z prowadzącym

Proszę, aby we wszystkich mailach dotyczących zajęć umieszczać w temacie napis: [UMZ]

Harmonogram zajęć

lp.

data

wykład

ćwiczenia

1

9 października

Wprowadzenie

Wprowadzenie. Python – przypomnienie

2

16 października

Regresja liniowa

3

23 października

Regresja logistyczna

4

6 listopada

Dobre praktyki w uczeniu maszynowym

5

13 listopada

Naiwny klasyfikator bayesowski

6

20 listopada

Drzewa decyzyjne

7

27 listopada

Algorytm k najbliższych sąsiadów

8

4 grudnia

Uczenie nienadzorowane

9

11 grudnia

Sieci neuronowe – wprowadzenie

10

18 grudnia

Propagacja wsteczna

11

8 stycznia

Wielowarstowe sieci neuronowe w praktyce

12

15 stycznia

Rekurencyjne sieci neuronowe

Zadanie domowe

13

29 stycznia

Konwolucyjne sieci neuronowe

Zasady zaliczenia

Wykład

W sesji ezaminacyjnej odbędzie się egzamin pisemny w formie testu jednokrotnego wyboru. Warunkiem przystąpienia do egaminu jest zaliczenie ćwiczeń.

Począwszy od drugiego wykładu, na początku każdego wykładu odbędzie się krótka kartkówka sprawdzająca wiadomości z poprzedniego wykładu. Będzie to test jednokrotnego wyboru, składający się z 6 pytań, trwający ok. 10 minut.

  • Studentowi, który w co najmniej 8 testach uzyska co najmniej 3 poprawne odpowiedzi, przysługuje prawo do zwolnienia z egzaminu z oceną dst

  • Studentowi, który ponadto w co najmniej 5 testach uzyska co najmniej 4 poprawne odpowiedzi, przysługuje prawo do zwolnienia z egzaminu z oceną dst+

  • Studentowi, który w co najmniej 8 testach uzyska co najmniej 4 poprawne odpowiedzi, przysługuje prawo do zwolnienia z egzaminu z oceną db

  • Studentowi, który ponadto w co najmniej 5 testach uzyska co najmniej 5 poprawnych odpowiedzi, przysługuje prawo do zwolnienia z egzaminu z oceną db+

  • Studentowi, który w co najmniej 8 testach uzyska co najmniej 5 poprawnych odpowiedzi, przysługuje prawo do zwolnienia z egzaminu z oceną bdb

Obecność na wykładach nie jest obowiązkowa.

Ćwiczenia

Na ćwiczeniach będziemy korzystać z systemu Gonito.net. Na każdych zajęciach będzie do wykonania zadanie. Za każde poprawnie wykonane zadanie zostaną przyznane punkty.

Dodatkowo:

Zadanie domowe

Dodatkowe zadanie domowe z rekurencyjnych sieci neuronowych:

Stwórz sieć LSTM, która wygeneruje tekst wzorowany na wybranym korpusie (np. Pan Tadeusz, Wikipedia itp.).

Możesz wzorować się na https://github.com/keras-team/keras/blob/master/examples/lstm_text_generation.py

Liczba punktów: 50

Ocena

Ocena z ćwiczeń będzie zależeć od liczby uzyskanych punktów:

od

do

ocena

0

299

ndst

300

349

dst

350

399

dst+

400

449

db

450

499

db+

500

bdb

Obecność na ćwiczeniach jest obowiązkowa. Dopuszczalne są maksymalnie 3 nieusprawiedliwione nieobecności. Ewentualne pozostałe nieobecności wymagają okazania zwolnienia lekarskiego.

Literatura

Książki:

  • S. Raschka, Python Machine Learning, Packt, Birmingham 2015

  • S. Marsland, Machine Learning: An Algorithmic Perspective, CRC, Boca Raton 2015

  • W. Richert, L.P. Coelho, Building Machine Learning Systems with Python, Packt, Birmingham 2013

  • G. Moncecchi, R. Garreta, Learning scikit-learn: Machine Learning in Python, Packt, Birmingham 2013

  • K. Krawiec, J. Stefanowski, Uczenie maszynowe i sieci neuronowe, WPP, Poznań 2004

  • M. Krzyśko, W. Wołyński, T. Górecki, M. Skorzybut, Systemy uczące się, WNT, Warszawa 2008

  • W. Duch, J. Korbicz, L. Rutkowski, R. Tadeusiewicz, Sieci neuronowe, Exit, Warszawa 2000

  • K.P. Murphy, Machine Learning: a Probabilistic Perspective, 2015

Książki i tutoriale online:

Kursy online:

  • A. Ng, Machine Learning, Coursera

  • G. Hinton, Neural Networks for Machine Learning, Coursera

  • Deep Learning, Google, Udacity

Jak wyświetlać prezentacje w programie Jupyter

  1. Zainstaluj pakiety Jupyter oraz MathJax:

    sudo apt install jupyter mathjax
  2. Zainstaluj wtyczkę RISE służącą do wyświetlania prezentacji: https://github.com/damianavila/RISE#option-2---using-pip-less-recommended

  3. Uruchom notebook Jupytera:
    cd katalog_z_materiałami
    jupyter notebook
  4. Otwórz plik *.ipynb

  5. Aby edytować slajdy, wybierz z menu View → Cell Toolbar → Slideshow

  6. Uruchom prezentację, klikając Enter/Exit Live Reveal Slideshow

Problemy z wyzwaniem "He Said She Said" classification challenge (2nd edition)

Zbiory wejściowy dev-0/in.tsv i treningowy train/train.tsv zawierają znaki NULL oraz '\r', co może sprawiać problemy przy przetwarzaniu. Można je usunąć poleceniem:

tr <PLIK_ZAWIERAJĄCY_ZNAKI_NULL -d '\000|\r' >PLIK_WYCZYSZCZONY