https://github.com/amueller/introduction_to_ml_with_python

Notebooks and code for the book "Introduction to Machine Learning with Python"

https://github.com/amueller/introduction_to_ml_with_python

Science Score: 23.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    1 of 16 committers (6.3%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.8%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Notebooks and code for the book "Introduction to Machine Learning with Python"

Basic Info
  • Host: GitHub
  • Owner: amueller
  • Language: Jupyter Notebook
  • Default Branch: main
  • Size: 178 MB
Statistics
  • Stars: 7,822
  • Watchers: 369
  • Forks: 4,655
  • Open Issues: 25
  • Releases: 0
Created about 10 years ago · Last pushed over 2 years ago
Metadata Files
Readme

README.md

Binder

Introduction to Machine Learning with Python

This repository holds the code for the forthcoming book "Introduction to Machine Learning with Python" by Andreas Mueller and Sarah Guido. You can find details about the book on the O'Reilly website.

The book requires the current stable version of scikit-learn, that is 0.20.0. Most of the book can also be used with previous versions of scikit-learn, though you need to adjust the import for everything from the model_selection module, mostly cross_val_score, train_test_split and GridSearchCV.

This repository provides the notebooks from which the book is created, together with the mglearn library of helper functions to create figures and datasets.

For the curious ones, the cover depicts a hellbender.

All datasets are included in the repository, with the exception of the aclImdb dataset, which you can download from the page of Andrew Maas. See the book for details.

If you get ImportError: No module named mglearn you can try to install mglearn into your python environment using the command pip install mglearn in your terminal or !pip install mglearn in Jupyter Notebook.

Errata

Please note that the first print of the book is missing the following line when listing the assumed imports:

python from IPython.display import display Please add this line if you see an error involving display.

The first print of the book used a function called plot_group_kfold. This has been renamed to plot_label_kfold because of a rename in scikit-learn.

Setup

To run the code, you need the packages numpy, scipy, scikit-learn, matplotlib, pandas and pillow. Some of the visualizations of decision trees and neural networks structures also require graphviz. The chapter on text processing also requires nltk and spacy.

The easiest way to set up an environment is by installing Anaconda.

Installing packages with conda:

If you already have a Python environment set up, and you are using the conda package manager, you can get all packages by running

conda install numpy scipy scikit-learn matplotlib pandas pillow graphviz python-graphviz

For the chapter on text processing you also need to install nltk and spacy:

conda install nltk spacy

Installing packages with pip

If you already have a Python environment and are using pip to install packages, you need to run

pip install numpy scipy scikit-learn matplotlib pandas pillow graphviz

You also need to install the graphiz C-library, which is easiest using a package manager. If you are using OS X and homebrew, you can brew install graphviz. If you are on Ubuntu or debian, you can apt-get install graphviz. Installing graphviz on Windows can be tricky and using conda / anaconda is recommended. For the chapter on text processing you also need to install nltk and spacy:

pip install nltk spacy

Downloading English language model

For the text processing chapter, you need to download the English language model for spacy using

python -m spacy download en

Submitting Errata

If you have errata for the (e-)book, please submit them via the O'Reilly Website. You can submit fixes to the code as pull-requests here, but I'd appreciate it if you would also submit them there, as this repository doesn't hold the "master notebooks".

cover

Owner

  • Name: Andreas Mueller
  • Login: amueller
  • Kind: user
  • Location: Los Gatos
  • Company: Microsoft

Scikit-learn core-developer, Principal Research SDE @microsoft

GitHub Events

Total
  • Issues event: 1
  • Watch event: 432
  • Issue comment event: 6
  • Pull request event: 2
  • Fork event: 162
Last Year
  • Issues event: 1
  • Watch event: 432
  • Issue comment event: 6
  • Pull request event: 2
  • Fork event: 162

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 89
  • Total Committers: 16
  • Avg Commits per committer: 5.563
  • Development Distribution Score (DDS): 0.225
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Andreas Mueller t****t@g****m 69
Jan Eglinger j****r@g****m 2
Joaquin Vanschoren j****n@g****m 2
Peace p****e@g****m 2
behreth b****h@g****m 2
Reto Glauser r****o@r****h 2
Hanmin Qin q****5@s****m 1
Huib Keemink h****k@c****m 1
Jorijn Jacko Smit g****b@j****m 1
Justin Mae j****1@g****m 1
Leon Yin h****n@g****m 1
Nathaniel Wroblewski n****i@g****m 1
Tim Head b****m@g****m 1
koyachi r****6@g****m 1
rschiffer r****r@g****m 1
g g****g@g****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 89
  • Total pull requests: 18
  • Average time to close issues: 5 months
  • Average time to close pull requests: 4 months
  • Total issue authors: 77
  • Total pull request authors: 16
  • Average comments per issue: 3.9
  • Average comments per pull request: 2.72
  • Merged pull requests: 7
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 2
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 1
  • Pull request authors: 1
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • yernero (3)
  • qinhanmin2014 (3)
  • blinkeye (3)
  • charles-bu (2)
  • dec1 (2)
  • javed103 (2)
  • konfer (2)
  • yltang52 (2)
  • cclauss (2)
  • shantimohan (1)
  • NeapolitanSuitcase (1)
  • rschiffer (1)
  • dhdistc (1)
  • adinarayanaPalvadi (1)
  • sdempwolf (1)
Pull Request Authors
  • behreth (2)
  • dcompane (2)
  • christian512 (1)
  • charliearky (1)
  • humitos (1)
  • meierale (1)
  • cclauss (1)
  • JungGwangUk (1)
  • Dmium (1)
  • qinhanmin2014 (1)
  • amit8012001 (1)
  • Cyebukayire (1)
  • koyachi (1)
  • rschiffer (1)
  • syckbear (1)
Top Labels
Issue Labels
bug (1)
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 13,568 last-month
  • Total docker downloads: 132
  • Total dependent packages: 0
  • Total dependent repositories: 130
  • Total versions: 11
  • Total maintainers: 1
pypi.org: mglearn

Helper functions for the book Introduction to machine learning with Python

  • Versions: 11
  • Dependent Packages: 0
  • Dependent Repositories: 130
  • Downloads: 13,568 Last month
  • Docker Downloads: 132
Rankings
Forks count: 0.1%
Stargazers count: 0.3%
Dependent repos count: 1.3%
Downloads: 2.5%
Average: 2.9%
Docker downloads count: 2.9%
Dependent packages count: 10.1%
Maintainers (1)
Last synced: 11 months ago

Dependencies

environment.yml conda
  • graphviz
  • imageio
  • joblib
  • matplotlib
  • numpy
  • pandas
  • pillow
  • python-graphviz
  • scikit-learn
  • scipy