CSC 411: Lecture 01: Introduction
Class based on Raquel Urtasun & Rich Zemel’s lectures Sanja Fidler
University of Toronto
Jan 11, 2016
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 1 / 37
CSC 411: Lecture 01: Introduction Class based on Raquel Urtasun - - PowerPoint PPT Presentation
CSC 411: Lecture 01: Introduction Class based on Raquel Urtasun & Rich Zemels lectures Sanja Fidler University of Toronto Jan 11, 2016 Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 1 / 37 Today Administration
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 1 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 2 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 3 / 37
◮ But it is up to you to determine if you have the appropriate background
◮ Linear algebra: vector/matrix manipulations, properties ◮ Calculus: partial derivatives ◮ Probability: common distributions; Bayes Rule ◮ Statistics: mean/median/mode; maximum likelihood ◮ Sheldon Ross: A First Course in Probability Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 4 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 5 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 6 / 37
◮ Kevin Murphy: ”Machine Learning: a Probabilistic Perspective” ◮ David Mackay: ”Information Theory, Inference, and Learning
◮ Ethem Alpaydin: ”Introduction to Machine Learning”, 2nd edition,
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 6 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 7 / 37
◮ Three assignments, first two worth 12.5% each, last one worth 15%,
◮ Programming: take Matlab/Python code and extend it ◮ Derivations: pen(cil)-and-paper Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 7 / 37
◮ Three assignments, first two worth 12.5% each, last one worth 15%,
◮ Programming: take Matlab/Python code and extend it ◮ Derivations: pen(cil)-and-paper
◮ One hour exam on Feb 29th ◮ Worth 25% of course mark Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 7 / 37
◮ Three assignments, first two worth 12.5% each, last one worth 15%,
◮ Programming: take Matlab/Python code and extend it ◮ Derivations: pen(cil)-and-paper
◮ One hour exam on Feb 29th ◮ Worth 25% of course mark
◮ Focused on second half of course ◮ Worth 35% of course mark Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 7 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 8 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 8 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 8 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 8 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 8 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 9 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 10 / 37
◮ As computer scientists we write a program that encodes a set of rules
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 10 / 37
◮ As computer scientists we write a program that encodes a set of rules
◮ In many cases is very difficult to specify those rules, e.g., given a
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 10 / 37
◮ As computer scientists we write a program that encodes a set of rules
◮ In many cases is very difficult to specify those rules, e.g., given a
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 10 / 37
◮ As computer scientists we write a program that encodes a set of rules
◮ In many cases is very difficult to specify those rules, e.g., given a
◮ Examples of how they should behave Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 10 / 37
◮ As computer scientists we write a program that encodes a set of rules
◮ In many cases is very difficult to specify those rules, e.g., given a
◮ Examples of how they should behave ◮ From trial-and-error experience trying to solve the problem Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 10 / 37
◮ As computer scientists we write a program that encodes a set of rules
◮ In many cases is very difficult to specify those rules, e.g., given a
◮ Examples of how they should behave ◮ From trial-and-error experience trying to solve the problem
◮ Want to implement unknown function, only have access to sample
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 10 / 37
◮ As computer scientists we write a program that encodes a set of rules
◮ In many cases is very difficult to specify those rules, e.g., given a
◮ Examples of how they should behave ◮ From trial-and-error experience trying to solve the problem
◮ Want to implement unknown function, only have access to sample
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 10 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 11 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 12 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 13 / 37
◮ What distinguishes a 2 from a 7? Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 13 / 37
◮ What distinguishes a 2 from a 7? ◮ How does our brain do it? Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 13 / 37
◮ What distinguishes a 2 from a 7? ◮ How does our brain do it?
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 13 / 37
◮ What distinguishes a 2 from a 7? ◮ How does our brain do it?
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 13 / 37
◮ What distinguishes a 2 from a 7? ◮ How does our brain do it?
◮ The program produced by the learning algorithm may look very
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 13 / 37
◮ What distinguishes a 2 from a 7? ◮ How does our brain do it?
◮ The program produced by the learning algorithm may look very
◮ If we do it right, the program works for new cases as well as the ones
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 13 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 14 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 15 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 15 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 15 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 15 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 15 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 16 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 17 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 17 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 18 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 19 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 19 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 19 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 20 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 21 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 21 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 21 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 21 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 22 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 23 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 23 / 37
[Gatys, Ecker, Bethge. A Neural Algorithm of Artistic Style. Arxiv’15.] Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 23 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 24 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 25 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 26 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 27 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 28 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 29 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 30 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 30 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 30 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 31 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 32 / 37
◮ Learn to predict output when given an input vector Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 32 / 37
◮ Learn to predict output when given an input vector ◮ Classification: 1-of-N output (speech recognition, object recognition,
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 32 / 37
◮ Learn to predict output when given an input vector ◮ Classification: 1-of-N output (speech recognition, object recognition,
◮ Regression: real-valued output (predicting market prices, customer
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 32 / 37
◮ Learn to predict output when given an input vector ◮ Classification: 1-of-N output (speech recognition, object recognition,
◮ Regression: real-valued output (predicting market prices, customer
◮ Create an internal representation of the input, capturing
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 32 / 37
◮ Learn to predict output when given an input vector ◮ Classification: 1-of-N output (speech recognition, object recognition,
◮ Regression: real-valued output (predicting market prices, customer
◮ Create an internal representation of the input, capturing
◮ Examples: form clusters; extract features Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 32 / 37
◮ Learn to predict output when given an input vector ◮ Classification: 1-of-N output (speech recognition, object recognition,
◮ Regression: real-valued output (predicting market prices, customer
◮ Create an internal representation of the input, capturing
◮ Examples: form clusters; extract features ◮ How do we know if a representation is good? Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 32 / 37
◮ Learn to predict output when given an input vector ◮ Classification: 1-of-N output (speech recognition, object recognition,
◮ Regression: real-valued output (predicting market prices, customer
◮ Create an internal representation of the input, capturing
◮ Examples: form clusters; extract features ◮ How do we know if a representation is good?
◮ Learn action to maximize payoff ◮ Not much information in a payoff signal ◮ Payoff is often delayed Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 32 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 33 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 33 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 33 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 33 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 34 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 34 / 37
◮ Good piece of statistics: Clever proof that relatively simple estimation
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 34 / 37
◮ Good piece of statistics: Clever proof that relatively simple estimation
◮ Good piece of ML: Demo that a complicated algorithm produces
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 34 / 37
◮ Good piece of statistics: Clever proof that relatively simple estimation
◮ Good piece of ML: Demo that a complicated algorithm produces
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 34 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 35 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 36 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 37 / 37
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 37 / 37
◮ Split into training set; test set ◮ Determine representation of input features; output Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 37 / 37
◮ Split into training set; test set ◮ Determine representation of input features; output
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 37 / 37
◮ Split into training set; test set ◮ Determine representation of input features; output
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 37 / 37
◮ Split into training set; test set ◮ Determine representation of input features; output
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 37 / 37
◮ Split into training set; test set ◮ Determine representation of input features; output
Urtasun, Zemel, Fidler (UofT) CSC 411: 01-Introduction Jan 11, 2016 37 / 37