machine learning godfather to the singularity. traditional programming machine learning computer...

24
Machine Learning Godfather to the Singularity

Upload: olivia-graff

Post on 31-Mar-2015

217 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

Machine Learning

Godfather to the Singularity

Page 2: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

Traditional programming

Machine learning

ComputerData

ProgramOutput

ComputerData

OutputProgram

Page 3: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

Machine Learning Applications

Page 4: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

Visual Search, Waterfalls

User’s Query:

System’s Response:

Yes Yes Yes NO!User Feedback:

Page 5: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

Example: Boundary Detection

• Is this a boundary?

Page 6: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

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

Page 7: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

Sample Applications• Web search • Computational biology• Finance• E-commerce• Space exploration• Robotics• Information extraction• Social networks• Debugging• [Your favorite area]

Page 8: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

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

Page 9: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

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

Page 10: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

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.

Page 11: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

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

Page 12: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

General Inductive Learning(Scientific Method)

Hypothesis

Observations Feedback, more observations

Refinement

Induction, generalization Actions,

guesses

Page 13: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

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

Page 14: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

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)

Page 15: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

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

Page 16: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

Slide: Erik Sudderth

Page 17: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

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

Page 18: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

Regression Methods

• k-Nearest Neighbors• Support Vector Machines• Neural Networks• Bayes Estimator

Page 19: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

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

Page 20: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

Reinforcement Learning

• Learn a policy: sequence of actions• Delayed reward

• Applications– Game playing– Balancing a pole– Solving a maze

• This course– Temporal difference learning

Page 21: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

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

Page 22: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

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

Page 23: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

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”

Page 24: Machine Learning Godfather to the Singularity. Traditional programming Machine learning Computer Data Program Output Computer Data Output Program

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