Advanced Artificial Intelligence - PowerPoint PPT Presentation

1 / 53
About This Presentation
Title:

Advanced Artificial Intelligence

Description:

Advanced Artificial Intelligence Lecture 7: Machine Learning Don t Always Trust Linear Models Regression by Gradient Descent w = any point loop until convergence do ... – PowerPoint PPT presentation

Number of Views:143
Avg rating:3.0/5.0
Slides: 54
Provided by: Preferr842
Category:

less

Transcript and Presenter's Notes

Title: Advanced Artificial Intelligence


1
Advanced Artificial Intelligence
  • Lecture 7 Machine Learning

2
Outline
  • Machine Learning
  • Classification (Naïve Bayes)
  • Regression (Linear, Smoothing)
  • Linear Separation (Perceptron, SVMs)
  • Non-parametric classification (KNN)

3
Outline
  • Machine Learning
  • Classification (Naïve Bayes)
  • Regression (Linear, Smoothing)
  • Linear Separation (Perceptron, SVMs)
  • Non-parametric classification (KNN)

4
Machine Learning
  • Up until now how to reason in a give model
  • Machine learning how to acquire a model on the
    basis of data / experience
  • Learning parameters (e.g. probabilities)
  • Learning structure (e.g. BN graphs)
  • Learning hidden concepts (e.g. clustering)

5
Machine Learning Lingo

What? Parameters Structure Hidden concepts
What from? Supervised Unsupervised Reinforcement Self-supervised
What for? Prediction Diagnosis Compression Discovery
How? Passive Active Online Offline
Output? Classification Regression Clustering
Details?? Generative Discriminative Smoothing
6
Supervised Machine Learning
Given a training set (x1, y1), (x2, y2),
(x3, y3), (xn, yn) Where each yi was
generated by an unknown y f (x), Discover a
function h that approximates the true function f.
7
Outline
  • Machine Learning
  • Classification (Naïve Bayes)
  • Regression (Linear, Smoothing)
  • Linear Separation (Perceptron, SVMs)
  • Non-parametric classification (KNN)

8
Classification Example Spam Filter
Dear Sir. First, I must solicit your confidence
in this transaction, this is by virture of its
nature as being utterly confidencial and top
secret.
  • Input x email
  • Output y spam or ham
  • Setup
  • Get a large collection of example emails, each
    labeled spam or ham
  • Note someone has to hand label all this data!
  • Want to learn to predict labels of new, future
    emails
  • Features The attributes used to make the ham /
    spam decision
  • Words FREE!
  • Text Patterns dd, CAPS
  • Non-text SenderInContacts

TO BE REMOVED FROM FUTURE MAILINGS, SIMPLY REPLY
TO THIS MESSAGE AND PUT "REMOVE" IN THE
SUBJECT. 99 MILLION EMAIL ADDRESSES FOR ONLY
99
Ok, Iknow this is blatantly OT but I'm beginning
to go insane. Had an old Dell Dimension XPS
sitting in the corner and decided to put it to
use, I know it was working pre being stuck in the
corner, but when I plugged it in, hit the power
nothing happened.
9
A Spam Filter
Dear Sir. First, I must solicit your confidence
in this transaction, this is by virture of its
nature as being utterly confidencial and top
secret.
  • Naïve Bayes spam filter
  • Data
  • Collection of emails, labeled spam or ham
  • Note someone has to hand label all this data!
  • Split into training, held-out, test sets
  • Classifiers
  • Learn on the training set
  • (Tune it on a held-out set)
  • Test it on new emails

TO BE REMOVED FROM FUTURE MAILINGS, SIMPLY REPLY
TO THIS MESSAGE AND PUT "REMOVE" IN THE
SUBJECT. 99 MILLION EMAIL ADDRESSES FOR ONLY
99
Ok, Iknow this is blatantly OT but I'm beginning
to go insane. Had an old Dell Dimension XPS
sitting in the corner and decided to put it to
use, I know it was working pre being stuck in the
corner, but when I plugged it in, hit the power
nothing happened.
10
Naïve Bayes for Text
  • Bag-of-Words Naïve Bayes
  • Predict unknown class label (spam vs. ham)
  • Assume evidence features (e.g. the words) are
    independent
  • Generative model
  • Tied distributions and bag-of-words
  • Usually, each variable gets its own conditional
    probability distribution P(FY)
  • In a bag-of-words model
  • Each position is identically distributed
  • All positions share the same conditional probs
    P(WC)

Word at position i, not ith word in the
dictionary!
11
General Naïve Bayes
  • General probabilistic model
  • General naive Bayes model
  • We only specify how each feature depends on the
    class
  • Total number of parameters is linear in n

Y x Fn parameters
Y
F1
Fn
F2
n x F x Y parameters
Y parameters
12
Example Spam Filtering
  • Model
  • What are the parameters?
  • Where do these tables come from?

ham 0.66 spam 0.33
the 0.0156 to 0.0153 and 0.0115 of
0.0095 you 0.0093 a 0.0086 with
0.0080 from 0.0075 ...
the 0.0210 to 0.0133 of 0.0119 2002
0.0110 with 0.0108 from 0.0107 and
0.0105 a 0.0100 ...
Counts from examples!
13
Spam Email Example
  • Bag of Words
  • Representation of documents
  • Counts the frequency of words
  • Hello I will say Hello Hello(2) I (1) Will(1)
    Say(1)
  • Spam
  • Offer is secret
  • Click secret link
  • Secret sports link
  • Ham
  • Play sports today
  • Went play sports
  • Secret sports event
  • Sport is today
  • Sport costs money

14
Spam Email Example
  • Quiz 1 Size of vocabulary ?
  • Quiz 2 P(Spam) ?
  • Maximum likelihood P(data)s3(1-s)5
  • Quiz 3 P(secretSpam)? P(secretHam)?
  • Quiz 4 Bayes Network, how many parameters
    needed?
  • Quiz 5 Message MSports, P(SpamM)
  • Quiz 6 MSecret is secret, P(SpamM)
  • Quiz 7 MToday is secret, P(SpamM)

15
Generalization and Overfitting
  • Raw counts will overfit the training data!
  • Unlikely that every occurrence of minute is
    100 spam
  • Unlikely that every occurrence of seriously is
    100 ham
  • What about all the words that dont occur in the
    training set at all? 0/0?
  • In general, we cant go around giving unseen
    events zero probability
  • At the extreme, imagine using the entire email as
    the only feature
  • Would get the training data perfect (if
    deterministic labeling)
  • Wouldnt generalize at all
  • Just making the bag-of-words assumption gives us
    some generalization, but isnt enough
  • To generalize better we need to smooth or
    regularize the estimates

16
Estimation Smoothing
  • Maximum likelihood estimates
  • Problems with maximum likelihood estimates
  • If I flip a coin once, and its heads, whats the
    estimate for P(heads)?
  • What if I flip 10 times with 8 heads?
  • What if I flip 10M times with 8M heads?
  • Basic idea
  • We have some prior expectation about parameters
    (here, the probability of heads)
  • Given little evidence, we should skew towards our
    prior
  • Given a lot of evidence, we should listen to the
    data

r
g
g
17
Estimation Laplace Smoothing
  • Laplaces estimate (extended)
  • Pretend you saw every outcome k extra times
  • Whats Laplace with k 0?
  • k is the strength of the prior
  • Laplace for conditionals
  • Smooth each condition independently

H
H
T
18
Spam Email Example (Laplace)
  • Quiz 1 Size of vocabulary ?
  • Quiz 2 P(Spam) ?
  • Maximum likelihood P(data)s3(1-s)5
  • Quiz 3 P(secretSpam)? P(secretHam)?
  • Quiz 4 Bayes Network, how many parameters
    needed?
  • Quiz 5 Message MSports, P(SpamM)?
  • Quiz 6 MSecret is secret, P(SpamM)?
  • Quiz 7 MToday is secret
  • K1
  • P(Spam)(31)/(82)2/5 P(Ham)?
  • P(todaySpam)? P(todayHam)?
  • P(SpamM)?

19
Tuning on Held-Out Data
  • Now weve got two kinds of unknowns
  • Parameters the probabilities P(YX), P(Y)
  • Hyperparameters, like the amount of smoothing to
    do k
  • How to learn?
  • Learn parameters from training data
  • Must tune hyperparameters on different data
  • Why?
  • For each value of the hyperparameters, train and
    test on the held-out (validation)data
  • Choose the best value and do a final test on the
    test data

20
How to Learn
  • Data labeled instances, e.g. emails marked
    spam/ham
  • Training set
  • Held out (validation) set
  • Test set
  • Features attribute-value pairs which
    characterize each x
  • Experimentation cycle
  • Learn parameters (e.g. model probabilities) on
    training set
  • Tune hyperparameters on held-out set
  • Compute accuracy on test set
  • Very important never peek at the test set!
  • Evaluation
  • Accuracy fraction of instances predicted
    correctly
  • Overfitting and generalization
  • Want a classifier which does well on test data
  • Overfitting fitting the training data very
    closely, but not generalizing well to test data

Training Data
Held-Out Data
Test Data
21
What to Do About Errors?
  • Need more features words arent enough!
  • Have you emailed the sender before?
  • Have 1K other people just gotten the same email?
  • Is the sending information consistent?
  • Is the email in ALL CAPS?
  • Do inline URLs point where they say they point?
  • Does the email address you by (your) name?
  • Can add these information sources as new
    variables in the Naïve Bayes model

22
A Digit Recognizer
  • Input x pixel grids
  • Output y a digit 0-9

23
Example Digit Recognition
  • Input x images (pixel grids)
  • Output y a digit 0-9
  • Setup
  • Get a large collection of example images, each
    labeled with a digit
  • Note someone has to hand label all this data!
  • Want to learn to predict labels of new, future
    digit images
  • Features The attributes used to make the digit
    decision
  • Pixels (6,8)ON
  • Shape Patterns NumComponents, AspectRatio,
    NumLoops

0
1
2
1
??
24
Naïve Bayes for Digits
  • Simple version
  • One feature Fij for each grid position lti,jgt
  • Boolean features
  • Each input maps to a feature vector, e.g.
  • Here lots of features, each is binary valued
  • Naïve Bayes model

25
Learning Model Parameters
1 0.1
2 0.1
3 0.1
4 0.1
5 0.1
6 0.1
7 0.1
8 0.1
9 0.1
0 0.1
1 0.01
2 0.05
3 0.05
4 0.30
5 0.80
6 0.90
7 0.05
8 0.60
9 0.50
0 0.80
1 0.05
2 0.01
3 0.90
4 0.80
5 0.90
6 0.90
7 0.25
8 0.85
9 0.60
0 0.80
26
Problem Overfitting
2 wins!!
27
Outline
  • Machine Learning
  • Classification (Naïve Bayes)
  • Regression (Linear, Smoothing)
  • Linear Separation (Perceptron, SVMs)
  • Non-parametric classification (KNN)

28
Regression
  • Start with very simple example
  • Linear regression
  • What you learned in high school math
  • From a new perspective
  • Linear model
  • y m x b
  • hw(x) y w1 x w0
  • Find best values for parameters
  • maximize goodness of fit
  • maximize probability or minimize loss

29
Regression Minimizing Loss
  • Assume true function f is given by y f
    (x) m x b noisewhere noise is normally
    distributed
  • Then most probable values of parametersfound by
    minimizing squared-error lossLoss(hw ) Sj
    (yj hw(xj))2

30
Regression Minimizing Loss
31
Regression Minimizing Loss
Linear algebra givesan exact solution to the
minimization problem
y w1 x w0
32
Linear Algebra Solution
33
Linear Regression
  • X 3, 6, 4, 5
  • Y 0, -3, -1, -2
  • f(x)w1xw0
  • w1-1, w0 3
  • Minimizing quadratic loss
  • Recaculate w0,w1
  • Another quiz X(2,4,6,8), Y(2,5,5,8)

34
Dont Always Trust Linear Models
35
Regression by Gradient Descent
w any point loop until convergence do for
each wi in w do wi wi a ?
Loss(w)
? wi
36
Multivariate Regression
  • You learned this in math class too
  • hw(x) w x w xT Si wi xi
  • The most probable set of weights, w(minimizing
    squared error)
  • w (XT X)-1 XT y

37
Overfitting
  • To avoid overfitting, dont just minimize loss
  • Maximize probability, including prior over w
  • Can be stated as minimization
  • Cost(h) EmpiricalLoss(h) ? Complexity(h)
  • For linear models, consider
  • Complexity(hw) Lq(w) ?i wi q
  • L1 regularization minimizes sum of abs. values
  • L2 regularization minimizes sum of squares

38
Regularization and Sparsity
Cost(h) EmpiricalLoss(h) ? Complexity(h)
L1 regularization
L2 regularization
39
Outline
  • Machine Learning
  • Classification (Naïve Bayes)
  • Regression (Linear, Smoothing)
  • Linear Separation (Perceptron, SVMs)
  • Non-parametric classification (KNN)

40
Linear Separator
-
41
Perceptron
-
42
Perceptron Algorithm
  • Start with random w0, w1
  • Pick training example ltx,ygt
  • Update (a is learning rate)
  • w1 ? w1a(y-f(x))x
  • w0 ? w0a(y-f(x))
  • Converges to linear separator (if exists)
  • Picks a linear separator (a good one?)

43
What Linear Separator to Pick?
-
44
What Linear Separator to Pick?
Maximizes the margin
-
Support Vector Machines
45
Non-Separable Data?
X2
  • Not linearly separable for x1, x2
  • What if we add a feature?
  • x3 x12x22
  • See Kernel Trick

-
X1
46
Outline
  • Machine Learning
  • Classification (Naïve Bayes)
  • Regression (Linear, Smoothing)
  • Linear Separation (Perceptron, SVMs)
  • Non-parametric classification (KNN)

47
Nonparametric Models
  • If the process of learning good values for
    parameters is prone to overfitting,can we do
    without parameters?

48
Nearest-Neighbor Classification
  • Nearest neighbor for digits
  • Take new image
  • Compare to all training images
  • Assign based on closest example
  • Encoding image is vector of intensities
  • Whats the similarity function?
  • Dot product of two images vectors?
  • Usually normalize vectors so x 1
  • min 0 (when?), max 1 (when?)

49
Earthquakes and Explosions
Using logistic regression (similar to linear
regression) to do linear classification
50
K1 Nearest Neighbors
Using nearest neighbors to do classification
51
K5 Nearest Neighbors
Even with no parameters, you still have
hyperparameters!
52
Curse of Dimensionality
Average neighborhood size for 10-nearest
neighbors, n dimensions, 1M uniform points
53
Curse of Dimensionality
Proportion of points that are within the outer
shell, 1 of thickness of the hypercube
Write a Comment
User Comments (0)
About PowerShow.com