Teaching resources

Tutorials

Public tutorials and practical references for programming, NLP, applied machine learning, and research computing.

All Tutorials

29 standalone lessons, technical references, and course-adjacent guides.

Installing Docker on Ubuntu

This tutorial provides instructions for installing Docker on Ubuntu. While the steps outlined here may work for other versions of Ubuntu (and some non-Ubuntu Linux distributions), these instructions were tested against Ubuntu 24.04 LTS.

Installing VS Code on Ubuntu

This tutorial provides instructions for installing Visual Studio Code on Ubuntu. While the steps outlined here may work for other versions of Ubuntu (and some non-Ubuntu Linux distributions), these instructions were tested against Ubuntu 24.04 LTS.

Introduction to scikit-learn

In this tutorial, we're going to step through training a naïve Bayes classifier with n-gram features using a popular machine learning library in Python called scikit-learn. This library provides implementations and an easy-to-use interface for many supervised and...

N-grams

In this lesson, we'll learn about n-grams and see how they can be used as general features to represent words and documents.

Probability basics

Ambiguity and uncertainty abound in natural language. In this lesson, we'll learn the basics of probability which will help us to quantify that uncertainty.

Tokenizing using regex

In earlier lessons, we introduced the idea of tokens and discussed some of their attributes. We devised some informal descriptions of the clues that signal token boundaries (ex. whitespace, contractions, etc.). In this lesson, we'll how to use regexes to tokenize...