Wydział Informatyki
Kierunek studiów Informatyka Poziom i forma studiów pierwszego stopnia inżynierskie stacjonarne
Specjalność / Ścieżka dyplomowania --- Profil kształcenia ogólnoakademicki
Nazwa przedmiotu Techniki i narzędzia przetwarzania języka naturalnego Kod przedmiotu INF1PJN
Rodzaj przedmiotu obieralny
Forma zajęć i liczba godzin W Ć L P Ps T S Semestr 5
26 30 Punkty ECTS 5
Przedmioty wprowadzające Programowanie obiektowe (INF1POB),  
Cele przedmiotu

Celem przedmiotu jest zapoznanie studentów z podstawowymi metodami i narzędziami stosowanymi w analizie i przetwarzaniu języka naturalnego (NLP). W trakcie zajęć studenci zdobywają wiedzę na temat reprezentacji tekstu, ekstrakcji informacji, analizy składniowej i semantycznej oraz uczenia maszynowego w kontekście NLP. Przedmiot kładzie nacisk na praktyczne zastosowanie nowoczesnych bibliotek i frameworków, takich jak NLTK, spaCy czy Transformers, umożliwiających tworzenie aplikacji przetwarzających dane tekstowe. Ukończenie kursu pozwala studentom na samodzielne projektowanie i implementowanie rozwiązań NLP w różnych dziedzinach informatyki.

Odniesienia do frameworka edukacyjnego mikrokompetencji SFIA:
Data Science (DATS) - poziom 3
Artificial Intelligence (AI) and Data Ethics (AIDE) - poziom 2
Machine Learning (MLNG) - poziom 3
Programming/Software Development (PROG) - poziom 3
Data Analytics (DAAN) - poziom 2

Treści programowe

Wykład:
1. Wprowadzenie do przetwarzania języka naturalnego
2. Reprezentacja tekstu i przetwarzanie wstępne
3. Analiza składniowa i strukturalna języka
4. Modelowanie języka i wektoryzacja semantyczna
5. Ekstrakcja informacji i rozpoznawanie encji (NER)
6. Uczenie maszynowe w NLP
7. Nowoczesne architektury i modele językowe
8. Zaliczenie wykładu

Pracownia specjalistyczna:
1. Zapoznanie się z bibliotekami do przetwarzania języka naturalnego
2. Wstępna obróbka tekstu i analiza statystyczna korpusu
3. Analiza składniowa i rozbiór gramatyczny z użyciem spaCy
4. Wektoryzacja tekstu: od Bag-of-Words do Word2Vec
5. Rozpoznawanie nazwanych bytów (NER) i ekstrakcja informacji
6. Klasyfikacja tekstu i analiza sentymentu z użyciem scikit-learn
7. Tworzenie chatbotów opartych na regułach i uczeniu maszynowym
8. Zastosowanie modeli BERT do klasyfikacji i ekstrakcji informacji
9-14. Realizacja zadania projektowego
15. Wystawienie ocen

Metody dydaktyczne

wykład problemowy,   programowanie z użyciem komputera,   wykład informacyjny,  

Forma zaliczenia

Wykład: zaliczenie pisemne.
Pracownia specjalistyczna: zadanie projektowe.

Symbol efektu uczenia się Zakładane efekty uczenia się Odniesienie do kierunkowych efektów uczenia się
EU1 podstawowe techniki przetwarzania tekstu w języku naturalnym, problematykę, metody i narzędzia związane z przetwarzaniem języka naturalnego INF1_W10
INF1_W12
INF1_W14
EU2 identyfikować problemy możliwe do rozwiązania metodami przetwarzania języka naturalnego INF1_U10
INF1_U12
EU3 korzystać z wybranych bibliotek i narzędzi w realizacji zadań wymagających przetwarzania języka naturalnego INF1_U07
INF1_U11
INF1_U13
EU4 krytycznej oceny możliwości wykorzystania technik przetwarzania języka naturalnego w różnych kontekstach INF1_K01
Symbol efektu uczenia się Sposób weryfikacji efektu uczenia się Forma zajęć na której zachodzi weryfikacja
EU1 zaliczenie pisemne W
EU2 ocena projektu Ps
EU3 ocena projektu Ps
EU4 ocena projektu Ps
Bilans nakładu pracy studenta (w godzinach) Liczba godz.
Wyliczenie
1 - Udział w wykładach 16
2 - Udział w pracowni specjalistycznej 40
3 - Wykonanie zadań domowych oraz przygotowywanie sprawozdań 20
4 - Realizacja zadań projektowych (w tym przygotowanie prezentacji) 35
5 - Udział w konsultacjach 4
6 - Przygotowanie do zaliczenia 10
RAZEM: 125
Wskaźniki ilościowe GODZINY ECTS
Nakład pracy studenta związany z zajęciami wymagającymi bezpośredniego udziału nauczyciela 60
(1)+(2)+(5)
2.4
Nakład pracy studenta związany z zajęciami o charakterze praktycznym 95
(2)+(3)+(4)
3.8
Literatura podstawowa

1. J. S. Coleman, Introducing speech and language processing. Cambridge university press, 2005
2. S. Bird, E. Klein, E. Loper, Natural language processing with Python: analyzing text with the natural language toolkit. O'Reilly Media, Inc., 2009
3. J. Thanaki, Python natural language processing. Packt Publishing Ltd., 2017

Literatura uzupełniająca

1. D. Rothman, Transformers for Natural Language Processing: Build innovative deep neural network architectures for NLP with Python, PyTorch, TensorFlow, BERT, RoBERTa, and more. Packt Publishing Ltd., 2021
2. Ravichandiran, S., Getting Started with Google BERT: Build and train state-of-the-art natural language processing models using BERT. Packt Publishing Ltd., 2021
3. D. Altinok, Mastering spaCy: An end-to-end practical guide to implementing NLP applications using the Python ecosystem. Packt Publishing Ltd., 2021

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