---
name: machine-learning
description: "Machine Learning: 54 concepts, no maths assumed."
version: 1.0.0
author: Learn AI
license: CC-BY-4.0
metadata:
  hermes:
    tags: [Machine, Learning]
    related_skills: [mathematical-foundations]
    source: https://basavapurushottam.com/learn-ai
---
# Machine Learning

54 concepts, written for an adult with no computer science and no mathematics past school arithmetic. Each concept is a file under `references/`; load one when it is the thing being asked about rather than reading the whole domain.


## When to Use

- The reader asks about machine learning and wants it explained from the ground up rather than summarised.

- A term below comes up and you want the plain-language account of it, with a worked example.

- You need to know what a concept rests on before teaching it — every reference lists its prerequisites.


## When NOT to Use

- The reader wants current events, papers or library documentation. This is a curriculum, not a news source, and it does not update itself.

- The reader wants code they can ship. Examples here are written to be understood, not deployed.


## How to Run

Open the file listed beside a concept in Quick Reference below. The files live in the `references` directory, are plain Markdown with no front matter and no dependencies — read the one you want and ignore the rest.


## Quick Reference


### Algorithms and Complexity

- `references/big-o-notation.md` — **Big-O Notation**: Describing how resource use grows with input size, discarding constants and lower-order…
- `references/binary-search.md` — **Binary Search**: Locating an element in a sorted sequence by repeatedly halving the search interval, ach…
- `references/dynamic-programming.md` — **Dynamic Programming**: Solving problems by combining solutions to overlapping subproblems, storing each result…
- `references/loop-invariants.md` — **Loop Invariants**: A condition true before and after every iteration, used to prove a loop does what it cl…
- `references/memoization.md` — **Memoization**: Caching function results by their arguments so repeated calls return immediately, turni…
- `references/merge-sort-and-quicksort.md` — **Merge Sort and Quicksort**: Two divide-and-conquer sorts: merge sort splits evenly and merges, quicksort partitions…
- `references/space-time-tradeoffs.md` — **Space-Time Tradeoffs**: Spending memory to save computation or vice versa — precompute and store, or recompute…

### Causal Inference

- `references/backdoor-adjustment.md` — **Backdoor Adjustment**: A formal criterion identifying which variables to condition on to block confounding pat…
- `references/causal-deconfounding.md` — **Causal Deconfounding**: Removing the influence of common causes so an estimated association reflects a causal e…

### Data Structures

- `references/balanced-trees-and-b-trees.md` — **Balanced Trees and B-Trees**: Search trees that maintain a height invariant so operations stay logarithmic, with B-tr…
- `references/binary-tree-traversal.md` — **Binary Tree Traversal**: Visiting every node in a defined order — pre-order, in-order or post-order — each suite…
- `references/bloom-filters.md` — **Bloom Filters**: A probabilistic set membership structure that can say definitely-not-present or probabl…
- `references/hash-functions.md` — **Hash Functions**: Mapping arbitrary keys to fixed-size indexes, ideally spreading keys uniformly so colli…
- `references/heaps-and-priority-queues.md` — **Heaps and Priority Queues**: A partially ordered tree giving cheap access to the minimum or maximum element, used wh…

### Feature Engineering

- `references/class-imbalance.md` — **Class Imbalance**: When one class vastly outnumbers others, so a model can score well by ignoring the mino…
- `references/feature-selection.md` — **Feature Selection**: Choosing which features to keep — by filtering, wrapping around a model, or embedding t…
- `references/feature-stores.md` — **Feature Stores**: Shared infrastructure computing, storing and serving features consistently for both tra…
- `references/imbalanced-data.md` — **Imbalanced Data**: The general problem of skewed distributions in training data, across classes, slices or…

### Machine Learning Foundations

- `references/churn-prediction.md` — **Churn Prediction**: Estimating which customers will stop using a product, so retention effort can be target…
- `references/crop-disease-detection.md` — **Crop Disease Detection**: Identifying plant disease from leaf and field imagery, a widely studied agricultural co…
- `references/data-mining.md` — **Data Mining**: Discovering patterns in large datasets at the intersection of machine learning, statist…
- `references/decision-jungles.md` — **Decision Jungles**: Decision forests whose trees are directed acyclic graphs rather than trees, letting pat…
- `references/decision-trees.md` — **Decision Trees**: Models that recursively split the feature space on single-feature thresholds, producing…
- `references/gini-and-information-gain.md` — **Gini and Information Gain**: The impurity criteria trees use to choose splits — Gini impurity and entropy-based info…
- `references/k-nearest-neighbours.md` — **K-Nearest Neighbours**: Classifying or predicting by looking at the k closest training examples — a method with…
- `references/linear-regression.md` — **Linear Regression**: Fitting a linear relationship between predictors and a continuous outcome, the foundati…
- `references/logistic-regression.md` — **Logistic Regression**: Modelling the log-odds of a binary outcome as a linear function of predictors, giving c…
- `references/naive-bayes.md` — **Naive Bayes**: A probabilistic classifier applying Bayes' rule under the assumption that features are…
- `references/polynomial-regression.md` — **Polynomial Regression**: Extending linear models with powers of the predictors to fit curvature while remaining…
- `references/random-forests.md` — **Random Forests**: Ensembles of decorrelated decision trees, each trained on a bootstrap sample with a ran…
- `references/rare-event-prediction.md` — **Rare Event Prediction**: Predicting outcomes that occur very infrequently, where extreme class imbalance breaks…
- `references/rule-based-classifiers.md` — **Rule-Based Classifiers**: Classifiers expressed as explicit if-then rules, either handcrafted or induced from data.
- `references/stock-price-prediction.md` — **Stock Price Prediction**: Forecasting price movement from historical and alternative data — the canonical example…
- `references/support-vector-machines.md` — **Support Vector Machines**: Classifiers finding the hyperplane with maximum margin between classes, extended to non…
- `references/titanic-and-iris-case-studies.md` — **Titanic and Iris Case Studies**: The canonical teaching datasets, small and clean enough to make a full modelling workfl…
- `references/two-class-and-multiclass-classifiers.md` — **Two-Class and Multiclass Classifiers**: Binary classification and its extensions to many classes, via one-vs-rest, one-vs-one o…

### Machine Unlearning

- `references/approximate-unlearning.md` — **Approximate Unlearning**: Efficiently reducing a record's influence without full retraining, accepting bounded ra…
- `references/deletion-requests.md` — **Deletion Requests**: The operational process of receiving, validating, executing and evidencing a data remov…
- `references/exact-unlearning.md` — **Exact Unlearning**: Removing a record's influence so completely that the result is indistinguishable from h…
- `references/federated-unlearning.md` — **Federated Unlearning**: Removing a participant's data influence from a federated model, without ever having had…
- `references/right-to-be-forgotten.md` — **Right to Be Forgotten**: The legal right to have personal data erased, which extends to models trained on that d…
- `references/sisa-sharded-training.md` — **SISA Sharded Training**: Sharded, isolated, sliced and aggregated training — partitioning data so each record to…
- `references/utility-preservation.md` — **Utility Preservation**: Keeping a model useful after unlearning — the central tension between forgetting a reco…

### Model Evaluation

- `references/risk-tiers.md` — **Risk Tiers**: Classifying use cases by potential harm, so evaluation depth, oversight and controls sc…
- `references/unlearning-verification.md` — **Unlearning Verification**: Demonstrating that a model has genuinely forgotten specific data rather than merely app…

### Regularization

- `references/ridge-and-lasso-regression.md` — **Ridge and Lasso Regression**: Regularised linear regression: ridge penalises squared coefficients, lasso penalises ab…

### Reinforcement Learning

- `references/alphago-and-mcts.md` — **AlphaGo and MCTS**: Monte Carlo tree search guided by learned policy and value networks — the combination t…
- `references/bellman-equations.md` — **Bellman Equations**: Recursive relations expressing a state's value in terms of immediate reward and the dis…
- `references/q-learning.md` — **Q-Learning**: Learning the value of taking an action in a state by bootstrapping from observed reward…

### Unsupervised Learning

- `references/apriori-frequent-itemsets.md` — **Apriori Frequent Itemsets**: Finding item combinations that co-occur above a support threshold, then deriving associ…
- `references/dbscan-and-optics.md` — **DBSCAN and OPTICS**: Density-based clustering that finds arbitrarily shaped clusters and labels sparse point…
- `references/dimensionality-reduction-and-pca.md` — **Dimensionality Reduction and PCA**: Projecting data onto the directions of greatest variance, compressing many correlated f…
- `references/hierarchical-clustering.md` — **Hierarchical Clustering**: Building a tree of nested clusters by successively merging or splitting, visualised as…
- `references/k-means-clustering.md` — **K-Means Clustering**: Partitioning data into k groups by alternately assigning points to the nearest centroid…


## Pitfalls

- The concepts are ordered by what rests on what, not by difficulty. A later concept is not always harder; it is later because something else has to come first.

- Explanations avoid notation the reader has not met. If you reintroduce standard symbols, say what they mean, or you undo the thing this curriculum is for.


## Verification

`ls references/ | wc -l` should print 54.


---

From [Learn AI](https://basavapurushottam.com/learn-ai). Prose is licensed CC BY 4.0.
