Computational Linguistics

Department of Linguistics | College of Arts & Sciences


IU Computational Linguistics offers a wide range of courses covering both theoretical foundations and practical applications in computational approaches to language. For complete graduate course offerings by the Department of Linguistics, see the official course catalog. Below, you'll find information about recently offered courses.

Course History

Spring 2026

LING-L 245

Language and Computers

Instructor: Luke Gessler

Computer systems that process human language have become ubiquitous in modern life. This course surveys modern language technologies, which may include writing systems, writing assistants, language learning assistants, text classifiers, search engines, machine translation systems, and large language models such as ChatGPT. For the technologies covered, we explore how they function, emphasizing insights from linguistics, and discuss the ethical and social consequences of their use. No technical background is assumed.

LING-L 445 / LING-L 545

The Computer and Natural Language / Computation and Linguistic Analysis

Instructor: Sandra Kuebler

This course provides an introduction to natural language processing and computational linguistics. It is concerned with concepts, models, and algorithms to analyze and generate natural languages automatically. It will also look at NLP applications. We will look at sentiment analysis, and how to model information that is required for a machine learning approach. Thus, we will discuss different levels of linguistic analysis: morphology, morpho-syntax, syntax, and lexical semantics. In that process, we will move from simple representations of language, such as finite-state techniques and n-gram analysis, to more advanced representations, including word embeddings.

LING-L 565

Fundamentals of Speech Processing

Instructor: Shuju Shi

An introduction to acoustic signal processing, focusing on the representation and analysis of continuous and discrete-time speech signals. Topics include phasors, sampling, FIR filters, the discrete-time Fourier transform, spectrum, and spectrogram analysis.

LING-L 605

Advanced Data Modeling for Computational Linguistics

Instructor: Luke Gessler

In this course, students will develop their practical programming skills in Python while gaining familiarity with algorithms and data structures that are foundational for computational linguistics. Topics covered include linked lists, queues and stacks, tree-based data structures, tree-based algorithms, sorting algorithms, graphs, and search algorithms.

LING-L 675

Advanced Machine Learning for Computational Linguistics

Instructor: Damir Cavar

Advanced Machine Learning for CL focuses on new methods in CL based on Generative AI, Graph representations and Knowledge Graphs for semantic modeling, and Graph Neural networks. The topics discussed include also tuning of Large Language Models and LLMs with RAGs.

LING-L 715

Seminar in Computational Linguistics

Instructor: Shuju Shi

This course investigates the acoustic, phonetic, and statistical analysis of atypical speech, with a focus on accented and dysarthric speech. We will explore how speech variability affects intelligibility, survey corpora and annotation practices, and review modeling approaches ranging from traditional acoustic analysis to modern neural architectures. Students will lead discussions, analyze real datasets, and complete a final project that develops a computational model or empirical study of atypical speech.

Fall 2025

LING-L 235 / LING-L 555

Foundational Skills in Computational Linguistics / Programming for Computational Linguistics

Instructor: Luke Gessler

This course is geared towards students in Computational Linguistics and Linguistics, with little or no experience in programming. It introduces the fundamentals of programming and computer science, aiming at attaining practical skills for text processing. In contrast to similar courses in Computer Science, we will concentrate on problems in Computational Linguistics, which involve managing text, searching in text, and extracting information from text.

LING-L 245

Language and Computers

Instructor: Sandra Kuebler

Present-day computer systems work with human language. This course surveys issues relating natural language to computers, covers real-world applications, and provides practical experience with natural language on computers. Topics include text encoding, search technology, machine translation, dialogue systems, computer-aided language learning, and the social context of technology.

LING-L 545

Computation and Linguistic Analysis

Instructor: Shuju Shi

This course is a graduate course that provides an introduction to natural language processing and computational linguistics. The course focuses on key concepts, models, and algorithms for the automatic analysis and generation of natural language, with a look at real-world NLP applications.

LING-L 635

Applications of Speech Processing

Instructor: Shuju Shi

This course explores advanced topics and current trends in speech processing, focusing on applications in areas such as speech recognition, synthesis, and speech enhancement. The course will cover both theoretical foundations and practical implementation aspects, including recent advances in machine learning and deep learning as applied to speech processing.

LING-L 645

Advanced Natural Language Processing

Instructor: Damir Cavar

An introduction to statistical models and machine learning paradigms in NLP. Covers basic notions in probability and information theory, focusing on the concepts needed for NLP, including Markov Models. Additional topics may include word sense disambiguation, text categorization, and statistical alignment methods and their use in machine translation.

LING-L 665

Applying Machine Learning Techniques in Computational Linguistics

Instructor: Luke Gessler

An introduction to machine learning (ML) methods for computational linguistics (CL). We begin by covering basic concepts in ML before turning to foundational ML methods in CL. Throughout, students develop practical skills in ML programming in Python, relying on libraries such as NumPy, PyTorch, and scikit-learn. Students will develop an understanding of the mathematical details underlying modern models used in CL, and will have practical skills for creating and using ML models for CL.

LING-L 715

Seminar: Knowledge Graphs, Large Language Models, RAGs, and Graph-based Reasoning

Instructor: Damir Cavar

Indiana University, Linguistics Dept.
Ballantine Hall 518
1020 East Kirkwood Ave
Bloomington, IN 47405
Contact: Luke Gessler