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.
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.
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.