This course introduces students to core and advanced techniques in Natural Language Processing (NLP), with a strong emphasis on practical application across different domains. Students learn to process both written and spoken language using real-world data. Key tasks include emotion classification, speech-to-text transcription, machine translation, semantic representation, and feature extraction.
Students gain hands-on experience with both traditional models (e.g., Logistic Regression, Naive Bayes) and deep learning architectures (e.g., LSTM, RNN, Transformers). They apply widely-used NLP libraries and frameworks such as HuggingFace Transformers, SpaCy, NLTK, and Gensim. Feature engineering techniques include POS tagging, TF-IDF, sentiment scoring, and embedding-based representations. The course also covers model evaluation using F1-score, Word Error Rate (WER), and error analysis, as well as explainability methods like Gradient × Input and Layer-wise Relevance Propagation (LRP). Students explore prompt engineering strategies to fine-tune large language models for downstream tasks, and complete the course by designing end-to-end NLP pipelines.
Natural Language Processing with Python by S. Bird, E. Klein, E. Loper