Skip to content
BiliMind
Roadmap

How to learn machine learning

This path assumes you can write a Python loop and remember high school algebra. It builds the linear algebra, probability, and optimisation that make model training and error analysis legible. In 180-210 hours over about 30 weeks, you reach working competence: you can train, evaluate, and debug standard models on real data, not just call a library.

Hours

180-210 hours

Calendar

about 30 weeks at 6-7 hours a week

Stages

6

Start from

You need high school algebra and enough Python to read a 20-line script. You do not need a statistics degree or a prior calculus course; those are what this path builds, not what it expects.

Why the usual order fails

Most machine learning roadmaps start with tools: fit a model in scikit-learn, plot a curve, move on. That order produces people who can call a library but cannot say why the model worked or where it failed. The missing piece is mathematics, not as a gate but as a diagnostic language. Linear algebra describes how data flows through a model; probability describes what the model claims about unseen data; optimisation explains how training finds parameters. Skip these and every later result becomes a black box: accuracy numbers change, loss curves move, and you cannot tell signal from bug.

This path reverses the usual order. Week one is vectors and matrices by hand: you see why a data row is a point and a model is a transformation. Most plans start with a pre-cleaned dataset and a classifier call; here you write out the dimensions of a normal equation. That early friction is deliberate. It makes every later step—gradient descent, cross-entropy, the bias-variance split—readable as the same operations on the same objects. You spend more up front, less later wondering what went wrong.

The path, in the order it has to be walked.

Each stage assumes the one above it and nothing below it. The check at the foot of each is the point — you are meant to fail it, go back, and try again before moving on.

  1. Linear algebra for data and models

    weeks 1-4

    Build the computational vocabulary every model uses. You work with vectors, matrices, and linear systems before touching a dataset, because the normal equation and principal components only make sense when you can see dimensions. This sits first because later stages reference these objects constantly.

    • vectors and vector spaces
    • matrix multiplication
    • dot products and norms
    • linear independence and rank
    • matrix inverse and pseudo-inverse
    • eigendecomposition
    • singular value decomposition

    You can now: Given a small feature matrix, compute by hand the model weights that minimise squared error using the normal equation.

  2. Probability and estimation

    weeks 5-8

    Estimation language comes before model training because a model's output is a probability claim. You learn maximum likelihood, Bayes, and the Gaussian thoroughly enough to derive simple estimators by hand. This stage makes cross-entropy and evaluation metrics in later stages legible.

    • random variables
    • expectation and variance
    • conditional probability
    • Bayes' rule
    • maximum likelihood estimation
    • Gaussian distribution
    • sampling distribution of the mean

    You can now: Derive the maximum likelihood estimate for the mean of a Gaussian from five sample values and state its variance.

  3. Optimisation for model training

    weeks 9-13

    Optimisation turns a mathematical model into something you can fit. Here you derive gradients for squared error and logistic loss, then implement gradient descent from scratch. Sitting after probability means you understand what is being minimised; sitting before models means every training run is interpretable.

    • mean squared error
    • cross-entropy loss
    • gradient descent
    • learning rate and step size
    • stochastic gradient descent
    • convexity and local minima
    • momentum
    • mini-batch training

    You can now: Compute the gradient of mean squared error with respect to weights by hand for a linear model with three features, then implement one gradient descent step in Python.

  4. Core supervised models

    weeks 14-19

    Now you apply the previous maths to benchmark models. You learn each model's assumption, loss function, and failure mode, not just its API. This stage sits after optimisation because you can already see how each model is trained; it sits before evaluation because models must be understood separately from metrics.

    • linear regression
    • logistic regression
    • k-nearest neighbours
    • decision trees
    • naive Bayes
    • support vector machines
    • random forests
    • gradient boosting

    You can now: Train and evaluate each of five models on a held-out dataset, then explain which one should generalise best for a given data shape.

  5. Evaluation, regularisation, and debugging

    weeks 20-24

    Evaluation and regularisation are where most practitioners fail, so this stage isolates them. You learn to split data without leakage, estimate generalisation with cross-validation, and control capacity with L1/L2. Placing this after core models means you already have working models to break and fix.

    • train/test split
    • k-fold cross-validation
    • bias-variance trade-off
    • overfitting and underfitting
    • L1 and L2 regularisation
    • data leakage detection
    • precision, recall, ROC AUC
    • class imbalance correction

    You can now: Find a deliberately introduced data leakage in a preprocessing pipeline and show how the reported accuracy changes after removal.

  6. Unsupervised learning and end-to-end modelling

    weeks 25-30

    Unsupervised methods and end-to-end pipelines connect the individual pieces. You reduce dimensions, cluster, and build a full preprocessing-to-prediction pipeline. This stage is last because unsupervised techniques rely on the linear algebra and probability from stages one and two, plus your debugging instincts from stage five.

    • k-means clustering
    • principal component analysis
    • singular value decomposition
    • t-SNE for visualisation
    • feature scaling and imputation
    • end-to-end modelling pipelines
    • model interpretation with SHAP
    • ablation testing

    You can now: Build a pipeline from raw CSV to trained classifier, including scaling, imputation, and a PCA step, and justify each component with a before/after metric.

The hours are fixed. The calendar is yours.

The same path at three speeds, and what actually goes wrong at each.

3 hours a week

At 3 hours a week this takes 60-70 weeks. That is long enough that early maths fluency fades before later models need it. You will redo stage one twice. Each break costs 20 minutes of re-reading. The path breaks: you finish with shaky retention.

8 hours a week

At 8 hours a week this takes 23-26 weeks. Enough contact that maths compounds, enough room to run experiments. You can fail a model, debug it, and sleep. Risk: skipping written exercises in weeks 9-13, because coding demos feel like progress but skip gradient intuition.

20 hours a week

At 20 hours a week this takes 9-11 weeks. That pace works only with strong study habits and no commitments. Risk: burnout around week 20 from repetitive evaluation. You finish fastest, but may skip slow written derivations that make stage six pay off.

What goes wrong

Four ways people lose a year on this.

Each of these is appealing for a real reason, which is why they are common. What they cost is the part nobody mentions.

  • Learning a framework before the maths

    People start with scikit-learn or TensorFlow because tutorials make model.fit() feel like progress. They can build a classifier in an afternoon, but cannot explain why accuracy is 0.82 on the test set or why the loss curve plateaued. When the model fails on real data, they have no diagnostic vocabulary. The framework call hides exactly the linear algebra and probability that would tell them what to change.

  • Skipping probability until you need it for metrics

    Many learners treat probability as a side topic and jump straight to cross-validation or ROC curves. They compute an AUC without knowing what a confidence interval is, or why class priors shift precision. This leaves them reading evaluation numbers as facts rather than estimates. A model that is 0.85 accurate on 40 test examples has huge uncertainty, but they report it as a stable score.

  • Collecting data before defining the prediction task

    Beginners gather a CSV, clean it, and only then ask what they want to predict. This order guarantees leakage: information from the future can sneak into training, or the target leaks into features. The fix is to write the prediction problem in one sentence before touching the data. Doing it backwards costs days of debugging and yields a model whose test score is fiction.

  • Tuning hyperparameters on the test set

    It is tempting to tweak a model, run it on the test set, and repeat until the number goes up. Each peek leaks information about the test labels into your decisions. The final reported accuracy looks good but measures your tuning, not generalisation. A held-out validation set or cross-validation is required; without it, you have no estimate of unseen performance.

How to know it worked.

Not a syllabus you tick off — six things to attempt. If one of them is still hard, the stage it belongs to is the one to go back to.

  1. Write out the matrix dimensions for a linear regression normal equation on a 100x5 dataset.
  2. Compute by hand the maximum likelihood estimate of a Gaussian mean from five numbers.
  3. Derive the gradient of squared error loss with respect to weights for a linear model.
  4. Explain why k-nearest neighbours with k=1 has zero training error but high variance.
  5. Spot the data leakage in a pipeline that scales the whole dataset before splitting.
  6. Debug a logistic regression that reaches 0.90 accuracy but ROC AUC 0.50 on a held-out set.
Questions

Questions about learning machine learning.

The five we hear most. The intro film answers most of them in a minute and a half.

how long does it take to learn machine learning

Working competence takes 180-210 hours over about 30 weeks at 6-7 hours a week. That is enough to train, evaluate, and debug standard models on real data, but not enough for research or deep specialisation. If you already know probability and linear algebra, the total drops to roughly 120-150 hours; if you skip maths and only learn libraries, you will take longer and understand less.

do I need a maths degree for machine learning

No. You need high school algebra and enough probability to interpret a model's output, but the path builds both. The belief that you must finish calculus, linear algebra, and statistics first is common but wrong; a maths degree slows you down without guaranteeing you can debug a model. What matters is deriving the small number of results this path covers, not formal proof.

is machine learning just statistics

They overlap heavily, but machine learning optimises for prediction while statistics traditionally focuses on inference and uncertainty. A statistician asks whether a coefficient is zero; a machine learner asks how well the model predicts unseen examples. In practice, the same mathematics—probability, estimation, optimisation—is used differently. You need both mindsets to evaluate a model honestly.

can I learn machine learning without coding

No. You need to write Python to load data, run experiments, and inspect what a model learns. The maths is necessary for interpretation, but it cannot train a model by itself. If coding feels like a barrier, spend a week on Python loops, functions, and pandas before starting this path. Without that, the first model training session will stop dead.

should I learn deep learning before classical machine learning

No, unless your only goal is image or text generation. Classical models—linear regression, logistic regression, trees—use the same optimisation and evaluation ideas with fewer moving parts, so you can see them fail and fix them. Deep learning hides those failures behind many layers. Skipping to neural networks first makes every later concept harder to debug.

A path is not a course.

This is the shape of machine learning, not the teaching of it. Hand the same path to BiliMind and it writes the lessons onto it — in the form each one calls for, with practice that gets marked and a schedule that bends when your week does. Mapping a course is free and unlimited.

This roadmap was drafted on 18 September 2026 by the same engine that builds BiliMind courses, and reviewed before publishing. Hours are honest estimates for working competence, not for a demo — treat them as a starting point and adjust them against your own first fortnight.

The intro · 1:25