BİL471

Natural Language Processing

Faculty \ Department
School of Engineering \ Computer Engineering
Course Credit
ECTS Credit
Course Type
Instructional Language
3
6
Elective
Turkish
Prerequisites
BİL470 or YAP470
Programs that can take the course
Computer Engineering
Artificial Intelligence Engineering
Course Description
This course introduces the fundamental concepts and techniques in Natural Language Processing (NLP) with a focus on both classical statistical approaches and modern deep learning methods. Students will explore methods for analyzing and processing text data through practical assignments or projects. Topics include text normalization, language modeling, text classification, syntactic/dependency parsing, and advanced neural methods, bridging theory with real-world applications.
Textbook and / or References
Daniel Jurafsky and James H. Martin, Speech and Language Processing, Third Edition, Prentice Hall, 2018
Christopher D. Manning and Hinrich Schütze, Foundations of Statistical Natural Language Processing
Kemal Oflazer and Murat Saraçlar, Turkish Natural Language Processing
Course Objectives
The objective of this course is to equip students with a comprehensive understanding of both rule-based and statistical methods used in processing natural language data. By the end of the course, students will be able to design and implement effective NLP algorithms for tasks such as text normalization, classification, parsing and text generation.
Course Outcomes
1. Understand core NLP concepts and history.
2. Apply text processing with regular expressions, normalization, and edit distance.
3. Understand and build n-gram language models
4. Classify text using Naive Bayes and logistic regression
5. Understand and use vector semantics
6. Understand and perform part-of-speech tagging.
7. Analyze sentence structure with syntactic and dependency parsing.
8. Utilize deep neural and advanced NLP techniques.
Tentative Course Plan
Week 1: Introduction/Overview of NLP
Week 2: Regular Expressions, Text Normalization, Edit Distance
Week 3: N-gram Language Models, Spelling Correction
Week 4: Text Classification: Naive Bayes and Logistic Regression
Week 5: Vector Semantics
Week 6: Part-of-Speech Tagging
Week 7: Context-Free Grammars and Syntactic Parsing
Week 8: Statistical Parsing
Week 9: Dependency Parsing
Week 10: Deep Neural Methods in NLP
Week 11: Deep Neural Methods in NLP
Week 12: Advanced NLP Methods
Tentative Assesment Methods
Activities Number Weight (%)
Course Attendance/Participation - -
Laboratory - -
Application - -
Homework 1 10%
Project 1 40%
Presentation - -
Field Work - -
Internship - -
Course Boards - -
Quiz - -
Midterm Exam 1 20%
Final Exam 1 30%
Total 100%

Tentative ECTS-Workload Table
Activities Number/Weeks Duration (Hours) Workload
Course Hours (first 6 weeks) 6 4 24
Course Hours (last 6 weeks) 6 3 18
Laboratory - - -
Application - - -
Homework 1 20 20
Project 1 40 40
Presentation - - -
Field Work - - -
Internship - - -
Course Boards - - -
Preparation for Quiz - - -
Preparation for Midterm Exam 1 20 20
Final Exam 1 2 2
Preparation for Final Exam 1 30 30
Study Hours Out of Class (preliminary work, reinforcement, etc.) 12 2 24
Total Workload 178
Total Workload / 30 178 / 30
5.933333
ECTS Credits of the Course 6
Program Outcome **
1 2 3 4 5 6 7 8 9 10 11
Course Outcome
1 C
2 C A, B
3 C B, A A
4 C A, B A
5 C A, B A
6 C A, B A
7 C A, B A
8 C A, B A