Natural Language Processing · 14 problems · 5 optional · 2 project ideas
Problem sheet
Beginner
Start with the essentials6 problemsRegular Expressions for Text
regex · pattern-matching · text-cleaning
Tokenize and Normalize
tokenization · normalization · regex
Counting Words with Counter and CountVectorizer
scikit-learn · word-counts · stop-words
Stopwords and Word CountsOptional
stopwords · word-frequency · counter
Character n-grams with CountVectorizer
scikit-learn · character-ngrams · fuzzy-matching
Character n-grams by HandOptional
char-ngrams · subwords · jaccard
Intermediate
Connect the concepts6 problemsBag-of-Words Vectors
bag-of-words · vocabulary · vectorization
Bigram Counts with Sentence MarkersOptional
n-grams · bigrams · language-models
TF-IDF
tf-idf · information-retrieval · weighting
Search with TfidfVectorizer and Cosine Similarity
scikit-learn · tf-idf · information-retrieval
Cosine Similarity RetrievalOptional
cosine-similarity · retrieval · ranking
Levenshtein Edit Distance
edit-distance · dynamic-programming · spelling-correction
Advanced
Stretch your understanding7 problemsRule-Based Suffix StemmerOptional
stemming · porter-stemmer · morphology
Multinomial Naive Bayes Text Classifier
naive-bayes · text-classification · laplace-smoothing
A Text Classification Pipeline
scikit-learn · text-classification · sentiment-analysis
Evaluating Text Classifiers
scikit-learn · evaluation · error-analysis
PPMI Co-occurrence Matrix
co-occurrence · ppmi · distributional-semantics
Word Embedding Analogies
word-embeddings · analogies · cosine-similarity
Word Embeddings in PyTorch
pytorch · embeddings · text-classification
Project ideas
Ungraded briefs to build on your own2 project ideasReview Sentiment Analyser
Project idea · sentiment-analysis · text-classification
Semantic Search for the Club Blog
Project idea · search · embeddings · retrieval