What is Machine Learning?

kettledoctorΤεχνίτη Νοημοσύνη και Ρομποτική

15 Οκτ 2013 (πριν από 3 χρόνια και 9 μήνες)

97 εμφανίσεις

What is Machine Learning?


``changes in [a] system that ... enable [it] to do the same task or

tasks drawn from the same population more efficiently and more

effectively the next time.'' (Simon 1983)

There are two ways that a system can improve:


1. By acquiring new knowledge


acquiring new facts


acquiring new skills


2. By adapting its behavior


solving problems more accurately


solving problems more efficiently


Why do we want machine learning?

Saves Time



learning is the hallmark of intelligence; many would argue that a
system that cannot learn is not intelligent.


without learning, everything is new; a system that cannot learn
is not efficient because it re
-
derives each solution and
repeatedly makes the same mistakes.


Why is learning possible?


Because there are regularities in the world…and they are
observerable!

For example


Which of these things
is NOT like the others? Why?

And…which of these things is not like the
other? And why?

So, what did we do…


We made a list of features … or functions….or goals…that
described one of the pictures



We then tested this list by looking at each picture to see if they
had those features, functions, or goals…



If all of the pictures tested yes (except one), then we concluded
that that was the one that was different, else we re
-
did the list of
features…

Now, let’s go back and look at our
previous knowledge
-
based
systems…Remember our rule
-
based
system

1.
If (?x has hair)



feature



then (?x is mammal)


5.
If (?x is mammal)


and (?x eats grass)


feature


then (?x is herbivores)



8.
If (?x is herbivores)




and (?x has black/white
color
)

feature


then (?x is
zebra)




Similarly….the object (semantic net)
system

Mammal hasa hair



feature


Herbivores isa mammal

Eats grass = yes



feature


Zebra isa herbivores

Color

black & white



feature


Machine learning systems ultimately
“produce” knowledge used by the
knowledge
-
based systems



Expert Systems


Explicit features
-
> infer object



Machine Learning Systems


Lots of examples of the object
“learn” the features
!

How does machine learning work ?

Inductive learning

is reasoning from a set of examples to produce
general rules or procedures. The resulting program should be
able to reason about new instances, but there is no guarantee
that it will be correct.


The learning program is given training instances and the answers
for the instances. After looking at a lot of training examples, the
program should be able to come up with the list of features that
“mostly” describe the item.

For example


concept learning

A form of supervised learning in which data is classified according to one
or more predefined categories.


The learning program is given examples of the form
(x

i

, y

i
)

and tries to
learn a function

f
such that
f(x
i

) = y

i

for all
i. f

should be general
enough to apply to values of

x
that were not among the training
instances.


Name


Description



Concept


ferda


has
-
hair


eats
-
grass


black
-
white



zebra


bert


has
-
hair


eats
-
grass


gray


zebra


bobo


bald


eats
-
bugs


blue



not zebra


The system should learn:

feathers


black
-
white or gray


eats
-
grass


has
-
hair



zebra

http://www.rci.rutgers.edu/~cfs/305_html/Induction/induction_toc.html



Different Varieties of Machine
Learning Techiques

Concept Learning
--

just did this

Clustering Algorithms
--

uses clustering techniques from statistics

Connectionist Algorithms

Genetic Algorithms
--

we’ve seen this

Explanation based Learning

Transformation based Learning

Reinforcement Learning

Case based Learning

Macro Learning

Evaluation Functions

Cognitive Learning Architectures

Constructive Induction

Discovery Systems


Connectionist Algorithms


Connectionist models

(also called
neural networks
) are inspired by the
interconnectivity of the brain.



Connectionist networks typically consist of many nodes that are highly
interconnected. When a node is activated, it sends signals to other
nodes so that they are activated in turn.



Using layers of nodes allows connectionist models to learn fairly
complex functions.



Connectionist models are typically quite amenable to parallelism, but it
can sometimes be difficult to understand their behavior.


Examples:


http://www.neuro.sfc.keio.ac.jp/



Genetic Algorithms


Genetic algorithms are inspired by biological mechanisms related to
genetics, such as ``recombination'' (crossing over, or inversion), and
random mutations, and natural selection.



In general, genetic algorithms begin with a population of individuals and
repeatedly apply genetic operators to selected individuals. After each
iteration, the individuals are evaluated with respect to a ``fitness''
function and only the most ``fit'' individuals survive into the next
generation.



The goal of a genetic algorithms is to find examples that maximize
``fitness'' (e.g., the features that are most useful for classification).



Genetic algorithms are often used to solve optimization problems.


Example

http://www.aridolan.com/ga/gaa/gaa.html#Examples




Reinforcement Learning



Similar to connectionist models.



Reinforcement learning is often used for control problems. The
model produces a series of responses, and then a
reinforcement signal is provided by an external source as
feedback.



However, the learning system only gets delayed reinforcement.
It is not told whether each individual response is correct or
incorrect , it is only told whether the final result is positive or
negative!



Reinforcement learning tries to learn from temporally successive
predictions


http://www.eecs.umich.edu/~baveja/explain.html



Cognitive Learning Architectures


Several ``cognitive learning architectures'' have been proposed
by researchers who believe that almost all human problem
solving occurs using a single learning mechanism.


The goal of these architectures is to create a framework that
closely models human problem solving and can be used to
solve many different types of problems.


The SOAR system (to be discussed) uses ``chunking'' to save
collections of rules that are often applied together (similar to
macro operators)


SOAR also adopts the philosophy that every rule that we learn
stays in memory forever!

http://ai.eecs.umich.edu/soar/


Discovery Systems


``Discovery'' is usually described as trying to find new things. In
this sense, all learning systems are discovery systems.


However, the goal of ``discovery systems'' is to discover things
that were previously unknown to humans. They are typically
designed by trying to mimic the ways that scientists and
inventors have historically made discoveries.



One of the most famous AI programs was a system called AM
which rediscovered many well known mathematical concepts
and at least one new concept that was not previously known to
its designer. AM used the idea of ``interestingness'' to guide its
search for new concepts.



http://wwwhomes.doc.ic.ac.uk/~sgc/hr/index.html


http://www.doc.ic.ac.uk/~sgc/research/





Current trends



Reinforcement learning, probabilistic methods, automatic bias
selection, inductive logic programming (mostly in Europe),
applications to robotics.



The machine learning (ML) community has also become
increasingly concerned with evaluation.



ML systems must be formally and carefully evaluated to ensure
that the results are statistically meaningful.



ML systems are encouraged to use community data so that
different techniques can be evaluated on the same data sets.



Baselines are also important to demonstrate that the system is
learning a nontrivial concept.


Other important ideas in machine
learning


Hybrid systems that use a combination of several different
learning methods.



Concept drift: in real world applications, the target concept often
changes over time. It would be helpful of machine learning
systems could detect automatically when the concept seems to
have changed so the system can be retrained.



The idea of focusing on the utility of learned rules is important
from a practical perspective. Some rules may be correct, but are
very expensive to apply and may not be used very often.