Contents
Preface
1.
History and Current Status of the
Webmind AI Project
I. Conceptual
Foundations
2. A Brief and Biased History of AI
In
which it is explained that very few others have ever attempted to create a real
AI, an autonomous digital mind; and the conceptual errors of those ambitious
few in history are reviewed.
3.
Mind as a Web of Pattern
The
philosophy of mind underlying the Webmind AI Engine is presented: mind as a
self-organizing system of agents that embody, recognize and create
patterns. Terms like consciousness and
intelligence are defined and a consistent conceptual perspective on the mind is
sketched, suitable to serve as a foundation for digital mind design.
4.
Key Aspects of Webmind AI
A
run-down of the various AI modules in the system is given, pointing out key
conceptual issues that have been resolved in regard to each one: inference,
natural language processing, nonlinear dynamical attention allocation,
causality, self, feelings and goals, evolutionary learning, etc.
5. Knowledge Representation Issues
The
representation of knowledge in terms of nodes and links is explained in
moderate detail, with a focus on inheritance and similarity links. Powerful tools like multiple-target links,
links that point to links, and nodes referring to combinations of links are
described loosely, with practical examples.
6.
A Hybrid Approach to Natural
Language Processing
The
difficult puzzle of getting a nonhuman mind to understand human language is
discussed. Conceptual justification is
given for a hybrid approach, in which experiential learning, building-in of
linguistic rules, and statistical language learning all contribute and work
together.
7. Experiential Interaction
The
structures and dynamics by which a mind interacts with a world (and in doing so
builds it self) are reviewed. This
includes perception and action schema, goals and feelings, modeling of self and
others, short-term memory, and so forth.
8. Experiential Interactive Learning
Minds
learn and grow through experiencing a common perceivable/manipulable world with
other minds. This observation is
explored in some detail, and its consequences for a nonhuman digital
intelligence are discussed. A specific
experiential learning environment for digital intelligence (the Baby Webmind
world) is proposed.
9.
Emergence, the Global Brain, and
the Singularity
The
role of “real AI” technology in the big picture of the evolution of humanity,
technology and intelligence is considered.
The emergence of mind modules to form mind is one in a sequence of
dramatic emergences, including the coming emergence of synergetic intelligence
across the Internet as a holistic system and between the Internet and the
people who use it. The Singularity, in
which an AI becomes rapidly smarter and smarter by rewriting its own source
code for improved intelligence, is discussed and the practical aspects of
making the Webmind AI Engine do this (via emergent interactions with other
software system like supercompilers) are reviewed.
II. Formal
Treatments of System Components
10. Knowledge Representation for Inference
A
detailed mathematical treatment of inheritance, similarity, properties, and so
forth. Basically, this explains how you
can map Webmind AI Engine nodes and links into formal mathematics – not
standard predicate logic, but a variety of uncertain term logic that is better
suited for modeling inference as it takes place in a real mind.
11. First-Order Inference
Deductive,
inductive and abductive inference are expressed in terms of simple operations by which inheritance and similarity links combine to form new ones. Uncertain knowledge is dealt with using
truth-value functions derived from Pei Wang’s NARS system.
12. Higher-Order Inference
HOI
deals with propositions about propositions rather than about terms. In practice, this means it deals with links that
point to links instead of nodes, and with CompoundRelationNodes that contain
logical combinations of links. While
this sounds abstract, it actually underlies our approach to many apparently
subsymbolic features of mind, such as schema learning (learning how to do
things) and perceptual pattern recognition.
Basically, HOI is just a fancy mathematical way of talking about general
pattern recognition, an observation that bridges the overblown
symbolic/subsymbolic AI gap. The truth
value functions in HOI are similar to those in first-order inference.
13. Probabilistic Term Logic
An
alternate set of formulas for computing truth values in uncertain inference is
presented. PTL is founded on Bayes’
Theorem, but is still more similar to NARS than to Bayesian networks, which are
not suitable for embedding in a self-organizing mind. The advantages of PTL versus NARS truth value formulas in
different situations have yet to be empirically determined.
14. Importance Updating
Attention
is allocated to parts of the mind via nonlinear dynamics. Neural-net-like activation spreading is one
part of this, and involves not only standard nodes and links but also
higher-order relationships. The
normalization of link parameters to give a balanced treatment to links of
different types is not a trivial matter, and gets at the heart of the “dynamic
semantic network” design, which walks the line between symbolic and subsymbolic
AI. The Importance Updating Function
is defined, which determines a node or link’s importance (and hence its
propensity to get thought about) based on a number of factors including its
activation, its relation to current system goals, and its
Vorzeituberlegungsnutzen (the value the system has recently obtained from
thinking about it).
15. Halos and Wanderers
Dynamical
mechanisms for building relationships between nodes and links are
described. These mechanisms are less
precise than inference but are more “holistic” and “intuitive” in nature, e.g.
stating that two items are similar if the system as a whole reacts similarly to
them. A number of such mechanisms are
described, including some that are neural-nettish in nature, and one that
utilizes a combination of Hebbian learning with probabilistic inference. These mechanisms should be viewed as
producing useful associations that guide inference in appropriate directions.
16. Evolutionary Programming
Genetic
programming is a well-tested AI technique, which we use for several purposes in
the AI Engine, including the detection of causal patterns in numerical data,
and the evolution of CompoundRelationNodes embodying schema that the system can
enact. In many cases, the fitness
evaluation for mind-embedded-GP involves the action of other mental functions
such as reasoning, so that evolutionary programming is never more part of the
story. Basically it’s a good way of
generating candidate mind-structures in various contexts; and reasoning is a
good way of evaluating these candidates.
17.
Inference Control
How
does the inference engine decide which inferences to carry out at any given
time? This is done by a combination of
mechanisms, involving evolutionary programming (evolution of
CompoundRelationNodes expressing likely patterns) and the use of halos.
18. Schema Learning
Learning
procedures for doing things is one of the most crucial and most complex aspects
of the AI Engine. Our approach combines
HOI with genetic programming in a special way.
This is something we have not yet experimented with extensively due to
resource restrictions. Ultimately this
will become the key aspect of the system’s intelligence -- as all of the
system’s own functions are represented as schema and then optimized by the
system itself, the AI Engine becomes a self-modifying system.
19. Feature Structure Parsing
The
hybrid approach to natural language that we’ve taken demands that we use a set
of NL data structures and dynamics that are hospitable both to experiential,
statistical and inferential learning of language, and to important of
linguistic knowledge from external databases.
After extensive experimentation we’ve settled on a lexicalized feature
structure unification grammar approach, which seems to satisfy all our
requirements, fitting in well both with the AI Engine data structures and
dynamics and with conventional computational linguistics.
20. Numerical Data Analysis
Many
specialized techniques for analyzing numerical data obviously exist; the trick is
to use these in a way that produces relationships useful for processing by the
AI Engine’s general-purpose learning algorithms. Along these lines we discuss some AI-Engine-friendly methods for
doing things like computing similarity between numerical data sets and
predicting the future of a numerical time series.
III. System
Design
21. High-Level Architecture Issues
The
general nature of the problem of creating a software implementation of the AI
Engine is discussed. Strategies for
dealing with distributed and SMP processing are reviewed, as are the
requirements placed on a programming language by this kind of application.
22. Architecture Overview
The
software architecture of the Webmind AI Engine is reviewed in moderate detail,
explaining how the AI designs from Part II of the book are incorporated into a
single distributed large-scale software system. Two implementation designs are described, one that implements all
aspects of the system in terms of a general-purpose Java agents system, and
another that uses this Java agents system for many purposes, but implements the
“cognitive core” of the system using C and using a less mind-ish but more
efficient implementation strategy for dealing with cognitive dynamics.
IV. Applications
24. Exportation of Document Indexing Rules
The
primary practical application of the AI Engine at the present time is via “rule
exportation”: the AI Engine exports document indexing rules that are used by
search and categorization applications to allow them to index documents by
“concept relevance vectors” rather than “term frequency vectors.” This allows superior precision and recall
and robustness in many cases. This
application leverages very little of the overall intelligence of the system,
but is nonetheless valuable from a pragmatic business point of view.
25. Financial
Market Prediction
Webmind Market Predictor uses nonlinear prediction
together with some text analysis routines originally prototyped in the AI Engine,
to predict daily financial markets based on a combination of numerical data and
textual news. The details of MP are being kept under very careful wraps
at the moment. This chapter reprints a
paper published on MP in 1999, and gives some more recent results from
real-time forward trading.
26. Future Applications
A handful of near-term applications for various AI Engine components are outlined, and some practical applications for a full-on conversational AI Engine that takes 100’s of machines to support itself are also discussed.