ONE COURSE ยท LEARN BY HAND

From your first fitted line to your own NLP transformer.

Start small. Calculate an example yourself. Write the code. Check what it learned. Then connect the next idea.

Who this course is for

You know high-school mathematics and basic Python functions, lists, and loops. You do not need prior object-oriented programming or machine-learning experience. The lessons introduce the class syntax and mathematical ideas when they become useful.

Readiness check: can you explain what f(3) means, index the last item of a list, and follow a loop that adds numbers? If yes, begin with linear regression. If one item is unfamiliar, review only that basic skill and return.

The main path is NLP: word-count baselines, text classifiers, learned embeddings, recurrent models, attention, BERT-family encoders, and transformer language models. CNNs and VAEs are optional side lessons. They broaden your understanding without blocking the NLP path.

A university-style structure, at your own pace

Each unit contains a learning outcome, ordered lessons, hands-on labs, and a practical checkpoint. ELI5 is the plain-language introduction. Detailed notes contain the mathematics, implementation, visual explanations, and worked exercises. Start with the first regression lab; return to its code as the tensor and gradient lessons explain each part.

  1. Understand: read the introduction and watch an optional short video.
  2. Calculate: work through a small numerical or text example by hand.
  3. Implement: run the provided program, then rebuild the important part.
  4. Check: test shapes, compare a baseline, and inspect errors.
  5. Explain: answer the unit checkpoint in your own words.

Eight units can fit a suggested sixteen-week study plan. There are no locked deadlines. Move on when you can explain the checkpoint. Model correctness matters more than completing a fixed number of pages.

Set up your learning environment

python3.12 -m venv .venv-learning
.venv-learning/bin/python -m pip install -r requirements-learning.txt
.venv-learning/bin/python examples/pytorch/00_linear_regression.py
.venv-learning/bin/python -m unittest discover -s tests

Run from the repository root. The model environment is separate from the FastAPI website. The small from-scratch examples run on CPU using local data. Pretrained-model examples may need optional dependencies and model downloads; those requirements are stated separately. A toy-data result is an implementation check, not a claim of real-world NLP performance.

What finishing means

Finishing is evidence, not page completion. For each unit, predict one result by hand, run the program, explain one tensor shape, break one assumption, and repair it. Keep the result and your explanation in short notes.

Your final project must include runnable model code, a documented data split, a simple baseline, correctness tests, free-running generation or task-appropriate evaluation, and a checkpoint that reloads correctly. Explain at least one failed experiment and one limitation. The capstone supplies a concrete rubric and the existing model code as a reference solution.