cs540 introduction to artificial intelligence lecture...

38
Overview Supervised Learning Perceptron CS540 Introduction to Artificial Intelligence Lecture 1 Young Wu Based on lecture slides by Jerry Zhu, Yingyu Liang, and Charles Dyer June 15, 2020

Upload: others

Post on 28-Jun-2020

22 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

CS540 Introduction to Artificial IntelligenceLecture 1

Young WuBased on lecture slides by Jerry Zhu, Yingyu Liang, and Charles

Dyer

June 15, 2020

Page 2: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

SocrativeAdmin

Download the Socrative App or go to the Socrative.

Use Room CS540C log in with wisc ID.

Choose ”D” for the first question Q1.

If you cannot login, private message to the person named”Questions” (also me).

Page 3: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Lecture FormatAdmin

Pre-recorded lectures will be posted on the course website.

University-assigned lecture time will be used to go overexamples and for participation quizzes.

The remaining lecture time will be used as office hours.

Page 4: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

GradingAdmin

Quizzes: best 10 of 12 or double exam weights.

Math homework: best 10 of 10 � 2.

Programming homework: best 5 of 5 � 1.

Exams: one midterm and one final, 10 points each.

Page 5: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

QuizzesAdmin

Download Socrative, the room number is CS540C.

Default login for Socrative is your wisc email ID.

If someone else tries to hack your account, please email orprivate post on Piazza.

Quiz questions can show up any time during the lecture.

Missing one or two questions due to technical difficulty is okay.

If you select obviously false answers, you might lose points.

Page 6: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Blank QuizQuiz

Page 7: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Math HomeworkAdmin

Officially: due in 1 week Sunday.

Unofficially: any time before the midterm or the final.

Auto-graded: submit the output on Canvas.

Page 8: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Programming HomeworkAdmin

Officially: due in 2 weeks Sunday.

Unofficially: any time before the final.

Solution: posted in 1 week Sunday.

Auto-graded: submit the output on Canvas.

Code: any language.

Page 9: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Midterm and FinalAdmin

Synchronous exam: morning and evening one, choose one totake.

Page 10: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

(Not recommended) Ways to Get B+Admin

Not attending any lecture.

Not doing any math homework.

Not doing half of the programming homework.

Not taking any of the exams (only this summer).

Page 11: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Only Way to Get AAdmin

Do everything.

Page 12: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

TextbookAdmin

Lecture slides and videos will be sufficient.

RN is a good background reading, does not cover everything.

SS is very theoretical, useful if you are planning to take760, 761, 861.

Page 13: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

AdminAdmin

Math and Stat Review posted under W1.

Annotated slides will not be posted (because my handwritingis not recognizable).

Unofficially: all homework are already posted (lots of mistakesand bugs).

Officially: homework will be posted two to three days afterthe corresponding lecture.

Page 14: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Blank QuizQuiz

Page 15: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Is This Face RealQuiz

Which face is real?

A: Left

B: Right

C: Do not choose this

D: Do not choose this

E: Do not choose this

Page 16: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Generative Adversarial NetworkMotivation

Generative Adversarial Network (GAN):

1 Generative part: input random noise and output fake images.

2 Discriminative part: input real and fake images and outputlabels real or fake.

3 The two parts compete with each other.

Page 17: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Supervised Learning Example 1Motivation

Data images of cats and dogs

Features (Input) height, length, eye color, ...

- pixel intensity

Output cat or dog

Page 18: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Supervised Learning Example 2Motivation

Data medical records

Features (Input) scan, blood, and other test results

Output disease or no

Data patient information

Features (Input) age, pre-existing conditions, ...

Output likelihood of death

Page 19: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Supervised Learning Example 3Motivation

Data face images

Features (Input) edges, corners, ...

Output face or non-face

Data self-driving car data

Features (Input) distance (depth), movement, ...

Output road or non-road

Page 20: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Supervised Learning Example 4Motivation

Data emails

Features (Input) word count, capitalization, ...

Output spam or ham

Data comments

Features (Input) word count, capitalization, ...

Output offensive or not

Page 21: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Supervised Learning Example 5Motivation

Data reviews

Features (Input) word count, capitalization, ...

Output positive or negative

Data financial transactions

Features (Input) amount, frequency, ...

Output fraud or not

Page 22: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Supervised Learning Example 6Motivation

Data handwritten letters

Features (Input) pixel, stroke

Output δ or σ, ϕ or ψ

Data voice recording

Features (Input) signal, sound (phoneme)

Output recognize speech or wreck a nice beach

Page 23: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Supervised Learning Example 7Motivation

Data painting

Features (Input) appearance, price, ...

Output art or garbage

Data essay

Features (Input) length, key words

Output A+ or F

Page 24: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Supervised LearningMotivation

Supervised learning:

Data Features (Input) Output -

Sample tpxi1, ..., ximquni�1 tyiu

ni�1 find ”best” f

- observable known -

New px 11, ..., x1mq y 1 guess y � f px 1q

- observable unknown -

Page 25: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Training and Test SetsMotivation

Supervised learning:

Data Features (Input) Output -

Training tpxi1, ..., ximqun1

i�1 tyiun1

i�1 find ”good” f

- observable known -

Validation tpxi1, ..., ximquni�n1 tyiu

ni�n1 find ”best” f

- observable known -

Test px 11, ..., x1mq y 1 guess y � f px 1q

- observable unknown -

Page 26: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Simple 2D Example DiagramMotivation

Page 27: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Linear ClassifierMotivation

One possible guess is in the form of a linear classifier.

y � 1tw1x1�w2x2�...�wmxm�b¥0u

� 1twT x�b¥0u

The 1 (open number 1) is the indicator function.

1E �

"1 if E is true0 if E is false

Page 28: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Linear Threshold UnitMotivation

This simple linear classifier is also called a Linear ThresholdUnit (LTU) Perceptron.

w1,w2, ...,wm are called the weights, and b is called the bias.

The function that makes the prediction based on wT x � b iscalled the activation function.

For an LTU Perceptron, the activation function is theindicator function.

g���� 1! � ¥0

)

Page 29: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Equation of a LineMotivation

In 1D,w1x1 � b ¥ 0 is just a threshold rule: x1 ¥ �b

w1implies y � 1.

In 2D,w1x1 � w2x2 � b ¥ 0 can be written as�w1 w2

� �x1x2

�� b ¥ 0. Note that w1x1 �w2x2 � b � 0 is the

equation of a line, usually written as x2 � �w1

w2x1 �

b

w2.

Page 30: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Equation of a HyperplaneMotivation

In 3D,w1x1 � w2x2 � w3x3 � b ¥ 0 can be written as

�w1 w2 w3

���x1x2x3

��� b ¥ 0. Note that

w1x1 � w2x2 � w3x3 � b � 0 is the equation of a plane, and��w1

w2

w3

�� is normal vector of the plane.

The normal vector is perpendicular to all vectors on the plane.

Page 31: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

LTU Perceptron TrainingMotivation

Given the training set tpx1, y1q , px2, y2q , ..., pxn, ynqu, theprocess of figuring out the weights and the bias is calledtraining an LTU Perceptron.

A training data point xi is also called an instance.

One algorithm to train an LTU Perceptron is called thePerceptron Algorithm.

Page 32: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Brute Force LTU LearningMotivation

Page 33: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Perceptron AlgorithmDescription

Initialize random weights.

Evaluate the activation function at one instance xi to get yi .

If the prediction yi is 0 and actual yi is 1, increase the weightsby xi .

If the prediction yi is 1 and actual yi is 0, decrease theweights by xi .

Repeat for all data points and until convergent.

Page 34: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Perceptron Algorithm Diagram, 0 ExampleDescription

Page 35: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Perceptron Algorithm Diagram, 1 ExampleDescription

Page 36: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Perceptron Algorithm, Part 1Algorithm

Inputs: instances: txiuni�1 and tyiu

n.i�1

Outputs: weights and biases: w1, ...,wm, and b.

Initialize the weights.

w1, ...,wm, b � Unif r�1, 1s

Unif rl , us means picking a random number between l and u.

Evaluate the activation function at a single data point xi .

ai � 1twT xi�b¥0u

Page 37: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Perceptron Algorithm, Part 2Algorithm

Update weights using the following rule.

w � w � α pai � yi q xi

b � b � α pai � yi q

Repeat the process for every xi , i � 1, 2, ..., n.

Repeat until ai � yi for every i � 1, 2, ..., n.

Page 38: CS540 Introduction to Artificial Intelligence Lecture 1pages.cs.wisc.edu/~yw/CS540/CS540_Lecture_1_P.pdf · 2020-05-24 · CS540 Introduction to Arti cial Intelligence Lecture 1 Young

Overview Supervised Learning Perceptron

Learning RateDiscussion

The learning rate α controls how fast the weights are updated.

They can be constant for each update or they can change(usually decrease) for each update.

For perceptron learning, it is typically set to 1.