Machine Learning
Godfather to the Singularity
Traditional programming
Machine learning
ComputerData
ProgramOutput
ComputerData
OutputProgram
Machine Learning Applications
Visual Search, Waterfalls
User’s Query:
System’s Response:
Yes Yes Yes NO!User Feedback:
Example: Boundary Detection
• Is this a boundary?
Learning a classifier
Given some set of features with corresponding labels, learn a function to predict the labels from the features
x x
xx
x
x
x
x
oo
o
o
o
x2
x1
Sample Applications• Web search • Computational biology• Finance• E-commerce• Space exploration• Robotics• Information extraction• Social networks• Debugging• [Your favorite area]
Other Applications of ML
• The Google search engine uses numerous machine learning techniques– Spelling corrector: “spehl korector”, “phonitick spewling”,
“Brytney Spears”, “Brithney Spears”, …– Grouping together top news stories from numerous sources
(news.google.com)– Analyzing data from over 3 billion web pages to improve
search results– Analyzing which search results are most often followed, i.e.
which results are most relevant
Other Applications of ML (cont’d)
• ALVINN, developed at CMU, drives autonomously on highways at 70 mph– Sensor input only a single, forward-facing camera
Other Applications of ML (cont’d)
• SpamAssassin for filtering spam e-mail• Data mining programs for:
– Analyzing credit card transactions for anomalies– Analyzing medical records to automate diagnoses
• Intrusion detection for computer security• Speech recognition, face recognition• Biological sequence analysis• Each application has its own representation for features,
learning algorithm, hypothesis type, etc.
How Do We Learn?Human Machine
Memorize k-Nearest Neighbors,Case-based learning
Observe someone else, then repeat
Supervised Learning, Learning by Demonstration
Keep trying until it works (riding a bike)
Reinforcement Learning
20 Questions Decision Tree
Pattern matching (faces, voices, languages)
Pattern Recognition
Guess that current trend will continue (stock market, real estate prices)
Regression
General Inductive Learning(Scientific Method)
Hypothesis
Observations Feedback, more observations
Refinement
Induction, generalization Actions,
guesses
What is Machine Learning?
• Building machines that automatically learn from experience– Important research goal of artificial intelligence
• Applications:– Data mining programs that learn to detect fraudulent
credit card transactions– Programs that learn to filter spam email– Autonomous vehicles that learn to drive on public
highways
Why use Machine Learning?
• We cannot write the program ourselves• We don’t have the expertise (circuit design)• We cannot explain how (speech recognition)• Problem changes over time (packet routing)• Need customized solutions (spam filtering)
Machine Learning
• Optimize a criterion (reach a goal)using example data or past experience
• Infer or generalize to new situations
– Statistics: inference from a (small) sample– Probability: distributions and models– Computer Science:
• Algorithms: solve the optimization problem efficiently• Data structures: represent the learned model
Slide: Erik Sudderth
Technologies• Supervised learning
– Decision tree induction– Inductive logic programming– Instance-based learning– Bayesian learning– Neural networks– Support vector machines (SVM)– Model ensembles– Learning theory
• Unsupervised learning– Clustering– Dimensionality reduction
Regression Methods
• k-Nearest Neighbors• Support Vector Machines• Neural Networks• Bayes Estimator
Unsupervised Learning
• No labels or feedback• Learn trends, patterns
• Applications– Customer segmentation: e.g., targeted mailings– Image compression– Image segmentation: find objects
• This course– k-means and EM clustering– Hierarchical clustering
Reinforcement Learning
• Learn a policy: sequence of actions• Delayed reward
• Applications– Game playing– Balancing a pole– Solving a maze
• This course– Temporal difference learning
Hypothesis Type: Artificial Neural Network
• Designed to simulate brains
• “Neurons” (processing units) communicate via connections, each with a numeric weight
• Learning comes from adjusting the weights
Perceptron(Simple Neural Net)
• A single layer feed-forward network consists of one or more output neurons, each of which is connected with a weighting factor wij to all of the inputs xi.
xi
b
b
Machine Learning vs. Expert Systems
• ES: Expertise extraction tedious; ML: Automatic
• ES: Rules might not incorporate intuition, which might mask true reasons for answer– E.g. in medicine, the reasons given for diagnosis x
might not be the objectively correct ones, and the expert might be unconsciously picking up on other info
– ML: More “objective”
Machine Learning vs. Expert Systems (cont’d)
• ES: Expertise might not be comprehensive, e.g. physician might not have seen some types of cases
• ML: Automatic, objective, and data-driven– Though it is only as good as the available data