Workshop Description

In this workshop, we explore applications of Machine Learning to analyze biological data without the need of advanced programming skills. For example, Machine Learning techniques can be used to construct predictive models based on a set of training examples, to remove noise and spurious artifacts from data (e.g. photobleaching), or to help visualize trends within high dimensional datasets, etc. This workshop will cover the basic principles involved in the applications mentioned above, such as pattern recognition, linear and non-linear regression and cluster analysis. The workshop will be oriented towards hands-on activities, starting from the basics of how to load and prepare biological datasets in a Python environment. By the end of this workshop, students will be able to use Scikit-Learn’s documentation (and other libraries) to build models based on their own data, assess their performance and make new predictions. Students are encouraged to attend to the Advanced Python and Modern Statistics workshops, although no advanced knowledge will be assumed.

For more information, please visit:

Day 1

  • Overview of Machine Learning: what is it and how does it help me?
  • Nano-review of Python
  • Introduction to Jupyter Notebooks
  • Introduction to Numpy and matrices
  • Importing datasets
  • Introducing Scikit-Learn’s structure
  • In-class practice

Day 2

  • Introduction to classification and Scikit-Learn
    • Bayes classifier
    • Fisher linear discriminant
    • Support Vector Machines
    • Meta-parameters and regularization
    • Random Forests
  • Scores and validation
    • Accuracy and error
    • Precision-Recall
    • F-scores
  • Cross-validation
    • Estimation bias in performance estimation
    • Leave-one-out Cross-validation
    • K-Fold Cross-validation
    • Common issues and speeding up cross-validation
  • In-class practice

Day 3

  • Linear and non-linear regression
    • Linear models
    • Polynomial regression
    • Regression with Support Vector Machine
  • Generalized Linear Models
    • Meta-parameters and regularization
    • Lasso regression
  • Cross-validation and model selection
  • In-class practice
  • Overview of cluster analysis
    • Overview of methods
    • Fixed number of clusters: K-means
    • Can we learn K?
    • Hierarchical clustering
    • In-class practice

Technical Requirements

Attendees should have a working copy of Python 3 with the following packages:

  • Numpy
  • Matplotlib
  • Scikit-Learn
  • Jupyter Notebooks

For instructions on how to install these requirements on your system, please visit: 


Renaud Dessalles, Ph.D., is a Post-Doctoral researcher at the laboratory of Biomathematics currently working on the modeling of the immune responses to antigens. His main interested consist in mathematical and computational modeling applied to biology, using mainly (but not exclusively) stochastic models. During his PhD in applied mathematics at INRA and INRIA (France), he worked on the stochastic modeling of protein production inside bacteria. Renaud’s main skills consist of the analysis of stochastic and deterministic models and the use of several computational language (Python, C++, Matlab, Julia) for simulations.



This was a perfectly taught class. Instructor knew his audience well, hence, his examples were something all of us could relate to. He also knew the pace really well, so it was not too fast but was not too slow either (aka I never got bored or distracted much). He also did a good job of giving overall view on Machine-Learning, while giving some important details on each method. Without going too advanced, he was able to give us the basics and good understanding of what machine learning can do, based on which we could grow advanced. Thank you! I really enjoyed it.

Fall 2018 Student
Good overview of machine learning, good that covered many different topics. I learned a lot. Thank you!
Spring 2018 Student

It helped to build a good foundation of concepts, which is what I expected.

Winter 2018 Student
An excellent workshop. I learned a lot in a short time, and consider it time well spent.
Winter 2018 Student

Great job, Thiago! Clearly presented methods, explained coding techniques, and communicated information.

Winter 2018 Student

Wonderful course with a great instructor (Thiago), who demonstrates a strong understanding of the conceptual math behind machine learning and gives great guidance with his technical expertise in programming.

Fall 2017 Student

Workshop Details

Prerequisites: W9
Length: 3 days, 3 hrs per day
Level: Intermediate
Location: Collaboratory Classroom  (Boyer Hall, 529)
Seats Available: 28

Winter 2019 Dates

February 12, 13, and 14
9:00 AM – 12:00 PM