Introduction to Natural Language Processing 2025
- Overview Slide: https://docs.google.com/presentation/d/1Rwm3iHAiZ0PRXZG98TNOsU9FirfGHDoLIhnJO-gRwQQ/
- Initial Survey: https://docs.google.com/forms/d/e/1FAIpQLSfntsQm3XxyNgioY3AKq8zMAcQJHOBbI_-u8rM7JF8O0vD8jg/viewform?usp=dialog
- Instructor: Hrishikesh Terdalkar
- Contact: hrishikesh.terdalkar@univ-lyon1.fr
- Ensure that you start the subject of any course related correspondence with the text: [INF2499M] in order to avoid reaching spam.
Goals
- Understanding Core NLP Concepts: Equip students with a solid foundation in Natural Language Processing, including classical and deep learning approaches.
- Hands-On Experience: Provide practical experience in developing NLP applications using modern libraries like NLTK, spaCy, and Hugging Face.
- Exposure to Cutting-Edge Techniques: Introduce students to advanced concepts like Transformers, BERT, and Large Language Models (LLMs).
- Project-Based Learning: Foster creativity and application of NLP techniques in real-world scenarios through a capstone project.
- Ethical Considerations: Encourage critical thinking about ethical implications, biases, and fairness in NLP models.
Learning Outcomes
By the end of this course, students will be able to:
- Understand the basic concepts of NLP, including text preprocessing, tokenization, and word embeddings.
- Implement traditional and deep learning techniques for NLP tasks such as text classification, sentiment analysis, and language modeling.
- Explain and use pre-trained language models like Word2Vec, BERT, and GPT, and apply them to NLP tasks.
- Fine-tune Large Language Models (LLMs) for specific applications like text generation and summarization.
- Work on a team-based project, using datasets to develop a fully functional NLP system, and present the findings.
Readings and Textbooks
- Speech and Language Processing. Daniel Jurafsky and James H. Martin. https://web.stanford.edu/~jurafsky/slp3/ed3book.pdf.
- Documentation of standard python libraries.
- Research articles shared during class.
- Research papers from journals and conferences.
Prerequisites
- Proficiency in Python programming language (or the willingness to pick it up during the course).
- Familiarity with basic ML Algorithms (e.g. Logistic Regression, SVM).
- Basic Understanding of Linear Algebra and Probability (Helpful).
- Enseignant: HRISHIKESH RAJESH TERDALKAR