Metody Inteligencji Obliczeniowej
Download
Report
Transcript Metody Inteligencji Obliczeniowej
Towards comprehensive foundations
of Computational Intelligence
Włodzisław Duch
Department of Informatics, Nicolaus Copernicus
University, Toruń, Poland
School of Computer Engineering,
Nanyang Technological University, Singapore
Google: Duch
ICONIP HK 11/2006
Plan
• What is Computational intelligence (CI) ?
•
•
•
•
•
•
•
What can we learn?
Why solid foundations are needed.
Similarity based framework.
Transformations and heterogeneous systems.
Meta-learning.
Beyond pattern recognition.
Scaling up intelligent systems to human level
competence?
What is Computational Intelligence?
The Field of Interest of the Society shall be the theory, design,
application, and development of biologically and linguistically motivated
computational paradigms emphasizing neural networks, connectionist
systems, genetic algorithms, evolutionary programming, fuzzy systems,
and hybrid intelligent systems in which these paradigms are contained.
Artificial Intelligence (AI) was established in 1956!
AI Magazine 2005, Alan Mackworth:
In AI's youth, we worked hard to establish our paradigm by vigorously
attacking and excluding apparent pretenders to the throne of intelligence,
pretenders such as pattern recognition, behaviorism, neural networks,
and even probability theory. Now that we are established, such
ideological purity is no longer a concern. We are more catholic, focusing
on problems, not on hammers. Given that we do have a comprehensive
toolbox, issues of architecture and integration emerge as central.
CI definition
Computational Intelligence. An International Journal (1984)
+ 10 other journals with “Computational Intelligence”,
D. Poole, A. Mackworth & R. Goebel,
Computational Intelligence - A Logical Approach.
(OUP 1998), GOFAI book, logic and reasoning.
CI should:
• be problem-oriented, not method oriented;
• cover all that CI community is doing now, and is likely to do in future;
• include AI – they also think they are CI ...
CI: science of solving (effectively) non-algorithmizable
problems.
Problem-oriented definition, firmly anchored in computer science.
AI: focused problems requiring higher-level cognition, the rest of CI is
more focused on problems related to perception and control.
The future of computational intelligence ...
What can we learn?
Good part of CI is about learning.
What can we learn?
Neural networks are universal approximators and evolutionary
algorithms solve global optimization problems – so everything
can be learned? Not quite ...
Duda, Hart & Stork, Ch. 9, No Free Lunch + Ugly Duckling Theorems:
• Uniformly averaged over all target functions the expected error for all
learning algorithms is the same.
• Averaged over all target functions no learning algorithm yields
generalization error that is superior to any other.
• There is no problem-independent or “best” set of features.
“Experience with a broad range of techniques is the best insurance for
solving arbitrary new classification problems.”
Data mining packages
GhostMiner, data mining tools from our lab + Fujitsu:
http://www.fqspl.com.pl/ghostminer/
• Separate the process of model building (hackers) and knowledge
discovery, from model use (lamers) => GM Developer & Analyzer
• No free lunch => provide different type of tools for knowledge
•
discovery: decision tree, neural, neurofuzzy, similarity-based, SVM,
committees, tools for visualization of data.
Support the process of knowledge discovery/model building and
evaluating, organizing it into projects.
• Many other interesting DM packages of this sort exists:
•
Weka, Yale, Orange, Knime ...
168 packages on the-data-mine.com list!
We are building Intemi, completely new tools.
Surprise! Almost nothing can be learned using such tools!
What DM packages do?
Hundreds of components ... transforming, visualizing ...
Visual “knowledge flow” to
link components, or script
languages (XML) to define
complex experiments.
Yale 3.3: type
# components
Data preprocessing
74
Experiment operations
35
Learning methods
114
Metaoptimization schemes
17
Postprocessing
5
Performance validation
14
Visualization, presentation, plugin extensions ...
What NN components really do?
Vector mappings from the input space to hidden space(s) and to the
output space + adapt parameters to improve cost functions.
Hidden-Output mapping done by MLPs:
T = {Xi}
H = {hj(T)}
training data, N-dimensional.
X image in the hidden space, j =1 .. NH-dim.
... more transformations in hidden layers
Y = {yk(H )}
X image in the output space, k =1 .. NC-dim.
ANN goal:
data image H in the last hidden space should be linearly separable;
internal representations will determine network generalization.
But we never look at them!
Why solid foundations are needed
Hundreds of components ... thousands of combinations ...
Our treasure box is full! We can publish forever!
But what would we really like to have?
Press the button and wait for the truth!
Computer power is with us, meta-learning should
find all interesting data models
= sequences of transformations/procedures.
Many considerations: optimal cost solutions, various costs of using
feature subsets; models that are simple & easy to understand; various
representation of knowledge: crisp, fuzzy or prototype rules,
visualization, confidence in predictions ...
Principles: information compression
Neural information processing in perception and cognition: information
compression, or algorithmic complexity.
In computing: minimum length (message, description) encoding.
Wolff (2006): cognition and computation as compression
by multiple alignment, unification and search. Analysis and production
of natural language, fuzzy pattern recognition, probabilistic reasoning
and unsupervised inductive learning.
So far only models for sequential data and 1D alignment.
k
k
Information compression: encoding new information in
terms of old has been used to define the measure of
syntactic and semantic information (Duch, Jankowski
1994); based on the size of the minimal graph
representing a given data structure or knowledge-base
specification, thus it goes beyond alignment.
Graphs of consistent concepts
Learn new
concepts in terms
of old; using large
semantic network
and add new
concepts linking
them to known.
Disambiguate
concepts by
spreading
activation and
selecting those
that are
consistent with
already active
subnetworks.
Similarity-based framework
(Dis)similarity:
• more general than feature-based description,
• no need for vector spaces (structured objects),
• more general than fuzzy approach (F-rules are reduced to P-rules),
• includes nearest neighbor algorithms, MLPs, RBFs, separable
function networks, SVMs, kernel methods and many others.
Similarity-Based Methods (SBMs) are organized in a framework:
p(Ci|X;M) posterior classification probability or y(X;M) approximators,
models M are parameterized in increasingly sophisticated way.
A systematic search (greedy, beam, evolutionary) in the space of all
SBM models is used to select optimal combination of parameters and
procedures, opening different types of optimization channels, trying to
discover appropriate bias for a given problem.
Results: several candidate models, very limited version gives best
results in 7 out of 12 Stalog problems.
SBM framework
• Pre-processing: from objects (cases) O to features X or directly to
•
•
•
•
•
•
•
•
(diss)similarities D(O,O’).
Calculation of similarity between features d(xi,yi) and objects D(X,Y).
Reference (or prototype) vector R selection/creation/optimization.
Weighted influence of references vectors G(D(Ri,X)), i=1..k.
Functions/procedures to estimate p(C|X;M) or y(X;M).
Cost functions E[DT;M] and model selection/validation procedures.
Optimization procedures for the whole model Ma.
Search control procedures to create more complex models Ma+1.
Creation of ensembles of (local, competent) models.
• M={X(O), d(.,.), D(.,.), k, G(D), {R}, {pi(R)}, E[.], K(.), S(.,.)}, where:
• S(Ci,Cj) is a matrix evaluating similarity of the classes;
a vector of observed probabilities pi(X) instead of hard labels.
The kNN model p(Ci|X;kNN) = p(Ci|X;k,D(.),{DT});
the RBF model: p(Ci|X;RBF) = p(Ci|X;D(.),G(D),{R}), etc.
Meta-learning in SBM scheme
k-NN 67.5/76.6%
67.5/76.6%
+selection,
67.5/76.6 %
+d(x,y);
Canberra 89.9/90.7 %
+k opt; 67.5/76.6 %
+ si =(0,0,1,0,1,1);
71.6/64.4 %
+d(x,y) + si=(1,0,1,0.6,0.9,1);
Canberra 74.6/72.9 %
sel. or opt k;
+d(x,y) + selection;
Canberra 89.9/90.7 %
Start from kNN, k=1, all data & features, Euclidean distance, end with a
model that is a novel combination of procedures and parameterizations.
Transformation-based framework
Extend SBM adding fine granulation of methods and relations between
them to enable meta-learning by search in the model space.
For example, first transformation (layer) after pre-processing:
•
•
•
•
PCA networks, with each node computing principal component.
LDA networks, each node computes LDA direction (including FDA).
ICA networks, nodes computing independent components.
KL, or Kullback-Leibler networks with orthogonal or non-orthogonal
components; max. of mutual information is a special case
• c2 and other statistical tests for dependency to aggregate features.
• Factor analysis networks, computing common and unique factors.
• Matching pursuit networks for signal decomposition.
Evolving Transformation Systems (Goldfarb 1990-2006), unified
paradigm for inductive learning and structural representations.
Heterogeneous systems
Problems requiring different scales or types.
2-class problems, two situations:
C1 inside the sphere, C2 outside.
MLP: at least N+1 hyperplanes, O(N2) parameters.
RBF: 1 Gaussian, O(N) parameters.
C1 in the corner defined by (1,1 ... 1) hyperplane, C2 outside.
MLP: 1 hyperplane, O(N) parameters.
RBF: many Gaussians, O(N2) parameters, poor approx.
Combination: needs both hyperplane and hypersphere!
Logical rule: IF x1>0 & x2>0 THEN C1 Else C2
is not represented properly by MLP and RBF!
Different types of functions in one model, first step beyond inspirations
from single neurons => heterogenous models.
Heterogeneous everything
Homogenous systems: one type of “building blocks”, same type of
decision borders, ex: neural networks, SVMs, decision trees, kNNs
Committees combine many models together, but lead to complex
models that are difficult to understand.
Ockham razor: simpler systems are better.
Discovering simplest class structures, inductive bias of the data,
requires Heterogeneous Adaptive Systems (HAS).
HAS examples:
NN with different types of neuron transfer functions.
k-NN with different distance functions for each prototype.
Decision Trees with different types of test criteria.
1. Start from large networks, use regularization to prune.
2. Construct network adding nodes selected from a candidate pool.
3. Use very flexible functions, force them to specialize.
Taxonomy of NN activation functions
Taxonomy of NN output functions
Perceptron: implements logical rule x> for x with Gaussian uncertainty.
Taxonomy - TF
HAS decision trees
Decision trees select the best feature/threshold value for univariate
and multivariate trees:
X i k or T X; W,k Wi X i k
i
Decision borders: hyperplanes.
Introducing tests based on La Minkovsky metric.
T X; R, R X R a X i Ri
1/ a
R
i
For L2 spherical decision border are produced.
For L∞ rectangular border are produced.
Many choices, for example Fisher Linear Discrimination decision trees.
For large databases first clusterize data to get candidate references R.
SSV HAS DT example
SSV HAS tree in GhostMiner 3.0, Wisconsin breast cancer (UCI)
699 cases, 9 features (cell parameters, 1..10)
Classes: benign 458 (65.5%) & malignant 241 (34.5%).
Single rule gives simplest known description of this data:
IF ||X-R303|| < 20.27 then malignant
else benign
coming most often in 10xCV
97.4% accuracy (18 errors); good prototype for malignant!
Simple thresholds, that’s what MDs like the most!
Best 10CV around
97.5±1.8% (Naïve Bayes + kernel, or SVM)
SSV without distances: 96.4±2.1%
C 4.5 gives
94.7±2.0%
Several simple rules of similar accuracy but different specificity or
sensitivity may be created using HAS DT.
Need to select or weight features and select good prototypes.
How much can we learn?
Linearly separable or almost separable problems are relatively
simple – deform or add dimensions to make data separable.
How to define “slightly non-separable”?
There is only separable and the vast realm of the rest.
Difficult case: complex logic
For n bits there are 2n nodes; in extreme cases such as parity all
neighbors are from the wrong class, so localized networks will fail.
Achieving linear separability without special architecture may be
impossible.
Projection on 111 ... 111 gives clusters with 0, 1, 2 ... n bits.
Easy and difficult problems
Linear separation: good goal if simple topological
deformation of decision borders is sufficient.
Linear separation of such data is possible in higher dimensional
spaces; this is frequently the case in pattern recognition problems.
RBF/MLP networks with one hidden layer solve such problems.
Difficult problems: disjoint clusters, complex logic.
Continuous deformation is not sufficient; networks with localized
functions need exponentially large number of nodes.
Boolean functions: for n bits there are K=2n binary vectors that can be
represented as vertices of n-dimensional hypercube.
Each Boolean function is identified by K bits.
BoolF(Bi) = 0 or 1 for i=1..K, for 2K Boolean functions.
Ex: n=2 functions, vectors {00,01,10,11},
Boolean functions {0000, 0001 ... 1111}, decimal numbers 0 to 15.
Boolean functions
n=2, 16 functions, 12 separable, 4 not separable.
n=3, 256 f, 104 separable (41%), 152 not separable.
n=4, 64K=65536, only 1880 separable (3%)
n=5, 4G, but << 1% separable ... bad news!
Existing methods may learn some non-separable functions,
but most functions cannot be learned !
Example: n-bit parity problem; many papers in top journals.
No off-the-shelf systems are able to solve such problems.
For all parity problems SVM is below base rate!
Such problems are solved only by special neural architectures or
special classifiers – if the type of function is known.
n
But parity is still trivial ... solved by y cos bi
i 1
Learning trajectories
• Take weights Wi from iterations i =1..K;
PCA on Wi covariance matrix usually captures 95-98% variance,
so error function in 2D shows realistic learning trajectories.
Papers by
M. Kordos
& W. Duch
Instead of local minima large flat valleys are seen – why?
Data far from decision borders has almost no influence, the main reduction
of MSE is achieved by increasing ||W||, sharpening sigmoidal functions.
RBF for XOR
Is RBF solution with 2 hidden Gaussians nodes possible?
Typical architecture: 2 input – 2 Gaussians – 1 linear output, EM training
50% errors, but there is perfect separation - not a linear separation!
Network knows the answer, but cannot say it ...
Single Gaussian output node may solve the problem.
Output weights provide reference hyperplanes (red and green
lines), not the separating hyperplanes like in case of MLP.
3-bit parity
For RBF parity problems are difficult; 8 nodes solution:
1) Output activity;
2) reduced output,
summing activity of 4
nodes.
3) Hidden 8D space
activity, near ends of
coordinate versors.
4) Parallel coordinate
representation.
8 nodes solution has zero generalization, 50% errors in L1O.
3-bit parity in 2D and 3D
Output is mixed, errors are at base level (50%), but in the
hidden space ...
Conclusion: separability in the hidden space is perhaps too much to
desire ... inspection of clusters is sufficient for perfect classification;
add second Gaussian layer to capture this activity;
train second RBF on the data (stacking), reducing number of clusters.
Goal of learning
If simple topological deformation of decision borders is sufficient
linear separation is possible in higher dimensional spaces,
“flattening” non-linear decision borders; this is frequently the case
in pattern recognition problems.
RBF/MLP networks with one hidden layer solve the problem.
For complex logic this is not sufficient; networks with localized
functions need exponentially large number of nodes.
Such situations arise in AI problems, real perception, object
recognition, text analysis, bioinformatics ...
Linear separation is too difficult, set an easier goal.
Linear separation: projection on 2 half-lines in the kernel space:
line y=WX, with y<0 for class – and y>0 for class +.
Simplest extension: separation into k-intervals.
For parity: find direction W with minimum # of intervals, y=W.X
k-separability
Can one learn all Boolean functions?
Problems may be classified as 2-separable (linear separability);
non separable problems may be broken into k-separable, k>2.
s(by+1)
X1
X2
y=W.X
X3
X4
Blue: sigmoidal
neurons with threshold,
brown – linear neurons.
+
1
1
s(by+2)
+
1
+
1
+
1
+
1
+
1
1
s(by+4)
Neural architecture for
k=4 intervals, or
4-separable problems.
k-sep learning
Try to find lowest k with good solution, start from k=2.
• Assume k=2 (linear separability), try to find good solution;
• if k=2 is not sufficient, try k=3; two possibilities are C+,C,C+ and
C, C+, C this requires only one interval for the middle class;
• if k<4 is not sufficient, try k=4; two possibilities are C+, C, C+, C
and C, C+, C, C+ this requires one closed and one open interval.
Network solution is equivalent to optimization of specific cost function.
E W,1 , 2 C X , C s W X 1 s W X 2 1
X
C X , C 1 s W X 1 s W X 2
X
Simple backpropagation solved almost all n=4 problems for k=2-5
finding lowest k with such architecture!
Parity-like problems up to n=8 work fine.
2
2
A better solution?
What is needed to learn Boolean functions?
• cluster non-local areas in the X space, use W.X
• capture local clusters after transformation, use G(W.X)
SVM cannot solve this problem! Number of directions W that should be
considered grows exponentially with size of the problem n.
Constructive neural network solution:
1. Train the first neuron using G(W.X) transfer function on whole
data T, capture the largest pure cluster TC .
2. Train next neuron on reduced data T 1=TTC
3. Repeat until all data is handled; they creates transform. X=>H
4. Use linear transformation H => Y for classification.
Beyond pattern recognition
A step towards problems requiring combinatorial reasoning: learning
from partial observations.
We have observed unicorns, and know/guess/infer that:
•
•
•
•
If the unicorn is mythical, then it is immortal.
But if it is not mythical, then it is a mortal mammal.
If the unicorn is either immortal or a mammal, then it is horned.
The unicorn is magical if it is horned.
Can you draw any firm conclusions about unicorns?
Variables: mythical, mortal, mammal, horned, magical.
Using intuitive computing – search based on neural heuristics –
the answer may be found quickly ...
Scaling-up to human level ...
Recent discussions (see also our Friday panel):
• Roadmap to human level intelligence + special session – WCCI 2006
• Cognitive Systems, ICANN panel 2007
• Books: Challenges to CI (with J Mandziuk); Roadmap (with J Taylor)
The roadmap to human-level intelligence should define steps and
challenges on the way to human level of competence.
Neuromorphic, mesoscopic, hybrid neuro-symbolic architectures?
Designs for artificial brains, blueprints for billion neuron cortex models,
scalable neuromorphic approaches.
Cognitive/affective architectures, artificial minds with human
characteristics require integration of perception, affect and cognition,
large-scale semantic memories, implementing control/attention.
Is human-style creativity using CI possible?
What is the role of CI in brain-like computing systems?
Summary
• CI is a branch of science dealing with problems for which effective
•
•
•
•
•
•
•
algorithms do not exist; it includes AI, machine learning and all the rest.
Similarity-based framework enables meta-learning as search in the model
space, heterogeneous systems add fine granularity.
Transformation-based learning extends that, formalizing component-based
approach to DM, automating discovery of interesting models.
Known and new learning methods result from such framework.
No off-shelf classifiers are able to learn difficult Boolean functions.
Visualization of activity of the hidden neurons shows that frequently perfect
but non-separable solutions are found despite base-rate outputs.
Linear separability is not the best goal of learning, other targets that allow
for easy handling of final non-linearities should be defined.
Simplest extension is to isolate non-linearity in form of k intervals, breaking
the non-separable class of problems into k-separable classes.
Many interesting new methods arise from this line of thinking.
Thank
you
for
lending
your
ears
...
Google: Duch => Papers & presentations