Wydział Informatyki
Kierunek studiów Matematyka Stosowana Poziom i forma studiów pierwszego stopnia inżynierskie stacjonarne
Specjalność / Ścieżka dyplomowania Przedmiot wspólny Profil kształcenia praktyczny
Nazwa przedmiotu Przetwarzanie języka naturalnego Kod przedmiotu MAT1PJN
Rodzaj przedmiotu obieralny
Forma zajęć i liczba godzin W Ć L P Ps T S Semestr 5/6
15 45 Punkty ECTS 4
Przedmioty wprowadzające
Cele przedmiotu

Zapoznanie z teorią, metodologią, zasobami i narzędziami do przetwarzania języka naturalnego. Zdobycie umiejętności posługiwania się metodami i algorytmami z zakresu przetwarzania języka naturalnego. Do programowania wykorzystane zostaną dostępne specjalistyczne biblioteki oprogramowania (Stanford CoreNLP, OpenNLP, Nltk, spaCy), a podstawowym językiem będzie Python.

Treści programowe

Wykład:
1. Wprowadzenie, historia NLP, wyzwania.
2. Podstawowe narzędzia i techniki przetwarzania tekstu, Sentence Detector, Tokenizer, Named Entity Recognition, Part-of-Speech Tagger, Parser.
3. Wyszukiwanie pełnotekstowe.
4. Uczenie maszynowe w kontekście NLP. Klasyfikacja tekstu.
5. Statystyczne modelowanie języka, rozproszone reprezentacje i wektory osadzeń.
6. Reprezentacja wiedzy lingwistycznej w postaci tezaurusów, słowników.
7. Analiza sentymentu i opinii.
8. Zastosowanie deep learning do przetwarzania języka naturalnego.

Pracownia specjalistyczna:
1. Zapoznanie praktyczne z wybranymi narzędziami i technikami przetwarzania języka naturalnego.
2. Realizacja wybranego zadania projektowego wykorzystującego techniki przetwarzania języka naturalnego.

Metody dydaktyczne

wykład problemowy,   programowanie z użyciem komputera,   metoda projektów,  

Forma zaliczenia

Wykład - zaliczenie pisemne.
Pracownia specjalistyczna - przygotowanie i obrona projektu programistycznego.

Symbol efektu uczenia się Zakładane efekty uczenia się Odniesienie do kierunkowych efektów uczenia się
EU1 zna i rozumie podstawowe pojęcia, problematykę, metody, algorytmy i narzędzia związane z przetwarzaniem języka naturalnego K_W10
K_W12
EU2 potrafi używać metody i algorytmy związane z przetwarzaniem języka naturalnego do rozwiązywania problemów technicznych K_U15
K_U16
EU3 potrafi zaprojektować i zaimplementować system oprogramowania wykorzystującey metody i narzędzia przetwarzania języka naturalnego K_U12
K_U15
K_U16
EU4 posiada umiejętność pracy w grupie 2-3 osobowej nad projektem programistycznym K_U18
Symbol efektu uczenia się Sposób weryfikacji efektu uczenia się Forma zajęć na której zachodzi weryfikacja
EU1 zaliczenie pisemne W
EU2 przygotowanie i obrona projektu programistycznego Ps
EU3 przygotowanie i obrona projektu programistycznego Ps
EU4 przygotowanie i obrona projektu programistycznego Ps
Bilans nakładu pracy studenta (w godzinach) Liczba godz.
Wyliczenie
1 - Udział w wykładach 15
2 - Udział w pracowni specjalistycznej 45
3 - Udział w konsultacjach 5
4 - Przygotowanie do realizacji projektu i realizacja projektu 30
5 - Przygotowanie do testu zaliczającego wykład 5
RAZEM: 100
Wskaźniki ilościowe GODZINY ECTS
Nakład pracy studenta związany z zajęciami wymagającymi bezpośredniego udziału nauczyciela 65
(1)+(2)+(3)
2.6
Nakład pracy studenta związany z zajęciami o charakterze praktycznym 75
(2)+(4)
3.0
Literatura podstawowa

1. D. Li, Y. Liu, eds., Deep learning in natural language processing, Springer, 2018.
2. S. Bird, E. Klein, E. Loper, Natural Language Processing with Python, O'Reilly Media, 2009.
3. Materiały podane przez prowadzącego.

Literatura uzupełniająca

1. W. Lubaszewski, Słowniki komputerowe i automatyczna ekstrakcja informacji z tekstu, UWND AGH, 2009.
2. D. Jurafsky, J.H. Martin, Spech and Language Processing - An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition, Prentice Hall, 2008.
3. Ch.D. Manning, H. Schutze, Foundations of Statistical Natural Language Processing, MIT Press, Cambridge Massachusetts, 1999.

Jednostka realizująca Katedra Oprogramowania Data opracowania programu
Program opracował(a) dr inż. Tomasz Łukaszuk 2021.04.20