Machine Learning Introduc1on
Kate Saenko
Saenko 1
about me B.S., UBC Ph.D, MIT
• Research: Ar1ficial Intelligence
– Deep Learning for Vision
– Vision and language understanding – Transfer learning, domain adapta1on
Faculty, BU 2016-
Saenko
2
Today
• What is machine learning? • Supervised learning intro • Course logis1cs
Saenko 3
Why Do We Need Machine Learning?
Saenko 4
Machine Learning: Why do we need it?
• Help automate boring, hard tasks • Hard to program computer
directly to do the task
• Instead, program a computer to
learn from examples
• OYen use “big data” examples
Saenko 5
Machine Learning:
used in lots of ways in our everyday life!
Saenko
6
Fraud alert!!
Machine Learning in Real Life: Smart Cars
• Stanford/Google one of the first to develop self-driving cars
• Cars “see” using many sensors: radar, laser, cameras
Saenko 7
Machine Learning in Real Life: Medical and Scien1fic Data
Saenko 8
Machine Learning in Real Life: Robo1cs
Saenko 9
Vierreck, Ten Pas, Saenko, Plab. Learning a Visuomotor Controller for Real World Robo1c Grasping… CORL17
Machine Learning in Real Life:
Image Classifica1on handwriben digits
face tagging on social media
Saenko 10
Machine Learning in Real Life: Computa1onal Finance
Saenko Figure from J.Co11rso
Machine Learning from Big Data Ar1ficial Neural Network
Support Vector Machine
Saenko 12
Introduc1on: What is Machine Learning?
Saenko 13
Machine Learning • Branch of Ar1ficial Intelligence
• “crea&ng machine algorithms that can learn from data”
• Closely related to – Pabern recogni1on
– Data Mining – Big Data – Deep learning
Saenko 14
Types of learning
• Supervised • Unsupervised
• Reinforcement
Saenko 15
Supervised Learning
• Given a training set consis1ng of inputs and outputs, learn to map novel inputs to outputs
• The novel inputs are called a test set
• Outputs can be
– Categorical (classifica1on)
– Con1nuous (regression)
Saenko 16
Example of Supervised Learning
recognize coins
• Given training set consis1ng of coin denomina1on (penny, nickel, dime, quarter), mass and size
• Learn to predict denomina1on • What is input? Output?
Saenko 17
Unsupervised Learning
• Given training set consis1ng of coin denomina1on (penny, nickel, dime, quarter) mass and size
• Learn… something?
Saenko 18
Reinforcement Learning
learn to pick up coins
• Given only input, but can take ac1on
• Predict output (ac1on), get a reward for it
Saenko 19
Quiz: Types of learning
1. Suppose you are building a Machine to detect people that are about to commit a crime by analyzing camera surveillance and phone conversa1ons. Would you model it as a classifica1on or a regression problem?
2. You are designing a machine that can learn to play a video game by playing lots of games with you and your friends. Would you use supervised, unsupervised, or reinforcement learning?
Saenko 20
Supervised Learning
Cost func1ons
Example: house price predic1on
Housing Prices (Portland, OR)
Price (in1000s of dollars)
500 400 300 200 100
0
0 500
1000
Size (feet2)
2500
3000
Andrew Ng
1500
2000
Supervised Learning
What should the learner be??
Want:
input x
?
output y
y
500
400
300
200
100
0
0
1000
2000 3000
x
Hypothesis h
h : a func1on parametrized by θ
Want:
input x hθ
output y
y
500
400
300
200
100
0
0 1000
2000 3000
x
Given:
Want:
Training Set {xi, yi}
But what if y ≠ yi ??
output y
How to learn θ ?
input xi
hθ
y
500
400
300
200
100
0
0
1000
2000 3000
x
Given:
Cost func1on Training Set {xi, yi}
Cost func1on Cost(y, yi)
learning == minimizing cost
Want:
input xi hθ
output y
y
500
400
300
200
100
0
0 1000
2000 3000
x
Given:
Supervised Learning
Training Set {xi, yi}
Cost func1on Cost(y, yi)
learning == minimizing cost
min Cost( hθ(xi), yi ) θ
input xi hθ* output y
Learn θ*: Want:
Training set:
Size in feet2 (x) 2104 1416 1534
852
Price ($) in 1000’s (y) 460
232
315
178
Training set
Nota1on:
……
m = Number of training examples
x(i) = “input” variable / features
y(i) = “output” variable / “target” variable
Linear hypothesis:
‘s: Parameters
500
400
300
200
100
0
What should h be?
min Cost(hθ, {xi, yi}) θ
0 500 1000 1500 2000
2500 3000
What’s a good cost func1on for this problem?
Hypothesis:
‘s: Parameters
How about “Sum of squared differences”
Cost Func1on: Goal:
1000 1500 2000
2500 3000
500
400
300
200
100
0
0 500
Hypothesis:
‘s: Parameters
Cost Func1on:
0 500
1000 1500 2000
2500 3000
2-dimensional θ
500
400
300
200
100
0
Plotng cost for 2-dimensional θ (for fixed , this is a func1on of x) (func1on of the parameters )
Plotng cost for 2-dimensional θ (for fixed , this is a func1on of x) (func1on of the parameters )
Note, squared loss cost is convex in parameters
SSD cost func1on is convex Minima?
J(θ0,θ1)
Non-convex cost func1on Minima?
θ0
θ1
Later
• How to minimize the SSD cost func1on – Direct solu1on
– Indirect solu1on
Saenko 36
Introduc1on: Course Overview
Saenko 37
Class website
• Main class website ai.bu.edu/teaching.html (or search for Kate Saenko) Click on BU CS.542 Machine Learning Fall 2019
• Piazza (forum, homework) piazza.com/bu/fall2019/cs542
Saenko 38
Textbook • Required textbook
Bishop, C. M. Pabern Recogni1on and Machine Learning. Springer. 2007
• Other suggested textbooks
Duda, R.O., Hart, P.E., and Stork, D.G. Pabern Classifica1on. Wiley-Interscience. 2nd Edi1on. 2001.
Marsland, S. Machine Learning: An Algorithmic Perspec1ve. CRC Press. 2009.Theodoridis, S. and Koutroumbas, K. Pabern Recogni1on. Edi1on 4. Academic Press, 2008.
Russell, S. and Norvig, N. Ar1ficial Intelligence: A Modern Approach. Pren1ce Hall Series in Ar1ficial Intelligence. 2003.
Bishop, C. M. Neural Networks for Pabern Recogni1on. Oxford University Press. 1995. Has1e, T., Tibshirani, R. and Friedman, J. The Elements of Sta1s1calLearning. Springer. 2001. Koller, D. and Friedman, N. Probabilis1c Graphical Models. MIT Press. 2009.
Saenko 39
Problem Sets
• Weekly problems sets
– Python coding problems
– Wriben math problems
– Important to prepare you for the exams!
• Self-graded
– you will submit code, answers, and your own grade
– we will randomly check to verify
Saenko 40
Class Challenge Individual end-of-term project
• Based on a real-world problem, hosted as a Kaggle-like challenge for our class
• Goal is to design a machine learning approach and apply it to the problem
• Deliverables: github
Saenko 41
Ques1ons
Saenko 42