Skip to content

Python code for "Probabilistic Machine learning" book by Kevin Murphy

License

Notifications You must be signed in to change notification settings

sshatanawi/pyprobml

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pyprobml

Python 3 code to reproduce the figures in the book series Probabilistic Machine Learning by Kevin Patrick Murphy. This is work in progress, so expect rough edges. (For the latest status of the code, see Book 1 dashboard and Book 2 dashboard.)

See also probml-utils for some utility code.

Running the notebooks

The notebooks needed to make all the figures are available at the following locations.

Running notebooks in colab

Colab has most of the libraries you will need (e.g., scikit-learn, JAX) pre-installed, and gives you access to a free GPU and TPU. We have a created a colab intro notebook with more details. To run the notebooks on colab in any browser, you can go to a particular notebook on GitHub and change the domain from github.com to githubtocolab.com as suggested here. If you are using Google Chrome browser, you can use "Open in Colab" Chrome extension to do the same with a single click.

Running the notebooks locally

We assume you have already installed JAX and Tensorflow and Torch, since the details on how to do this depend on whether you have a CPU, GPU, etc.

You can use any of the following options to install the other requirements.

  • Option 1
pip install -r https://raw.githubusercontent.com/probml/pyprobml/master/requirements.txt
  • Option 2

Download requirements.txt locally to your path and run

pip install -r requirements.txt

GCP, TPUs, and all that

When you want more power or control than colab gives you, you should get a Google Cloud Platform (GCP) account (or you can use some other cloud provider, like Paperspace) to get a virtual machine with GPUs or TPUs. You can then use this as a virtual desktop which you can access via ssh from inside VScode. We have created a short tutorial on Colab, GCP and TPUs with more information.

How to contribute

See this guide for how to contribute code. Please follow these guidelines to contribute new notebooks to the notebooks directory.

Metrics

Stargazers over time

GSOC

For a summary of some of the contributions to this codebase during Google Summer of Code (GSOC), see these links: 2021 and 2022.

Acknowledgements

I would like to thank the following people for contributing to the code (list autogenerated from this script):

image image image image image image image image image image image image image image image image image image image image image image image image image image image image image image image image image image
Abdelrahman350 alenm10 always-newbie161 AnandShegde andrewnc animesh-007 AnkitaKumariJain14 ashishpapanai Drishttii Duane321 firatoncel Garvit9000c gerdm jdf22 karalleyna karm-patel khanshehjad kzymgch mjsML murphyk nalzok nappaillav Neoanarika Nirzu97 nitish1295 nouranali patel-zeel patrickmineault raymondyeh07 rohit-khoiwal-30 shivaditya-meduri shobro susnato thvasilo

About

Python code for "Probabilistic Machine learning" book by Kevin Murphy

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 99.5%
  • Other 0.5%