ml-graph-learning-handbook is a structured collection of Markdown notes for learning classical Machine Learning, deep learning foundations, and Graph Machine Learning.
The repository includes a browser-based reader in index.html. It renders the notes as a searchable book with collapsible sections, base and expanded views, equations, Mermaid diagrams, and light/dark mode.
- Book-style Markdown reader
- Collapsible
Overview,ML, andGraph MLsections - Expanded notes selected by default
- Base, expanded, and all-note views
- Searchable chapter sidebar
- Previous and next chapter navigation
- Table of contents generated from headings
- MathJax rendering for equations
- Mermaid rendering for diagrams
- Light and dark mode
- Plain HTML, CSS, and JavaScript
- No install step or build step required
From the repository root, start a local static server:
python3 -m http.server 8000Open the reader:
http://localhost:8000/index.html
Opening index.html directly from the filesystem may block Markdown loading in some browsers, so a static server is recommended.
.
|-- index.html
|-- README.md
|-- LICENSE
|-- ML Notes.md
|-- ml/
| |-- 001-feature-scaling-normalization-standardization/
| |-- 002-data-preprocessing-tools/
| `-- ...
|-- graph-ml/
| |-- 001-graph-neural-networks/
| |-- 002-node-edge-graph-level-features-predictions/
| `-- ...
`-- scripts/
Each topic folder follows this pattern:
<topic>.md
<topic>-expanded.md
The base note is concise. The expanded note is more detailed and may include equations, diagrams, examples, and implementation notes.
- Data preprocessing
- Feature scaling
- Regression
- Classification
- Decision trees
- Random forests
- Support vector machines
- Naive Bayes
- Clustering
- Dimensionality reduction
- Model evaluation
- Ensemble learning
- Reinforcement learning
- Natural language processing
- Neural networks
- Convolutional neural networks
- Transformers
- Graph neural networks
- Node, edge, and graph-level prediction
- Node embeddings
- PageRank and random walks
- Message passing
- GNN expressiveness
- Heterogeneous graphs
- Knowledge graph reasoning
- Neural subgraph matching
- Community detection
- Graph generative models
- GNN limitations
- Scaling GNNs
- Graph pretraining
Use numbered, lowercase, hyphen-separated folders.
For ML notes:
ml/038-new-topic/038-new-topic.md
ml/038-new-topic/038-new-topic-expanded.md
For Graph ML notes:
graph-ml/019-new-graph-topic/019-new-graph-topic.md
graph-ml/019-new-graph-topic/019-new-graph-topic-expanded.md
Recommended note structure:
# Topic Name
Short explanation.
## Intuition
## Mathematical View
## Example
## Common Pitfalls
## SummaryUse fenced Mermaid blocks for diagrams:
```mermaid
flowchart LR
A[Data] --> B[Model]
B --> C[Prediction]
```Use display math for important equations:
$$
\hat{R}_{\mathrm{test}}(\hat{f}) =
\frac{1}{m}\sum_{i=1}^{m}\ell(y_i^{\mathrm{test}}, \hat{f}(x_i^{\mathrm{test}}))
$$Contributions are welcome. Useful contributions include:
- Fixing typos
- Improving explanations
- Adding examples
- Adding diagrams
- Adding equations
- Improving topic coverage
- Improving the static reader
Suggested workflow:
- Fork the repository.
- Create a branch.
- Make focused changes.
- Preview the reader locally.
- Open a pull request with a clear description.
Please follow the existing note naming style.
This project is licensed under the MIT License.