Machine Learning Overview Tamara Berg CS 560 Artificial Intelligence Many slides throughout the...
-
Upload
caren-randall -
Category
Documents
-
view
229 -
download
0
Transcript of Machine Learning Overview Tamara Berg CS 560 Artificial Intelligence Many slides throughout the...
1
Machine Learning Overview
Tamara Berg
CS 560 Artificial Intelligence
Many slides throughout the course adapted from Svetlana Lazebnik, Dan Klein, Stuart Russell, Andrew Moore, Percy Liang, Luke Zettlemoyer, Rob Pless, Killian Weinberger, Deva Ramanan
Announcements
• HW3 due Oct 29, 11:59pm
Machine learning
Image source: https://www.coursera.org/course/ml
Machine learning
• Definition– Getting a computer to do well on a task
without explicitly programming it– Improving performance on a task based on
experience
Big Data!
What is machine learning?
• Computer programs that can learn from data
• Two key components– Representation: how should we represent the data?– Generalization: the system should generalize from its
past experience (observed data items) to perform well on unseen data items.
Types of ML algorithms
• Unsupervised– Algorithms operate on unlabeled examples
• Supervised– Algorithms operate on labeled examples
• Semi/Partially-supervised– Algorithms combine both labeled and unlabeled
examples
Clustering
– The assignment of objects into groups (aka clusters) so that objects in the same cluster are more similar to each other than objects in different clusters.
– Clustering is a common technique for statistical data analysis, used in many fields, including machine learning, data mining, pattern recognition, image analysis and bioinformatics.
Euclidean distance, angle between data vectors, etc
K-means clustering
• Want to minimize sum of squared Euclidean distances between points xi and their nearest cluster centers mk
k
ki
ki mxMXDcluster
clusterinpoint
2)(),(
K-means
0 0.5 1 1.5 2 2.5 30
0.5
1
1.5
2
2.5
3
3.5
4
xx
x
x’s – indicate initialization for 3 cluster centers
Iterate until convergence:
1) Compute assignment of data points to cluster centers
2) Update cluster centers with mean of assigned points
Flat vs Hierarchical Clustering
• Flat algorithms– Usually start with a random partitioning of docs into
groups– Refine iteratively– Main algorithm: k-means
• Hierarchical algorithms– Create a hierarchy– Bottom-up: agglomerative– Top-down: divisive
Hierarchical clustering strategies
• Agglomerative clustering• Start with each data point in a separate cluster• At each iteration, merge two of the “closest” clusters
• Divisive clustering• Start with all data points grouped into a single cluster• At each iteration, split the “largest” cluster
PProduces a hierarchy of clusterings
P
P
P
P
Divisive Clustering
• Top-down (instead of bottom-up as in Agglomerative Clustering)
• Start with all data points in one big cluster
• Then recursively split clusters
• Eventually each data point forms a cluster on its own.
Flat or hierarchical clustering?
• For high efficiency, use flat clustering (e.g. k means)
• For deterministic results: hierarchical clustering
• When a hierarchical structure is desired: hierarchical algorithm
• Hierarchical clustering can also be applied if K cannot be predetermined (can start without knowing K)
Clustering in Action – example from computer vision
Recall: Bag of Words Representation
· Represent document as a “bag of words”
Bag of features for images
· Represent images as a “bag of words”
Bags of features for image classification
1. Extract features
1. Extract features
2. Learn “visual vocabulary”
Bags of features for image classification
1. Extract features
2. Learn “visual vocabulary”
3. Represent images by frequencies of “visual words”
Bags of features for image classification
…
1. Feature extraction
2. Learning the visual vocabulary
…
2. Learning the visual vocabulary
Clustering
…
2. Learning the visual vocabulary
Clustering
…Visual vocabulary
Example visual vocabulary
Fei-Fei et al. 2005
3. Image representation
…..
fre
que
ncy
Visual words
Types of ML algorithms
• Unsupervised– Algorithms operate on unlabeled examples
• Supervised– Algorithms operate on labeled examples
• Semi/Partially-supervised– Algorithms combine both labeled and unlabeled
examples
Example: Sentiment analysis
http://gigaom.com/2013/10/03/stanford-researchers-to-open-source-model-they-say-has-nailed-sentiment-analysis/
http://nlp.stanford.edu:8080/sentiment/rntnDemo.html
Example: Image classification
apple
pear
tomato
cow
dog
horse
input desired output
http://yann.lecun.com/exdb/mnist/index.html
Example: Seismic data
Body wave magnitude
Sur
face
wav
e m
agni
tude
Nuclear explosions
Earthquakes
The basic classification framework
y = f(x)
• Learning: given a training set of labeled examples {(x1,y1), …, (xN,yN)}, estimate the parameters of the prediction function f
• Inference: apply f to a never before seen test example x and output the predicted value y = f(x)
output classification function
input
Naïve Bayes Classification
The class that maximizes:
Example: Image classification
Car
Input: Image Representation Classifier (e.g. Naïve Bayes, Neural Net, etc
Output: Predicted label
Example: Training and testing
• Key challenge: generalization to unseen examples
Training set (labels known) Test set (labels unknown)
Some classification methods
106 examples
Nearest neighbor
Shakhnarovich, Viola, Darrell 2003Berg, Berg, Malik 2005…
Neural networks
LeCun, Bottou, Bengio, Haffner 1998Rowley, Baluja, Kanade 1998…
Support Vector Machines and Kernels Conditional Random Fields
McCallum, Freitag, Pereira 2000Kumar, Hebert 2003…
Guyon, VapnikHeisele, Serre, Poggio, 2001…
Classification … more soon
Types of ML algorithms
• Unsupervised– Algorithms operate on unlabeled examples
• Supervised– Algorithms operate on labeled examples
• Semi/Partially-supervised– Algorithms combine both labeled and unlabeled
examples
Supervised learning has many successes
• recognize speech,• steer a car,• classify documents• classify proteins• recognizing faces, objects in images• ...
Slide Credit: Avrim Blum
However, for many problems, labeled data can be rare or expensive.
Unlabeled data is much cheaper.Need to pay someone to do it, requires special testing,…
Slide Credit: Avrim Blum
However, for many problems, labeled data can be rare or expensive.
Unlabeled data is much cheaper.
Speech
Images
Medical outcomes
Customer modeling
Protein sequences
Web pages
Need to pay someone to do it, requires special testing,…
Slide Credit: Avrim Blum
However, for many problems, labeled data can be rare or expensive.
Unlabeled data is much cheaper.
[From Jerry Zhu]
Need to pay someone to do it, requires special testing,…
Slide Credit: Avrim Blum
Need to pay someone to do it, requires special testing,…
However, for many problems, labeled data can be rare or expensive.
Unlabeled data is much cheaper.
Can we make use of cheap unlabeled data?
Slide Credit: Avrim Blum
Semi-Supervised LearningCan we use unlabeled data to augment a
small labeled sample to improve learning?
But unlabeled data is missing the most important info!!
But maybe still has useful regularities that
we can use.
But…But…But…Slide Credit: Avrim Blum