Skip to content

Updates README and introduction #41

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Aug 31, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 23 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,36 +1,42 @@
# D-Lab's Python Machine Learning Fundamentals Workshop
# D-Lab's Python Machine Learning Workshop

[![Datahub](https://img.shields.io/badge/launch-datahub-blue)](https://dlab.datahub.berkeley.edu/hub/user-redirect/git-pull?repo=https%3A%2F%2Fgithub.com%2Fdlab-berkeley%2FPython-Machine-Learning-Fundamentals&urlpath=lab%2Ftree%2FPython-Machine-Learning-Fundamentals%2F&branch=main) [![Binder](http://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/dlab-berkeley/Python-Machine-Learning-Fundamentals/HEAD)
[![Datahub](https://img.shields.io/badge/launch-datahub-blue)](https://dlab.datahub.berkeley.edu/hub/user-redirect/git-pull?repo=https%3A%2F%2Fgithub.com%2Fdlab-berkeley%2FPython-Machine-Learning&urlpath=lab%2Ftree%2FPython-Machine-Learning%2F&branch=main) [![Binder](http://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/dlab-berkeley/Python-Machine-Learning/HEAD)

This repository contains the materials for D-Lab’s Python Machine Learning Fundamentals workshop. Prior experience with [Python Fundamentals](https://github.com/dlab-berkeley/Python-Fundamentals) is assumed.
This repository contains the materials for D-Lab’s Python Machine Learning workshop. Prior experience with [Python Fundamentals](https://github.com/dlab-berkeley/Python-Fundamentals), [Python Data Visualization](https://github.com/dlab-berkeley/Python-Data-Visualization), and [Python Data Wrangling](https://github.com/dlab-berkeley/Python-Data-Wrangling) is assumed.

## Workshop Goals

In this workshop, we provide an introduction to machine learning in Python. First, we'll cover some machine learning basics, including its foundational principles, types of machine learning algorithms, how to fit models, and how to evaluate them. Then, we'll explore several machine learning tasks, includes classification, regression, and clustering. We'll demonstrate how to perform these tasks using `scitkit-learn`, the main package used for machine learning in Python. Finally, we'll go through an automatic model selection tool called `TPOT`.
In this workshop, we provide an introduction to machine learning in Python. First, we'll cover some machine learning basics, including its foundational principles. Then, we'll dive into code, understanding how to perform regression, regularization, preprocessing, and classification. There are additional components of the workshop which explore building machine learning pipelines and unsupervised learning. We'll demonstrate how to perform these tasks using `scikit-learn`, the main package used for machine learning in Python.

Basic familiarity with Python is assumed. If you are not comfortable with the material in [Python Fundamentals](https://github.com/dlab-berkeley/Python-Fundamentals), we recommend attending that workshop first.
This workshop is divided into the following parts:

1. **Part 1: Regression and Regularization.** How can we use linear models to predict continuous outputs, and how can we prevent their overfitting?
2. **Part 2: Preprocessing and Classification.** What preprocessing steps do we need to take before fitting models? Then, how do we perform classification?
3. **Part 3: Machine Learning Pipeline.** We'll walk through a machine learning task, from exploratory data analysis to building an entire machine learning pipeline.

The first two parts are taught as a joint series. Part 3 can be attended on its own, but prior knowledge of Parts 1 and 2 are assumed.

## Installation Instructions

Anaconda is a useful package management software that allows you to run Python and Jupyter notebooks very easily. Installing Anaconda is the easiest way to make sure you have all the necessary software to run the materials for this workshop. Complete the following steps:

1. [Download and install Anaconda (Python 3.9 distribution)](https://www.anaconda.com/products/individual). Click "Download" and then click 64-bit "Graphical Installer" for your current operating system.

2. Download the [Python-Machine-Learning-Fundamentals workshop materials](https://github.com/dlab-berkeley/Python-Machine-Learning-Fundamentals):
2. Download the [Python-Machine-Learning workshop materials](https://github.com/dlab-berkeley/Python-Machine-Learning):

* Click the green "Code" button in the top right of the repository information.
* Click "Download Zip".
* Extract this file to a folder on your computer where you can easily access it (we recommend Desktop).

3. Optional: if you're familiar with `git`, you can instead clone this repository by opening a terminal and entering `git@github.com:dlab-berkeley/Python-Machine-Learning-Fundamentals.git`.
3. Optional: if you're familiar with `git`, you can instead clone this repository by opening a terminal and entering `git@github.com:dlab-berkeley/Python-Machine-Learning.git`.

## Run the code

Now that you have all the required software and materials, you need to run the code:

1. Open the Anaconda Navigator application. You should see the green snake logo appear on your screen. Note that this can take a few minutes to load up the first time.

2. Click the "Launch" button under "Jupyter Notebooks" and navigate through your file system to the `Python-Machine-Learning-Fundamentals` folder you downloaded above.
2. Click the "Launch" button under "Jupyter Notebooks" and navigate through your file system to the `Python-Machine-Learning` folder you downloaded above.

3. Click `00_introduction.md` to begin.

Expand All @@ -40,13 +46,13 @@ Now that you have all the required software and materials, you need to run the c

If you have a Berkeley CalNet ID, you can run these lessons on UC Berkeley's DataHub by clicking this button:

[![Datahub](https://img.shields.io/badge/launch-datahub-blue)](https://dlab.datahub.berkeley.edu/hub/user-redirect/git-pull?repo=https%3A%2F%2Fgithub.com%2Fdlab-berkeley%2FPython-Machine-Learning-Fundamentals&urlpath=lab%2Ftree%2FPython-Machine-Learning-Fundamentals%2F&branch=main)
[![Datahub](https://img.shields.io/badge/launch-datahub-blue)](https://dlab.datahub.berkeley.edu/hub/user-redirect/git-pull?repo=https%3A%2F%2Fgithub.com%2Fdlab-berkeley%2FPython-Machine-Learning&urlpath=lab%2Ftree%2FPython-Machine-Learning%2F&branch=main)

By using this link, you can save your work and come back to it at any time. When you want to return to your saved work, just go straight to DataHub [https://datahub.berkeley.edu](https://datahub.berkeley.edu/hub/user-redirect/git-pull?repo=https%3A%2F%2Fgithub.com%2Fdlab-berkeley%2FPython-Machine-Learning-Fundamentals&urlpath=tree%2FPython-Machine-Learning-Fundamentals%2F&branch=main), sign in, and you click on the `Python-Machine-Learning-Fundamentals` folder.
By using this link, you can save your work and come back to it at any time. When you want to return to your saved work, just go straight to DataHub [https://datahub.berkeley.edu](https://datahub.berkeley.edu/hub/user-redirect/git-pull?repo=https%3A%2F%2Fgithub.com%2Fdlab-berkeley%2FPython-Machine-Learning&urlpath=tree%2FPython-Machine-Learning%2F&branch=main), sign in, and you click on the `Python-Machine-Learning` folder.

If you don't have a Berkeley CalNet ID, you can still run these lessons in the cloud, by clicking this button:

[![Binder](http://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/dlab-berkeley/Python-Machine-Learning-Fundamentals/main?urlpath=tree)
[![Binder](http://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/dlab-berkeley/Python-Machine-Learning/main?urlpath=tree)

By using this button, you cannot save your work unfortunately.

Expand Down Expand Up @@ -78,16 +84,15 @@ Here are other Python workshops offered by the D-Lab:

## Intermediate/advanced copmetency

* [Computational Text Analysis in Python](https://github.com/dlab-berkeley/computational-text-analysis-spring-2019)
* [Introduction to Machine Learning in Python](https://github.com/dlab-berkeley/python-machine-learning)
* [Introduction to Artificial Neural Networks in Python](https://github.com/dlab-berkeley/ANN-Fundamentals)
* [Python Text Analysis](https://github.com/dlab-berkeley/Python-Text-Analysis)
* [Python Deep Learning](https://github.com/dlab-berkeley/Python-Deep-Learning)
* [Fairness and Bias in Machine Learning](https://github.com/dlab-berkeley/fairML)

# Contributors
* Samy Abdel-Ghaffar
* Sean Perez
* Christopher Hench
* Pratik Sachdeva
* Emily Grabowski
* George McIntire
* Sam Temlock
* Emily Grabowski
* Samy Abdel-Ghaffar
* Sean Perez
* Christopher Hench
3 changes: 3 additions & 0 deletions lessons/00_introduction.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Python Machine Learning: Introduction

Please refer to these [introductory slides](https://docs.google.com/presentation/d/1IwlTdkOGXVGwgCxPVyWEXOOyRf_sZtAcKFSoJ9k4jig/edit?usp=sharing) for the first component of the workshop.