Politechnika Warszawska - Centralny System Uwierzytelniania
Nie jesteś zalogowany | zaloguj się
katalog przedmiotów - pomoc

Inżynieria uczenia maszynowego

Informacje ogólne

Kod przedmiotu: 103A-INSZI-ISP-IUM Kod Erasmus / ISCED: (brak danych) / (brak danych)
Nazwa przedmiotu: Inżynieria uczenia maszynowego
Jednostka: Wydział Elektroniki i Technik Informacyjnych
Grupy: ( Przedmioty obieralne )-Informatyka-inż.-EITI
( Przedmioty obieralne )-Inżynieria systemów informatycznych-inż.-EITI
( Przedmioty obieralne )-Sztuczna inteligencja-inż.-EITI
( Przedmioty techniczne )---EITI
Punkty ECTS i inne: 4.00
Język prowadzenia: polski
Jednostka decyzyjna:

103000 - Wydział Elektroniki i Technik Informacyjnych

Kod wydziałowy:

IUM

Numer wersji:

1

Skrócony opis:

Przedmiot przedstawia modele uczenia maszynowego jako część działających produkcyjnie systemów informatycznych. W tym kontekście przedstawiany jest całościowy proces tworzenia modeli: od momentu zbierania wymagań biznesowych i definiowania zadań modelowania, poprzez etap tworzenia i wdrażania modeli predykcyjnych, aż po analizę i diagnostykę sposobu ich działania. Poruszany jest również szerszy kontekst związany z rozwojem technik sztucznej inteligencji oraz jego konsekwencjami.

Pełny opis:

<h2>Treść wykładu

  1. Wprowadzenie. (2 godz.)
    1. Sprawy organizacyjne, cele i program zajęć, zasady zaliczania.
    2. Specyfika systemów stosujących modele predykcyjne.
    3. Cykl opracowywania modeli predykcyjnych.
    4. Dostępne standardy: CRISP-DM, KDD, SEMMA.

<h4>Część I: Przygotowanie modeli predykcyjnych.

  1. Definiowanie zadań modelowania. (2 godz.)
    1. Zadania biznesowe, a zadania modelowania: zbieranie wymagań, precyzowanie i definiowanie zadań, ustalanie kryteriów sukcesu.
    2. Standardowe zadania: regresja, klasyfikacja, grupowanie, modelowanie sekwencji, analiza szeregów czasowych, modele generatywne.
    3. Wstępny dobór technik modelowania.
  2. Inżynieria cech i tworzenie zbiorów do modelowania. (4 godz.)
    1. Atrybuty wejściowe/wyjściowe:
      1. typy zmiennych, normalizacja, odstające wartości atrybutów,
      2. dane brakujące, imputacja jednokrotna/wielorotna,
      3. dane niezbalansowane/asymetryczne, równoważenie liczby przykładów,
      4. duże zbiory danych, próbkowanie i jego konsekwencje,
      5. błędy w danych,
      6. tworzenie nowych atrybutów, interakcje,
      7. zaawansowane techniki inżynierii cech: kodowanie przy pomocy drzew, “feature hashing”, atrybuty tekstowe, embedding,
      8. selekcja cech i redukcja wymiarowości.
    2. Tworzenie zbiorów do modelowania.
      1. Problemy z pozyskaniem odpowiedniej ilości danych, “gęstość danych”.
      2. Manualne etykietowanie danych, stosowanie usług zewnętrznych (np. Amazon turk).
      3. Zastosowanie technik automatycznego etykietowania danych – SNORKEL, SNUBA.
      4. Reprezentatywność zbioru danych.
  3. Dobór funkcji celu. (2 godz.)
    1. Omówienie funkcji celu dla: klasyfikacji, regresji oraz rankingu.
    2. Optymalizacja funkcji celu, a zadanie predykcyjne.
    3. Stosowane funkcje celu, a warunki zadania biznesowego.
  4. Trenowanie i ewaluacja modeli. (2 godz.)
    1. Strojenie hiper-parametrów.
    2. Znaczenie strojenia.
    3. Popularne metody: przeszukiwanie po hipersiatce, przeszukiwanie losowe, podejście bayesowskie, heurystyki.
    4. Dobór metody uczącej.
    5. Porównywanie modeli (offline).
      1. Tworzenie rankingów modeli.
      2. Różnice w jakości, a stopień złożoności modeli.
    6. Modele zagregowane.

<h4>Część II: Modele na środowisku produkcyjnym.

  1. Wdrażanie modelu w systemie informatycznym. (4 godz.)
    1. Elementy architektury systemów stosujących modele predykcyjne.
    2. Trenowanie i stosowanie modeli do predykcji.
    3. Zbieranie informacji diagnostycznych.
    4. Dane wejściowe/wyjściowe jako zależności wytrenowanego modelu.
    5. Wersjonowanie modeli.
    6. Testy automatyczne, powtarzalność wyników.
    7. Przegląd dostępnych platform i narzędzi.
  2. Monitorowanie serwowanych modeli. (2 godz.)
    1. Monitorowanie modelu.
      1. Miary techniczne.
      2. Miary biznesowe.
      3. Monitorowanie danych wejściowych.
    2. Znaczenie modeli bazowych/punktów odniesienia.
    3. Interpretacja wyników, adekwatne typy wykresów, paradoks Simpsona.
  3. Ewaluacja nowych modeli. (4 godz.)
    1. Eksperymenty A/B:
      1. przydział grup eksperymentalnych, sprzężenia zwrotne,
      2. planowanie eksperymentów: dobór wielkości grupy, czas trwania, warunki zatrzymania,
      3. podejście częstościowe, a podejście bayesowskie.
    2. Wdrażanie modeli jako interwencja – przyczynowo-skutkowa ocena przydatności modelu.
    3. Dynamiczny wybór modelu za pomocą podejścia multi-arm bandits. Definicja zagadnienia, metoda próbkowania Thompsona.
  4. Wyjaśnianie predykcji modelu. (2 godz.)
    1. Modele poddające się łatwej interpretacji, a „czarne skrzynki”.
    2. Wyjaśnianie predykcji czarnych skrzynek: LIME, DALEX.

<h4>Część III: Szerszy kontekst zastosowań modeli predykcyjnych.

  1. Kwestie bezpieczeństwa i prywatności. (2 godz.)
    1. Modele zagrożeń, wycieki danych.
    2. Zagadnienie „złośliwych danych”.
    3. Ochrona danych wrażliwych, anonimizacja, prywatność różnicowa.
  2. Kierunki rozwoju metod uczenia maszynowego. (2 godz.)
    1. Wpływ technologii na rozwój metod uczenia maszynowego.
    2. Koszty/Zyski z trenowania złożonych modeli predykcyjnych.
    3. Aktualne kierunki rozwoju metod UM.
  3. Społeczne kwestie technik sztucznej inteligencji. (2 godz.)
    1. Zaawansowane techniki modelowania, a ochrona prywatności.
    2. Koncepcja „bańki filtrującej”.
    3. Konsekwencje nadużywania predykcji.
    4. Kwestie obciążenia zbiorów danych, zagadnienie “fairness”.

<h2>Zakres projektu

Celem projektu jest opracowanie kompletnego systemu bazującego na UM rozwiązującego konkretne zadanie biznesowe. System powinien mieć elementy pozwalające na:

  • serwowanie przygotowanych modeli,
  • cykliczne ich trenowanie i podmianę/aktualizację,
  • wprowadzanie i ewaluację nowych modeli,
  • monitorowanie sposobu działania modeli.

Realizacja projektu będzie rozbita na kilka etapów (wyniki uzyskane po zakończeniu każdego z nich będą dyskutowane z prowadzącym):

  1. analizę przedstawionego problemu biznesowego i zdefiniowanie zadania modelowania,
  2. przygotowanie danych uczących i prostego modelu bazowego,
  3. implementację systemu realizującego wymagania techniczne projektu,
  4. przygotowanie bardziej zaawansowanego modelu rozwiązującego zadanie modelowania,
  5. zestawienie eksperymentu umożliwiającego porównanie przygotowanych modeli online.
Literatura:

  1. Sarkar, Dipanjan, Raghav Bali, and Tushar Sharma. Practical Machine Learning with Python: A Problem-Solver's Guide to Building Real-World Intelligent Systems. Apress, 2017.
  2. Bi, Jinbo, et al. "Dimensionality reduction via sparse support vector machines." Journal of Machine Learning Research 3.Mar (2003): 1229-1243.
  3. Weinberger, Kilian, et al. "Feature hashing for large scale multitask learning." Proceedings of the 26th Annual International Conference on Machine Learning. ACM, 2009.
  4. Wickham, Hadley. "Tidy data." Journal of Statistical Software 59.10 (2014): 1-23. 2.
  5. Bergstra, James, Dan Yamins, and David D. Cox. "Hyperopt: A python library for optimizing the hyperparameters of machine learning algorithms." Proceedings of the 12th Python in science conference. 2013.
  6. Sculley, D., Holt, G., Golovin, D., Davydov, E., Phillips, T., Ebner, D., … Dennison, D. (2015). Hidden Technical Debt in Machine Learning Systems. Nips, 2494–2502. Retrieved from http://papers.nips.cc/paper/5656-hidden-technical-debt-in-machine-learning-systems.pdf
  7. Sculley, D., Holt, G., Golovin, D., Davydov, E., Phillips, T., Ebner, D., … Young, M. (2014). Machine Learning : The High-Interest Credit Card of Technical Debt. NIPS 2014 Workshop on Software Engineering for Machine Learning (SE4ML), 1–9. http://doi.org/10.1007/s13398-014-0173-7.2
  8. Dmitriev, Pavel, et al. "A Dirty Dozen: Twelve Common Metric Interpretation Pitfalls in Online Controlled Experiments." Proceedings of the 23rd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. ACM, 2017.
  9. Alipourfard, Nazanin, Peter G. Fennell, and Kristina Lerman. "Can you Trust the Trend: Discovering Simpson's Paradoxes in Social Data." arXiv preprint arXiv:1801.04385 (2018).
  10. Goldstein, Alex, et al. "Peeking inside the black box: Visualizing statistical learning with plots of individual conditional expectation." Journal of Computational and Graphical Statistics 24.1 (2015): 44-65.
  11. Brodersen, Kay H., et al. "Inferring causal impact using Bayesian structural time-series models." The Annals of Applied Statistics 9.1 (2015): 247-274.
  12. Alipourfard, N., Fennell, P. G., & Lerman, K. (2018). Can you Trust the Trend: Discovering Simpson’s Paradoxes in Social Data. Retrieved from http://arxiv.org/abs/1801.04385
  13. Herley, Cormac, and Paul C. Van Oorschot. "Sok: Science, security and the elusive goal of security as a scientific pursuit." 2017 IEEE Symposium on Security and Privacy (SP). IEEE, 2017.
  14. Barreno, Marco, et al. "The security of machine learning." Machine Learning 81.2 (2010): 121-148.
  15. Athalye, Anish, Nicholas Carlini, and David Wagner. "Obfuscated gradients give a false sense of security: Circumventing defenses to adversarial examples." arXiv preprint arXiv:1802.00420 (2018).
  16. O'neil, Cathy. Weapons of math destruction: How big data increases inequality and threatens democracy. Broadway Books, 2016.

Zajęcia w cyklu "rok akademicki 2020/2021 - sem. zimowy" (w trakcie)

Okres: 2020-10-01 - 2021-02-12
Wybrany podział planu:


powiększ
zobacz plan zajęć
Typ zajęć: Projekt, 15 godzin, 30 miejsc więcej informacji
Wykład, 30 godzin, 30 miejsc więcej informacji
Koordynatorzy: Paweł Zawistowski
Prowadzący grup: Paweł Zawistowski
Lista studentów: (nie masz dostępu)
Zaliczenie: Ocena łączna
Jednostka realizująca:

103200 - Instytut Informatyki

Zajęcia w cyklu "rok akademicki 2019/2020 - sem. letni" (zakończony)

Okres: 2020-02-22 - 2020-09-30
Wybrany podział planu:


powiększ
zobacz plan zajęć
Typ zajęć: Projekt, 15 godzin, 30 miejsc więcej informacji
Wykład, 30 godzin, 30 miejsc więcej informacji
Koordynatorzy: Paweł Zawistowski
Prowadzący grup: Paweł Zawistowski
Lista studentów: (nie masz dostępu)
Zaliczenie: Ocena łączna
Jednostka realizująca:

103200 - Instytut Informatyki

Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Politechnika Warszawska.