explaingit

ljpzzz/machinelearning

8,708Jupyter NotebookAudience · researcherComplexity · 1/5Setup · easy

TLDR

Runnable Jupyter notebook collection paired with a Chinese machine learning blog, covering classical ML, deep learning, NLP, and reinforcement learning with scikit-learn examples.

Mindmap

mindmap
  root((machinelearning))
    What it does
      Blog companion code
      Learning reference
      Runnable examples
    Topics
      Classical ML
      Deep learning
      NLP
      Reinforcement learning
    Tools
      Python
      scikit-learn
      pandas
      Jupyter
    Audience
      Blog readers
      ML students
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Run worked code examples alongside Chinese blog articles explaining machine learning algorithms from first principles.

USE CASE 2

Study classical ML algorithms such as regression, clustering, and ensemble methods with matching scikit-learn implementations.

USE CASE 3

Explore reinforcement learning implementations including DQN, Actor-Critic, and AlphaGo Zero with runnable Python notebooks.

Tech stack

PythonJupyter Notebookscikit-learnpandas

Getting it running

Difficulty · easy Time to first run · 30min

Older notebooks (2016-2017) use Python 2.7, most have been updated to Python 3.6, but minor differences from the blog text may exist in rewritten sections.

In plain English

This repository is the companion code collection for a popular Chinese-language machine learning blog written by Liu Jianping (known as Pinard) at cnblogs.com/pinard. Each entry in the repository pairs with a blog article and provides a working code example for the concept the article explains. The README is written entirely in Chinese. The collection spans most of the core machine learning curriculum. It includes notebooks on regression, classification, clustering, dimensionality reduction, and ensemble methods. There are also sections on the mathematics behind machine learning (including matrix calculus and Markov Chain Monte Carlo methods), as well as natural language processing, deep learning, recommendation systems, and reinforcement learning topics such as Q-Learning, Deep Q-Networks (DQN), Actor-Critic, and AlphaGo Zero. Most of the code is written as Jupyter Notebooks using Python with scikit-learn and pandas, which are standard tools for data science in Python. Older articles from 2016 to 2017 used Python 2.7, while articles from 2018 onward switched to Python 3.6. A note in the README mentions that some of the older code was rewritten in Python 3.6 to fill gaps, so minor differences may exist between the notebooks and the blog text for those older articles. This is a learning and reference resource, not a deployable product. It is useful for someone reading the accompanying Chinese blog posts and wanting to run the examples, or for anyone who wants worked code illustrations of classical machine learning algorithms alongside mathematical explanations.

Copy-paste prompts

Prompt 1
Open the DQN notebook in this repo and walk me through how the replay buffer and target network are implemented in Python.
Prompt 2
Show me how the clustering notebooks use scikit-learn KMeans and how I can adapt the code to cluster my own dataset.
Prompt 3
Explain how the matrix calculus notebook connects to the backpropagation implementation in the deep learning section.
Prompt 4
How do I update the Python 2.7 notebooks in this repo to run correctly under Python 3.10 without breaking the scikit-learn API calls?
Open on GitHub → Explain another repo

← ljpzzz on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.