Download CS 9633 Knowledge Discovery and Data Mining

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Computer simulation wikipedia , lookup

Natural computing wikipedia , lookup

Artificial intelligence wikipedia , lookup

Pattern recognition wikipedia , lookup

Machine learning wikipedia , lookup

Theoretical computer science wikipedia , lookup

Transcript
CS 9633
Machine Learning
Spring 2003
Dr. Susan Bridges
Adapted from notes by Tom Mitchell
http://www-2.cs.cmu.edu/~tom/mlbook-chapter-slides.html
Computer Science Department
CS 9633 KDD
Outline
• What is machine learning?
• What is a well-defined learning
problem?
• An example: learning to play checkers
• What questions should we ask about
machine learning?
Computer Science Department
CS 9633 KDD
Why Machine Learning?
• Recent progress in algorithms and theory
• Growing flood of data from many sources
–
–
–
–
World-wide web
Transaction data
Remotely sensed data
Genomic and proteomic data
• Computational power now available
• Budding industry
Computer Science Department
CS 9633 KDD
Machine Learning Research
at MSU
•
•
•
•
•
•
•
Reinforcement Learning
Neural Networks
Genetic Algorithms
Data mining algorithms (fuzzy data mining)
Artificial immune systems
Clustering
And others
Computer Science Department
CS 9633 KDD
Application areas studied at
MSU
• Computer Security
– Intrusion detection
– Forensics
• Bioinformatics
– Genomics
– Proteomics
• Web indexing
Computer Science Department
CS 9633 KDD
Where is this headed?
• Today
– First generation algorithms
» Neural networks
» Decisions trees
» Regression, …
– Applied to well-formatted databases
• Opportunities for Tomorrow
– Learn across full mixed-media data
– Learn across multiple internal databases, web,
newsfeeds,etc.
– Learn by active experimentation
– Learn decisions rather than predictions
– Cumulative, life-long learning
– Programming languages with learning embedded
Computer Science Department
CS 9633 KDD
Relevant Disciplines
•
•
•
•
•
•
•
•
•
Artificial intelligence
Bayesian methods
Computational complexity theory
Control theory
Information theory
Philosophy
Psychology and neurobiology
Statistics
…
Computer Science Department
CS 9633 KDD
What is a learning problem?
• Learning = Improving with experience at
some task
– Improve over task T,
– With respect to performance measure P,
– Based on experience E.
• Example: Learn to play checkers
– T: Play checkers (legal moves)
– P: % of games won in a world tournament
– E: opportunity to play against self
Computer Science Department
CS 9633 KDD
Other examples
• Learning to plan a party
• Learning to detect intruders in a
computer system
• Learning to identify genes in a DNA
sequence
Computer Science Department
CS 9633 KDD
Other Choices To Be Made
•
•
•
•
What type of experience?
What exactly should be learned?
How shall it be represented?
What specific algorithm to learn it?
Computer Science Department
CS 9633 KDD
Type of Training Experience
• Direct or indirect?
• Teacher or not?
A problem: is training experience
representative of performance goal?
Computer Science Department
CS 9633 KDD
Choose the Target Function
• ChooseMove: Board  Move ??
• V: Board  R ??
•…
Computer Science Department
CS 9633 KDD
Possible Definition of Target
Definition V
•
•
•
•
If b is a final board state that is won, then V(b) = 100
If b is a final board state that is lost, then V(b) = -100
If b is a final board state that is drawn, then V(b) = 0
If b is not a final state in the game, then V(b) = V(b’),
where b’ is the best final board that that can be
achieved starting from b and playing optimally until
the end of the game.
This gives correct values, but is not operational
Computer Science Department
CS 9633 KDD
Choose Representation for
Target Function
•
•
•
•
Collection of rules?
Neural network?
Polynomial function of board features?
…
Computer Science Department
CS 9633 KDD
A Representation for
Learned Function
Vˆ (b)  w0  w1bp(b)  w2 rp(b)  w3bk (b)  w4rk (b)  w5bt (b)  w6 rt (b)
bp(b): number of black pieces on board b
rp(b): number of red pieces on b
bk(b): number of black kings on b
rk(b): number of red kings on b
bt(b): number of red pieces threatened by black
(i.e., which can be taken on black’s next turn)
rt(b): number of back pieces threatened by red
Computer Science Department
CS 9633 KDD
Obtaining Training
Examples
V (b) :
Vˆ (b) :
the true target function
the learned function
Vtrain (b) : the training value
Example of a training instance
bp(b)  3, rp (b)  0, bk (b)  1, rk (b)  0, bt (b)  0, rt (b)  0 ,100
One rule for estimating training values:
Vtrain(b)  Vˆ (Successor (b))
Computer Science Department
CS 9633 KDD
Choose Weight Tuning Rule
LMS Weight update rule:
Do repeatedly:
Select a training example b at random
1. Computer error(b)
error (b)  Vtrain(b)  Vˆ (b)
2. For each board feature fi, update weight wi:
wi  wi    f i error (b)
 is some small constant, say 0.1, to moderate the rate of
learning
Computer Science Department
CS 9633 KDD
Final Decision
New problem
(initial game board)
Hypothesis
Experiment
Generator
Performance
System
(V-hat)
Generalizer
Critic
Solution trace
Training Examples
(game history)
<bi, Vtrain(bi)>
Computer Science Department
CS 9633 KDD
Some Issues in Machine
Learning
• What algorithms can approximate functions well (and
when)?
• How does the number of training examples influence
accuracy?
• How does complexity of hypothesis representation
impact it?
• How does noisy data influence accuracy?
• What are the theoretical limits of learnability?
• How can prior knowledge of the learner help?
• What clues can we get from biological learning
systems?
• How can systems alter their own representations?
Computer Science Department
CS 9633 KDD