https://github.com/neelsoumya/python_machine_learning
Teaching resources for teaching machine learning in Python
https://github.com/neelsoumya/python_machine_learning
artificial-intelligence data-science machine-learning python teaching-materials unsupervised-learning
Last synced: about 2 months ago
JSON representation
Teaching resources for teaching machine learning in Python
- Host: GitHub
- URL: https://github.com/neelsoumya/python_machine_learning
- Owner: neelsoumya
- License: gpl-3.0
- Created: 2025-04-01T12:41:56.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2026-02-08T17:57:29.000Z (5 months ago)
- Last Synced: 2026-02-08T23:41:38.527Z (5 months ago)
- Topics: artificial-intelligence, data-science, machine-learning, python, teaching-materials, unsupervised-learning
- Language: Jupyter Notebook
- Homepage: https://neelsoumya.github.io/python_machine_learning/
- Size: 39.5 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# python_machine_learning
---
## 🧠 Introduction
Resources for teaching machine learning in Python.
---
## 📋 Table of Contents
- [Introduction](#-introduction)
- [Installation](#-installation)
- [Files & Resources](#-files--resources)
- [Unsupervised Learning](#unsupervised-learning)
- [Python Basics](#python-basics)
- [Supervised Machine Learning Notebooks](#supervised-machine-learning-notebooks)
- [Data & Utilities](#data--utilities)
- [Contact](#Contact)
---
## 💾 Installation
[Installation instructions](https://github.com/neelsoumya/python_machine_learning/blob/main/installation.md)
```bash
pip install -r requirements.txt
```
### 🧠 Python Machine Learning Teaching Resource
Repository: [https://github.com/neelsoumya/python_machine_learning](https://github.com/neelsoumya/python_machine_learning)
---
### 📦 Installation Instructions (for Google Colab)
### 1. Clone the repository (optional, for full access)
```python
!git clone https://github.com/neelsoumya/python_machine_learning.git
%cd python_machine_learning
```
### 2. Install required Python packages
```python
!pip install -r requirements.txt
```
or
```python
!pip install numpy pandas keras tensorflow scikit-learn seaborn matplotlib
```
### 3. (Optional) Download specific files directly from GitHub
```python
# Example: Download a specific notebook
!wget https://raw.githubusercontent.com/neelsoumya/python_machine_learning/main/PCA_movie_ratings.ipynb
```
---
**How to use in Colab:**
- Open a new notebook in Google Colab (https://colab.research.google.com/).
- Run the above commands in code cells.
- You can now open and run any of the notebooks or scripts from the repository.
- [google Colab Notebook template](https://github.com/neelsoumya/python_machine_learning/blob/main/teaching.ipynb)
- Open a new notebook in [Google Colab](https://colab.research.google.com/)
- If you want to run the notebooks in Colab, you can also use the _Open in Colab_ badge below:
[](https://colab.research.google.com)
- Run the commands in code cells.
- You can now create notebooks and run any of the scripts in Google Colab.
**Repository link:**
[https://github.com/neelsoumya/python_machine_learning](https://github.com/neelsoumya/python_machine_learning)
---
## 📁 Files & Resources
### Python Basics
- [Free coursera course on Python basics](https://www.coursera.org/learn/python?specialization=python)
- [Introduction to Python Cambridge Bioinformatics Training Center](https://cambiotraining.github.io/data-analysis-in-r-and-python/)
- [Quick refresher on Python](https://github.com/neelsoumya/python_machine_learning/blob/main/refresher_python.ipynb)
- [Data visualization in R](https://cambiotraining.github.io/dataviz-figdesign/index.html)
- [calling_functions.py](https://github.com/neelsoumya/python_machine_learning/blob/main/calling_functions.py): How to call and create functions in Python
- [dictionary.py](https://github.com/neelsoumya/python_machine_learning/blob/main/dictionary.py): Dictionaries in Python
- [classses_objects.ipynb](https://github.com/neelsoumya/python_machine_learning/blob/main/classses_objects.ipynb): Classes and objects in Python
- 📓 [Relative path in Python and loading files](https://github.com/neelsoumya/python_machine_learning/blob/main/pandas_read_csv_paths.md)
- [Coding interviews](https://coderbyte.com/challenges#)
### Unsupervised Learning
- [comprehensive course on unsupervised machine learning](https://cambiotraining.github.io/ml-unsupervised/)
- [unsupervised.md](https://github.com/neelsoumya/python_machine_learning/blob/main/unsupervised.md): Resources for teaching unsupervised machine learning
- [singlcecell_unsupervised.ipynb](https://github.com/neelsoumya/python_machine_learning/blob/main/singlcecell_unsupervised.ipynb): Unsupervised ML on single-cell biological data
- [EHR_data_unsupervised_learning.ipynb](https://github.com/neelsoumya/python_machine_learning/blob/main/EHR_data_unsupervised_learning.ipynb): Unsupervised ML on EHR data
- [pca_when_not_to_do.ipynb](https://github.com/neelsoumya/python_machine_learning/blob/main/pca_when_not_to_do.ipynb): When *not* to apply PCA and how to apply tSNE
- [PCA_movie_ratings.ipynb](https://github.com/neelsoumya/python_machine_learning/blob/main/PCA_movie_ratings.ipynb): PCA and tSNE on movie ratings data
- [normalising_data.ipynb](https://github.com/neelsoumya/python_machine_learning/blob/main/normalising_data.ipynb): Normalizing data
- [pca_notes.ipynb](https://github.com/neelsoumya/python_machine_learning/blob/main/pca_notes.ipynb): PCA teaching notes
- [pca_notes.md](https://github.com/neelsoumya/python_machine_learning/blob/main/pca_notes.md): PCA teaching notes (markdown)
### Supervised Machine Learning Notebooks
- [supervised.md](https://github.com/neelsoumya/python_machine_learning/blob/main/supervised.md): Resources for teaching supervised machine learning
- [Teaching CNNs and neural networks](https://github.com/neelsoumya/teaching_neural_networks)
- [teaching material for Part 2 BBS Students basics](https://github.com/neelsoumya/public_supervised_machine_learning)
- [hiring_problem_practice.py](https://github.com/neelsoumya/python_machine_learning/blob/main/hiring_problem_practice.py): Simulating the hiring problem
- [game_of_life.ipynb](https://github.com/neelsoumya/python_machine_learning/blob/main/game_of_life.ipynb): Game of Life in Python
- [puzzle_number_problem.py](https://github.com/neelsoumya/python_machine_learning/blob/main/puzzle_number_problem.py): Solving a puzzle from H. Dudeney's Canterbury's Puzzles
- [data_munging_plotting.py](https://github.com/neelsoumya/python_machine_learning/blob/main/data_munging_plotting.py): Data munging and plotting
- [gradient_descent.py](https://github.com/neelsoumya/python_machine_learning/blob/main/gradient_descent.py): Gradient descent explanation
- [gradient descent interactive demo](https://github.com/neelsoumya/python_machine_learning/blob/main/gradient_descent_demo.py)
- [backprop.py](https://github.com/neelsoumya/python_machine_learning/blob/main/backprop.py): Backpropagation explanation
### Large-language models (LLMs)
- [Introduction to LLMs](https://github.com/neelsoumya/intro_to_LMMs)
### PyTorch fundamentals
- [PyTorch fundamentals](https://www.coursera.org/learn/pytorch-fundamentals)
- [PyTorch teaching simple code](https://github.com/neelsoumya/teaching_intro_pytorch)
### Basic Statistics
- [Introduction to statistics](https://github.com/neelsoumya/basic_statistics)
- [Core statistics](https://cambiotraining.github.io/corestats/)
### Capstone projects
- [Ideas](https://github.com/complexsystemslab/project_ideas/blob/main/project_ideas.md)
- [Projects with some code](https://github.com/neelsoumya/llm_projects)
- [Project ideas](https://github.com/neelsoumya/llm_projects/issues)
### Open source projects
- [Open source projects](https://github.com/neelsoumya/public_open_source_data_science)
### Big data analytics
- [Course on big data analytics](https://github.com/neelsoumya/teaching_big_data_analytics)
### Continous integration and pre-commit checks
- [Precommit checks in Python](https://github.com/neelsoumya/coding-test)
### Git and UNIX fundamentals
Forthcoming
### Data & Utilities
- `data/`: Folder containing data files
- `slides/`: Folder containing slides
---
### Other resources
* https://github.com/intro-stat-learning/ISLP_labs/tree/stable
* https://www.statlearning.com/resources-python
* https://www.statlearning.com/
* https://www.youtube.com/playlist?list=PLoROMvodv4rNHU1-iPeDRH-J0cL-CrIda
* [Video lectures by the authors of the book Introduction to Statistical Learning in Python](https://www.youtube.com/playlist?list=PLoROMvodv4rNHU1-iPeDRH-J0cL-CrIda)
* https://github.com/neelsoumya/public_supervised_machine_learning
* https://github.com/neelsoumya/public_teaching_unsupervised_learning
## Acknowledgements
We thank Martin van Rongen, Vicki Hodgson, Hugo Tavares, Paul Fannon, Matt Castle and the Bioinformatics Facility Training Team for their support and guidance.
## 📬 Contact
**Soumya Banerjee**
sb2333@cam.ac.uk