Lecture 1: Introduction to Machine Learning

Applied Machine Learning

Volodymyr Kuleshov
Cornell Tech

Welcome to Applied Machine Learning!

Machine learning is one of today's most exciting emerging technologies.

In this course, you will learn what machine learning is, what are the most important techniques in machine learning, and how to apply them to solve problems in the real world.

Part 1: What is Machine Learning?

We hear a lot about machine learning (or ML for short) in the news.

But what is it, really?

ML in Everyday Life: Search Engines

You use machine learninng every day when you run a search engine query.

ML in Everyday Life: Personal Assitants

Machine learning also powers the speech recognition, question answering and other intelligent capabilities of smartphone assistants like Apple Siri.

ML in Everyday Life: Spam/Fraud Detection

Machine learning is used in every spam filter, such as in Gmail.

ML systems are also used by credit card companies and banks to automatically detect fraudulent behavior.

ML in Everyday Life: Self-Driving Cars

One of the most exciting and cutting-edge uses of machine learning algorithms are in autonomous vehicles.

A Definition of Machine Learning

In 1959, Arthur Samuel defined machine learning as follows.

Machine learning is a field of study that gives computers the ability to learn without being explicitly programmed.

What does "learn" and "explicitly programmed" mean here? Let's look at an example.

An Example: Self Driving Cars

A self-driving car system uses dozens of components that include detection of cars, pedestrians, and other objects.

Self Driving Cars: A Rule-Based Algorithm

One way to build a detection system is to write down rules.

In practice, it's almost impossible for a human to specify all the edge cases.

Self Driving Cars: An ML Approach

The machine learning approach is to teach a computer how to do detection by showing it many examples of different objects.

No manual programming is needed: the computer learns what defines a pedestrian or a car on its own!

Revisiting Our Definition of ML

Machine learning is a field of study that gives computers the ability to learn without being explicitly programmed. (Arthur Samuel, 1959.)

This principle can be applied to countless domains: medical diagnosis, factory automation, machine translation, and many more!

Why Machine Learning?

Why is this approach to building software interesting?

Part 2: Three Approaches to Machine Learning

Machine learning is broadly defined as the science of building software that has the ability to learn without being explicitly programmed.

How might we enable machines to learn? Let's look at a few examples.

Supervised Learning

The most common approach to machine learning is supervised learning.

  1. First, we collect a dataset of labeled training examples.
  2. We train a model to output accurate predictions on this dataset.
  3. When the model sees new, similar data, it will also be accurate.

A Supervised Learning Dataset

Consider a simple dataset for supervised learning: house prices in Boston.

We will visualize two variables in this dataset: house price and the education level in the neighborhood.

A Supervised Learning Algorithm

We can use this dataset of examples to fit a supervised learning model.

Applications of Supervised Learning

Many of the most important applications of machine learning are supervised:

Unsupervised Learning

Here, we have a dataset without labels. Our goal is to learn something interesting about the structure of the data:

An Unsupervised Learning Dataset

Here is a simple example of an unsupervised learning dataset: Iris flowers.

An Unsupervised Learning Algorithm

We can use this dataset of examples to fit an unsupervised learning model.

Applications of Unsupervised Learning

Unsupervised learning also has numerous applications:

Reinforcement Learning

In reinforcement learning, an agent is interacting with the world over time. We teach it good behavior by providing it with rewards.

Image by Lily Weng

Applications of Reinforcement Learning

Applications of reinforcement learning include:

Artificial Intelligence and Deep Learning

Machine learning is often discussed in the context of these two fields.

Image [source](https://towardsdatascience.com/understanding-the-difference-between-ai-ml-and-dl-cceb63252a6c).

Part 3: About the Course

Next, let's look at the machine learning topics that we will cover.

Teaching Approach

The focus of this course is on applied machine learning.

Why are we following this approach?

What You Will Learn

Software You Will Use

You will use Python and popular machine learning libraries such as:

Executable Course Materials

The core materials for this course (including the slides!) are created using Jupyter notebooks.

We can use these libraries to load a simple datasets of handwritten digits.

We can now load and train this algorithm inside the slides.

We can now visualize the results.

Part 4: Logistics and Other Information

We will go over some practical bits of information.

Course Format: Reverse Classrom

The format of this course will be that of the "reverse classroom".

Course Content

The course spans about 25 lectures approximately divided up into a set of blocks:

  1. Supervised and unsupervised algorithms.
  2. Foundations of machine learning.
  3. Applying machine learning in practice.
  4. Advanced topics and guest lectures.

Machine Learning Algorithms

Foundations of Machine Learning

Applying Machine Learning

Advanced Machine Learning Topics

Course Assignments

There are two main types of assignments.

  1. Supervised and unsupervised algorithms.
  2. Foundations of machine learning.
  3. Applying machine learning in practice.
  4. Advanced topics and guest lectures.

Prerequisites. Is This Course For You?

This course is designed to aimed at a very general technical audience. Main requirements are:

Other Logistics

Again, Welcome to Applied Machine Learning!