The present invention pertains, in general, to systems for emulating function of the human brain.
The present invention disclosed and claimed herein, in on aspect thereof, comprises an emulated intelligence system, which includes an input for receiving information in the form of a query and a parsing system for parsing the query into grammatical elements. A database of individual concepts is included, each concept defining relationships between the concept and other concepts in the database. A conceptualizing system defines a list of related concepts associated with each of the parsed elements of the query and the embodied relationships associated therewith and a volition system then determines if additional concepts are associated with an action that may be associated with pre-stored criteria. An action system is then provided for defining an action to be taken based upon the relationships defined by the conceptualizing system.
For a more complete understanding, reference is now made to the following description taken in conjunction with the accompanying Drawings in which:
Referring now to the drawings, wherein like reference numbers are used herein to designate like elements throughout, the various views and embodiments of the technology detail of the emulated brain are illustrated and described, and other possible embodiments are described. The figures are not necessarily drawn to scale, and in some instances the drawings have been exaggerated and/or simplified in places for illustrative purposes only. One of ordinary skill in the art will appreciate the many possible applications and variations based on the following examples of possible embodiments.
The human being is a complex entity. The many aspects of the mind are a formidable challenge to emulate, particularly when one considers the more arcane aspects of it such as culture. This document defines the basic means by which Neuric Technologies, LLC has defined and created an emulation for the human mind.
One cannot hope to have human-like response in a machine if he is not also emulating elements such as emotion, need, personality and temperament. These are key drivers for the outcome of any human-to-human interaction, or for machine-to-human interaction.
In his “Follow the Child” program at IBM, Dr. Samuel Adams correctly identifies emulation of emotions as essential to emulating the human.
The EBM of the human brain has been implemented in software as a “DLL”. It interacts in text with humans and expresses itself in English. Of necessity, it therefore has a front-end language parser, a “neuron”-based internal memory and systems of volition, emotion and personality. It is capable of being extended to evaluate the personality of the individual, though at present such information is pre-established for the brain.
The present embodiment in software was done with the view towards embedded systems. The brain has the potential to operate on an embedded processor such as an ARM inside an ASIC or FPGA, with suitable parts of internal operations handled in directly in hardware.
The EBM provides for the aspects as illustrated in
Some questions to be answered here include:
To avoid confusion and to dispel assumptions, the ‘40-year’ question should be addressed.
It must be stated up front that this is a substantive departure from traditional paradigms and thinking in the areas of Artificial Intelligence (AI) and computational psychology. This brain uses a non-classical form of neural network, has feelings and emotion, and a configured temperament and personality.
Each of these areas would be a substantial work in itself, using classical paradigms and techniques. The underlying organization and method of integrating these areas is what makes such a system possible. A key to this is the notion of the neuron used here and how it differs markedly from the classical view.
A common traditional view of neurons derives from a biological model and attempts to mimic biological neurons—is bio-mimetic. The human body behaves so well, it is a good idea to look to it for indicators of how to organize similar-behaving systems.
Classical “neurons” derive from biologically-suggested structures. They are often organized into the system shown in
A common goal of classical systems is to generate a set of desired results when presented with a set of input conditions. Inside the box is typically a set of “neurons” arranged into several layers or sets, often an input layer, a “hidden” layer and an output layer. Each neuron in the system is typically a summing junction with isolation, and the feedback system works to create weighted connections between neurons of the various layers. As many neurons as required to solve the problem are used. The neurons may be implemented through analog or digital means.
Questions to ask:
The disclosed Emulated Brain Model (EBM) uses the paradigm of one neuron-one concept. That is, knowledge in the brain is represented by neurons, one for each possible concept. In the EBM, a “neuron” is simply a place-holder that represents a concept. It takes its meaning from the other neurons it is connected to. Except for the handling of emotions the handling of expectations in experiences, the idea of “firing” a neuron is rarely used in the EBM.
The EBM supports the following aspects of the human brain:
The system of neurons embodied by the EBM effectively permit situational-dependent weighting of inter-neuron relational connections. The arrangement of neuron types (6, give-or-take), neuron valuation and aging to determine whether to retain or kill a given neuron, and multiple forms of memory bring great capability with them.
Difference from Parser Systems
How is the EBM different from Natural Language Parsers and other semantic systems? A “parser” is a system that performs evaluations on the text of sentences and extracts intention and relevant information from that sentence. An example of one is found in Microsoft Word®, where it is used to check your grammar and sentence structure. That example teams up with a spell-checker to proof you work.
The parser portion of the brain is not essentially different from other systems. The EBM uses a parser but is not a parser. It takes information extracted by the parser to establish meaning, context, intent and possibly future direction of action. Also subsequent to parsing, the brain integrates the impact of emotion, temperament, inference and other aspects of volition to think and carry out tasks, learning, and other processes.
Computer Logic Differs from Thought
Computer logic is programmed by a human. It is a predictable sequence of steps and decisions. The Logic does not occur without a first intervention by a human to define and create it.
By contrast, thought freely roams, is unconstrained and relatively unpredictable. The EBM operates in an essentially un-programmed manner. It follows heuristics based on temperament and other aspects, but primarily derives its direction from training, needs and the outcomes of personal interaction with it.
As human people, how does the EBM handle such things as small talk, chit-chat with others? It selects our own set of interests and knows the general types of interests others have. We select an area (hopefully with reasonable guidance!) as a topic and ask someone else what they think or feel about it. As they are speaking, it picks up on topical items they expressed interest in. As their conversation ebbs, it takes one of those topics and either discusses it or asks them questions about it.
The EBM has the same capabilities. Just as humans, it has lists of topics in its back pocket for such purposes, the EBM also has them, as a part of the startup training process.
Emotions are very useful in the EBM, and in many aspects make decision processes easier. It implements them as an ordinary neuron, not substantively different than others. As with all neurons, emotions derive their conceptual use more from what they represent, their conceptual meaning from what other neurons they are connected to.
Emotion neurons rely on two elements to make them work:
That is, many subsystems in the EBM fire/incite the emotions, and many use the current levels of emotion with thresholds or range limits for their process. This permits ready expression of degrees of nuance. For example, if confidence is below norms, a response to some issue or imperative sentence may be prefaced with, “I might not be able to do that,” or if confidence is high, with “Certainly!” or “Sure . . . ”.
Expressions of presently-engaged emotion shows up in a variety of ways:
These are a sampling of indicators of emotion. Many other similar methods are used throughout the brain, particularly for the fonx, Monologue, Dialogue and Volition subsystems.
So, the answer is a clear yes to the question of whether or not can be represented in meaningful ways. Emotions are not only important, but are crucial to human-like expression. This is on of a number of fundamental differences between the EBM and parser-only or parser-plus-logic systems.
Is the EBM Bio-Mimetic? does it Mimic Biological Systems?
Referring now to
When down-selecting “core” emotions (about 30) from a field of about 400 feelings/emotions, the endocrine system suggests a relatively small number of hormones that initiate or carry out the expression of emotion. As discussed elsewhere, all 400 feelings are used, but as degrees of expression of the core emotions.
Also suggested by biology is the firing of neurons, although this process only used for a tiny percentage of neurons. Any neuron in the system can be fired, or turned on by some incremental amount. This is done internally with a two-stage integrator that is described in more detail in the chapter on Firing of Neurons. Each emotion has separate rates at which they turn on and of.
Typical rise and fall times are 0.15 and 20 seconds, respectively, but any neuron can have its timings custom-configured. Depending on what is happening to drive the emotions, they may be re-fired multiple times before they have yet decayed.
In this manner, a given neuron may be fired many times but never exceeds 100% (saturated) firing. Because of the two-tier integrators, output simply remains saturated longer when multiple inputs would have taken it beyond 100% firing.
How the EBM Differs from Other “Post-AI” Systems
Dr. Ray Kurzweil has a series of books and talks on AI in which he points to a “singularity” to come in the development of AI. He is the Admiral Eddie Rickenbacker of AI. He loosely prophecies that by 2025 we will have “real AI”.
The magic potion for Ray's prediction is based on the development of faster processors and an extrapolation similar to Moore's Law. We believe his underlying premise to be flawed: That AI is and must necessarily be a power-hungry monster satisfied only with faster silicon (or gallium arsenide).
One can conjecture that his premise derives from the fact that Lisp has been an early and useful means of modeling aspects of the brain. It certainly makes the development of an ontology (storage base for knowledge) possible. It is unwieldy in large systems and numbingly slow. Make the support for Lisp faster and you have the potential for a brain. We consider that irrelevant.
Considering speakers and topics at the subsequent “Singularity Conferences on AI,” there is a strong trend: AI of the last 40 years has been application-specific if successful. AI has a bad name and does not deliver. What is needed is an Artificial General Intelligence (AGI).
So, who is out there and doing what? Typical of the systems are:
Of these types of systems, the “edge-based” systems are regarded as those closest to what the EBM is using, but without emotion and personality, and unknown possibilities for true volition and thought.
Unlike all other (known) systems out there except for the efforts like Dr. Samuel Adams at IBM, no one seems to have an integrated package that includes a parser on the front-end, emotion, feelings and personality and volition that is driven by it. Certainly, emotion-based systems have the potential to look like AGI, if they don't actually achieve it.
A general organization of the EBM is given in
A brief overview of the elements of this is in the sections to follow.
The unit repository of knowledge is the “neuron”. The Introduction pointed out that the EBM uses one-neuron-one-concept. That means that every neuron in the system is a place-holder for a single concept.
Learning in this system does not come by a feedback system that changes the connection strength between neurons and grows arbitrary paths between neurons. Rather, this system learns by adding un-weighted relational connections between neurons.
The neuron is built from a contiguous block of digital memory and composed of a short header block and an extendable list of connections to other neurons. Each such connection item is called a “relational connection” or “reln” and each such reln has a connection type encoded in it.
Internally, each type has a suite of supporting operations, often similar between the types. Some specialized operations return basic element such as the topic of a clump or of a complex conceptual neuron.
Insomuch as is possible, one wants to remove themselves as soon as possible from the textual domain and work entirely in the domain of neurons and their serial numbers. On receiving an incoming sentence, the Volition subsystem immediately tokenizes the words, converting them into neuron IDs (Nids). This is shown in
A sorted table (the internal organization is not relevant except for speed) holds the language words, with a single entry and output serving as the starting point for all future operations on that word, whether it has multiple meanings or not. If the word can be uses as a noun, verb, adjective or adverb (in different contexts), it still has only one root form kept in that table.
The outcome of the table is a neuron ID—a serial number—whose value never changes regardless of how a neuron may grow. A subsequent operation of various subsystems will determine if this ID has multiple meanings, and isolate the proper one. While the multiple meanings share a single entry in the text table, each has its own entry in the list of neuron pointers, one per meaning (concept). Each such concept therefore has its own unique ID.
A natural language parser dissects incoming text, extracting goodies from each sentence. The intention of the parser is not to permit us to memorize a sentence, but to permit us to move into a conceptual realm. Without a brain behind it, parsers cannot fully achieve this; they can only analyze parts of speech and grammar, extracting data.
In the big picture, the EBM Natural Language Parser is technically not different from any other good parser such as Powerset's or Cognition's. It performs some form of semantic and grammar analysis on the sentence and retrieves sentence elements in some orderly manner. Obviously, it has very implementation-specific mechanisms it uses and depends upon for operation, but the parser is still the human-interface front end of some larger effort.
Input to the parser is a set of “tokens” previously extracted from a sentence. These are Nids for either words or punctuation elements and provided to it as a tree-like list.
Output from the parser is another tree-like list that represents the most-likely parse option path for this sentence. The conceptualizes subsequently converts the list into one or more clump neurons and zero or more complex conceptual neurons.
A dedicated thread of execution then handles the parse phase from beginning to end:
Pass a sentence to the tokenizes system to convert text into Nid and punctuation tokens.
Parse the token tree into a conceptual output tree.
“Conceptualize” the parser output tree into the needed clumps and neurons, first resolving any open items such as pronouns.
At this point, the Volition system may further act on it (e.g., purposes of inference, deduction or the handling of imperatives or questions raised by the sentence.) Otherwise, the accumulation of knowledge from that sentence is fully complete.
The results of a parse sometimes may last for 20 days or so if they are not re-validated or otherwise affirmed as topical and important. A sleep process ages all such temporary/adhoc neurons to determine if the neurons should die. Those that pass this step are moved from adhoc space over to permanent clump and neuron space.
“Volition” refers to a generally autonomous thought process. It involves decision process, the ability to carry out acts, deduction, inference and related activity. In the EBM, volition is a consumer of emotional content and is also one of the instigators of emotional activity.
The organization of volition is such that it orchestrates:
Each of these is discussed in subsequent sections and chapters.
“Inference” is a generalize area that includes various forms of deduction and inference. It is applied in a number of places, but specifically following the parsing of a sentence and during the answering of questions (particularly how and why questions).
Deduction acts on known facts, where all the information is present but perhaps not in a convenient form. Inference takes existing facts and attempts to draw a conclusion from them. It may be considered a form of conjecture that says, “I don't have all the facts. But if I did, what would they look like?”
Inference is also necessary for the isolation of intent. If someone says or acts in a certain manner, there is no way to know for certain why he did that, sort of directly asking a question. In the meantime, there is nothing that can be done but to infer information based on what is known.
Inference is a repetitive process controlled by personality and current emotional conditions. It considers many aspects:
Both heuristic-based and genetic algorithm based methods are used in inference. The outcome of inference is one or more clumps, or new relational connections between existing neurons.
The “Fonx” subsystem is a centralized method for converting clump-base information into sentences. It is capable of expressing the same basic information in one of 7 different sentence styles. These include several forms of active voice, passive voice, confirmation, questions and other styles. There are six basic formats for questions alone.
Fonx is a relatively low-level operation called upon by many other subsystems to regenerate text from concepts. It is emotion-capable and alters word usage based upon emotional nuance. The handling of some forms such as “modal” words of obligation, permission, desire and such is done in “right-time,” such that the most suitable form of expression is used. The same holds true with the use of intensifiers such as “very” or “almost”.
“Monologue” is a sub-system that expounds on a specific concept. It is capable of writing a text on a subject, to the extent that it has enough training and background material to work with.
The overall method used writes an outline on the topic and then expands on the outline. It can perform the outlining on the areas of expansion, too. It follows the general rules of monologue:
The basic tool for directing the above is an analysis of the types of relational connections made between neurons. Certain types of connections are most applicable for each portion of the monologue, making the above sequence readily handled.
Dialogue is a two-way interaction between people. Dialogue is an aspect of Volition but is not an isolated subsystem of it. It is largely implemented through process neurons, a usage of conceptual neurons.
Overall, the requirements for the “informal logic” of formal refereed debate are provided for. These include such elements of topic of dialogue, the acceptance of premises or assertions, styles of interchange and rules for interchange.
Another aspect of dialogue is the general art of small talk. In the same way that a given person has a bag of tricks he/she uses to move small talk interaction with another person forward, this brain model uses similar techniques. The choices used during interaction are highly dependent upon emotions, personal options for engagement and the personal interests of both parties.
A framework has been implemented to carry out small talk and suitable methods established in the process neurons. The use and extension of both of these aspects of dialogue are ongoing propositions, similar to learning techniques with age.
Emotion is not a subsystem, per se, but a capability. It uses the neuron-firing subsystems to allow it to perform, but it is rather a process integrated into other areas such as Volition and Fonx. Its ultimate output is a level of firing that defines the degree of expression of a particular emotion.
Emotion is supported by specialized tables, lists and cross-connection with other neurons. Noted in the Introduction, emotions fire and fade over time, making them a background process. At many decision points in the brain model, specific emotions are consulted to determine the best course of action. They can be polled via the parser system as an aspect of self-awareness. E.g., “How are you feeling now?”
Emotions have significant but subtle impacts on the interchanges between brain and listener. The nuances of words chosen reflect these, to give a warm sense of interaction.
Like emotion, personality is not a subsystem, but a capability. The Gough/Heilbrun personality test (The ACL) are used to define personality. The ACL results are defined as a set of 37 parameters whose values range from 0-100%, and which define behavior. These cover specific areas such as assertiveness, deference, leadership, adapted-ness and others. The composite is a reasonable definition of behavior and consist of five individual sets of parameters, including the Transactional Analysis results such as Adapted Child.
For every individual known to the agent, an Identity neuron holds relational data that defines personality parameters for him. They default to those typical of a secure Melancholy when unknown. During conversation, when the speaker changes (e.g., a selection in an Instant Messenger input box), the profile for that person is read from his identity neuron and placed into an identity pool record for rapid access.
This readily tracks changes in personal preferences, likes, dislikes and optimal communications style, when quickly flipping between external speaker/listener changes.
Referring now to
This matter of conceptual memory exists across all cultures, because all languages intend to convey something through their use of words. The EBM uses several mechanisms to represent concepts, going from simplest to more complex means.
In the EBM, every unique concept to be known is embodied as a single neuron. While all neurons are essentially identical, the truly important information is not what is stored within them (or their specific characteristics) but how they are interconnected with other neurons. It is these connections that define a concept for what it is.
The unit repository of knowledge is the “neuron”. The Introduction pointed out that in the EBM system, we use one-neuron-one-concept. That means that every neuron in the system is a place-holder for a single concept.
Learning in this system does not come by a feedback system that changes the connection strength between neurons and grows arbitrary paths between neurons. Rather, this system learns by adding un-weighted relational connections between neurons.
The neuron is built from a contiguous block of digital memory and composed of a short header block and an extendable list of connections to other neurons. Each such connection item is called a “relational connection” or “reln” and each such reln has a connection type encoded in it.
Emotions, temperament and personality particulars are integrated with various subsystems, do not explicitly appear in
The configuration for both temperament and personality are maintained in a separate bank of identity neurons. On initial awareness of a change of external speaker, personality profile data is extracted from the relational connections in the identity neuron associated with the speaker. As with the “self” identity configuration data for the brain itself, personality parameters are stored in list objects. The current-speaker information can then be instantly swapped in and out during the conversation as it passes between individuals.
There are six basic types of neurons. Each has its separate permanent and adhoc memory spaces. Each type has a 32-bit quick-reference index that contains the neuron ID, the neuron type and other related data. These neuron types and their related quick-reference IDs are:
Neurons have the property that they grow in their interconnection set (except for clump neurons), are fixed size at the moment but can be expanded as needed. All such housekeeping is entirely transparent and automatic to the rest of the system.
Internally, each type has a suite of supporting operations, often similar between the types. Some specialized operations return basic element such as the topic of a clump or of a complex conceptual neuron.
Neurons are interconnected with other neurons through Relational Connections (“Relns) attached to their outputs. These may or may not contain weighting factors. Bidirectional connections between two neurons are implemented as two separate Relns attached between them.
There are numerous types of Relns, each applied for a specific purpose. These establish the subtle variances of relationships that may occur between two concepts (neurons).
Most neuron types contain a reln sequence named the BLOCK reln by which a set of n consecutive relns can be used as a block of data for some purpose. An enumeration in the BLOCK reln defines the type and usage of the block, while other fields indicated the length of the block.
Such BLOCK sets are used for handling comparatives, word-specific flags, lists for process neurons and many other uses unique to that neuron.
A human listener is like a parser—a translator of text—trying to get at the greater meaning that words try to convey. Text comes in through various channels and it is broken down and processed. The concepts are remembered in one of four basic types of neurons.
The EBM stores one concept per neuron, wherein the neuron is simply a place-holder for the concept. To it are attached connections to other concepts (or words) that give the neuron meaning. These simple neurons store relationships between concepts in a factual manner.
For example, the word “dog” forms a dog neuron, and that neuron is linked through a relational connection (“reln”) to a quadruped neuron that helps establish the concept of a dog. Neuron IDs for both simple and complex neurons share the same numbering space.
There are occasionally repeated references to nouns that have a qualifying adjective, such as “black dog”. A complex neuron is created to handle such cases. The complex carries all the implications of dog and the qualification of red, but without the overhead of its own copy of all the linkages.
Similarly, when referring to a specific dog (such as that dog) that has particular traits or associations, a complex neuron is created. The complex neuron retains the implications of dog but has its own additional implications. The neuron IDs for both simple and complex neurons share the same numbering space.
Another type of neuron gathers ‘clumps’ of information about an action that took place and garners with it all the history of that event. Such clumps are the repository for actions taken by nouns, and each such clump implies what can be viewed as the content of an independent clause, with a variant handling dependent clauses.
The EBM parses a sentence and outputs a single Conceptual Clump, which stores the parsed “thought”. Conceptual Clumps store the thought, not the words. In doing so, the EBM is capable of capturing a diverse collection of input streams, analyzing different streams as being conceptually equal, and providing a diverse range of sentence regeneration.
Clumps use the Predicate Argument Structure as conceptual building blocks that make up a larger portion of the basic sentence clumps. The PAS assigns “semantic” roles to traditional grammatical phrases and parts of speech. These roles are the most basic element of a conceptual clump.
Clumps, or thoughts, can be utilized at the individual sentence level, multiple sentence level, or they can even be used to represent larger pieces of a discussion or entire story. They immensely aid us in tracking the topic of sentences, paragraphs, papers, and larger medium such as movies or books.
The clump is generally used to hold the verb of the sentence, although it need not be. For convenience, clump neurons have their own numbering space.
All other neurons capture knowledge, relationships and facts, but the Experience neuron captures the emotions, timing and expectations of an experience. In this way, this neuron defines the essential concept of an experience. For convenience, the neurons IDs for experiences have their own numbering space.
Referring now to
Memory falls into two general structures, neural memory and supporting (context, generally) memory. Neurons are stored in digital memory. For sake of speed, no physical memory is freed after use. Rather, a pool-based system uses fixed-sized records that are quickly returned to a free list for later reuse. This offers maximum recycling of memory with lowest overhead possible.
The organization has the following properties:
Neurons each have a permanent serial number associated with them, although the body of the neuron may change locations in physical memory. This number serves as an ID for the neuron, and is used throughout the system. Each neuron type (of the six shown below) has its own relational connection types.
For example, the time neuron class has relational connections that support concepts of date or time (e.g., about 1500 BC or 23 nsec), or alternative forms as after lunch. As for any memory class, the relational “connection” sometimes does not reference another neuron, but may contain numeric or other relevant constant information for the neuron containing it. Further, the same neuron is used to represent a given concept. E.g., the same “circa 1500 BC” neuron is reused wherever reference to that concept is later needed.
In another example, the clump neurons may contain a compact conceptual representation equivalent to the idea, She (Virginia) usually has coffee after a leisurely lunch. Such independent clauses are not recorded verbatim, though the conceptual knowledge is preserved. (Note, that phrase requires a single clump neuron. The brain may or may-not be able to reconstruct the sentence in the same manner as originally heard, in the re-quote sense of the word.)
“Pool” memory is a link-organized arrangement of short term scratch memory. Various subsystems have their own pools that grow and shrink with local needs, but otherwise share common pools of not-in-use blocks.
Pools are used extensively as a common alternative to sorting, although they can do support sorting for use when needed.
At the most basic level, a clump takes the words and phrases of a sentence and converts them to a series of semantic roles. Three types of semantic roles drive the basic sentence clump.
The primary of these three is the PAS verb (SC_VERB). It is the main verb that assigns most of the other roles stored in the clump. It is important to note that different PAS verbs will assign different roles.
Some verbs are not able to assign certain roles, and many times the roles that are assigned are restricted in various ways. These restrictions aid us in scoring a parse, and they will help in accurate sentence reconstruction. In addition to the main verb is the SC_TASPECT. It contains the tense and aspect that the PAS assigning verb used.
The last driving role at the basic sentence level is captured with one or more of the five modal roles: SC_M_INTENT, SC_M_ABILITY, SC_M_OBLIGATION, SC_M_DESIRE and SC_M_POSSIBILITY.
With these three roles (pas, taspect, modal) we can reconstruct the verb, the tense, the aspect and the modality. Something like, “wanted to be jumping” could be captured with three role relns.
The sentence, “the rabbit may quickly jump over the carrot.” breaks down into Clump:2001 as illustrated in
Many other examples of clumps are given in the chapter on Example Conceptualizer Outputs.
The “process” neuron is a conceptual neuron (Nid) that is used for the implementation of a process. It has a text name just as a word neuron would have. Through markers placed in the name and the use of some special relns, it can be used for high-level interpretation of process steps.
The two types of process neurons are:
The alt process neuron specify indicators enclosed within { } markers to evaluate the merit or worth of the alternative. Predefined keywords, feeling and emotions names can all be evaluated in this way. For example, a way to name (by nuance) your present strongest feeling uses the following process neuron:
The seq neuron differs in that the name of another neuron can be included inside < > markers. The name inside such markers is treated as an execution of that neuron, which may be another seq or alt neuron. For sequence neurons, all steps in the sequence are carried out in turn. For the alternative neuron, only the step of highest worth is executed.
Volition carries out all the indicated seq steps one after the other unless that is precluded by tests or wait conditions specified in a referenced alt neuron preclude it. The seq neuron one of the means by which Volition can track Dialogue steps in the presence of multiple conversation partners, agendas and the like. Each such simultaneous type of activity has a separate proc-neuron pool that sequences, tracks and controls the steps and any required evaluations.
The process neuron is a great example of the value of the BLOCK neuron; each of the referenced steps is itself a neuron and is contained as an element of the block.
The primary interface between the concept of identity and parsing is the normal (conceptual) text-based neuron. How we use the text-based name(s) during parsing to establish a tentative identity can be handled in several ways:
Splitters have value but actually complicate things rather than simplify them. Consider the Nate Nid 5999 given in
A name regeneration function retrieves the name with the desired content specified by flag bits. Some valid combinations are:
The identity neuron includes among its reln definitions a suitable set of behavioral parameters as defined in the chapter on Personality. Suitable class utilities to retrieve them are also discussed there.
Development of Knowledge from Neurons
The EBM has equivalent capacity to an enormous system of millions of independent relational databases (RDBMs). By comparison, though, it performs relatively little searching for information. The interconnects between neurons enables it to be asked about something with seemingly no possible connection to the correct answer. Results are of the, “How did you do that?” class.
A ‘complex neuron’ is formed from an adjective-noun pair, and derives from the noun's neuron. For example,
How do we find “the big red truck” we happen to know. The three real trucks we happen to know of are the fire truck (a particular one), a particular “big red” truck, and the nearly irrelevant red truck I saw last week. Oh, there is also ‘the truck’, the one always out front. These are instances of trucks, colored below in pinkish-purple. (You may rightly suspect I cannot spell the color beginning in ‘f’.)
We search for big trucks by first seeing if big truck exists. If none exists, we simply tell the person we do not know of any. If one exists, we remember its' Neuron ID. Resume the search by looking at all instances of trucks (colored pale blue) in
We look at all R_INSTANCE Relns in the truck and for each one found, we look for a reference back to that big truck neuron. None of them but one (in this case) reference that neuron. We tell the person that it is “the big red truck,” possibly setting the stage by telling other identifying features or actions of it.
In some cases it is convenient to use a more bio-mimetic aspect of human brain neurons, the firing of neurons. While any neuron in the EBM can be fired, exceeding few of them use this capability, primarily relegated to emotion and experience neurons. “Firing” can be viewed as a light bulb attached to the neuron. If it is fully firing (100%), the bulb is bright. When not firing, the bulb is dark.
The purpose for firing is a simple means of measuring the collective impact of neural connections over time. For example, when the brain is insulted (and receives the insult!), the neuron representing insult is pulsed to cause it to begin firing. The firing level grows by itself to a level commensurate with the strength of the pulse, but it takes a finite time to grow—and fade—as discussed below.
Once such a neuron is fired, any connected logic or pathways having thresholds is activated or in some similar manner influenced. In this case, decisions and emotional impacts from an insult will be undertaken.
The logic described herein is not permanently connected to any neuron except for a select few such as emotions, needs and other fundamental drivers. When other neurons such as an experience neuron need to fire—and this is all transparent to the neuron and its associated logic—one of the below firing elements gets associated with that neuron. It is released from the neuron when firing stops. (This lets some of the neurons to be implemented in read-only memory.)
Internally, the above firing logic is called the “neuref”. When we discuss firing a neuron we are actually talking about firing the to-be-associated neuref.
Externally to firing neurons, the neuref ‘system’ generally appears interconnected as shown in
While most neurons are identical in this respect, some fire faster or slower than others.
There is therefore an individual attack and decay time for each neuron, as shown in
The input integrator has a signal that is the exact (but scaled) sum of the inputs from other neurons, and it raises instantaneously. This signal is applied to the output integrator that has a relatively fast attach (rise) time and a much longer decay time. Attack times normally range from 10s of milliseconds to 10s of seconds, while decay times may range from 10s of seconds to 10s of hours. In some cases such as for Expectation neurons, these time constants may extend to weeks or even months.
Non-emotion neurons fire in a range of 0-100%. For sake of convenience and signal flow, all emotion and expectation neurons fire in an output range of −100% to +100%. This permits easier implementation of inhibitory processes.
There are many cases in which the output should be artificially clamped so as to limit its full expression. This may take place, for example, in cases where a person has strong emotional reaction to a situation but exercises discipline to restrain himself.
For this reason, both the positive excursions and negative excursions of output may be clamped to some value, and these clamp values are shown in both previous
The result of the compounded integrators is illustrated in
The timing for all aspects of the neuron can be defined externally, and can be controlled through dialog with the outside world. (This same picture was shown in the Introduction.)
Emotions play an important role in the decision-making and expression process, as given by example in the Introduction chapter.
Some 400 terms that indicate types of emotion have been isolated and identified by the EBM. About 10% of these have been identified as “core” emotions, with the remainder used to indicate degrees of expression of those core emotions.
We call the core elements “emotions” and their degrees of expression “feelings”. It may not be a perfect definition but it suits the model well.
Ideally, the core emotions represent the universe of hormones released by the endocrine system to incite the sense of specific emotion, no more and no less. In practice, it appears to the EBM that the exact set chosen as “core” is not as critical as internal consistency of definition and use. If the selection of any is not optimal, inconsistency or inability to express the emotions properly becomes obvious quite soon.
Some 400 or more separate emotions can be readily identified, some of which are mutually exclusive and some of which describe markers along a range of values (i.e., a gamut of emotions). That set of emotions has been divided into some 30+ specific emotions, each having its independent gamut for which certain values are named.
Other groupings or divisions of emotions could also be used without altering the concept being described here. Additionally, other emotions exist that are not reasonably described using a gamut-based enumerated set of names.
The value of the gamut approach is simplification of emotions into closely-related categories that the brain model can describe to an interested party. Rather than stating the percentage of emotion it feels (i.e., 0-100%, which would be silly and stilted), it can now use the conventional terminology that describes its present feeling. This also permits the use of idioms (well being or scatter-brained to succinctly communicate nuances of emotion.
Finally, the gamut concept is fully compatible with the system of weighted relationals used with individual neurons in the EBM behavioral brain model. Each root emotion can be configured to reserve 32 consecutive (preferably the first 32) relational slots to depict the name of a variant of emotion. While 32 slots is a matter of convenience, variable-length lists or other fixed-length list sizes can be used. The assignment of weight-codes for the gamut table is described in the previous section.
Such a gamut of feelings might look something like the following, an example of what a mental clarity emotion's mapping might look like. Like other gamuts illustrated in
The ideal choices for nomenclature and would be mutually exclusive within a given emotion. The challenge is to properly identify what names are simply enumerations of an underlying emotion, and what that underlying emotion might properly be.
Obviously, the intensity of a given emotion could vary from 0-100%, or even −100% to +100%. While either can be preferably used, we use and illustrate the range of 0-100%, with 50% being a nominal emotion with “nothing happening”.
The following table shows example gamuts of emotion. The percentage assignments happen to be loosely based on 3% increments, such that the gamut can be expressed over a range of 32 unique values. (This way, a range of 0-100% can be expressed as a value from 0-31.)
The nomenclature in the table names the representative emotions as ‘E_emotion-name’, where emotion-name is the root emotion being assigned a gamut of values. The suffix “,g,e” is a syntax of convenience that happens to be used in an implementation of the EBM, although other means can be used to depict the type of value being described. The numeric values given are values (in percent) that approximate the value of the root emotion for which the name applies.
In this manner, what are commonly regarded as separate emotions or states of emotion can be readily depicted with reasonableness and surety using the gamut system. Note: Actual emotions presently embodied in the brain—and their naming conventions—differ from the above examples, although the functional behavior is essentially the same.
In the current system, emotions fire positively only. As seen in the chapter on Firing of Neurons, after firing any neuron, it decays back to a base value. For most neurons, this is zero, but need not be. For example, the base value of confidence is about 40%, and it may be fired positively or negatively from that point.
This means that the agent has a normal base level of confidence, something established in his personality profile (i.e., in his Identity neuron). The brain can then lose confidence—for many causes—but it will ultimately return to the base value unless re-fired. The base level, attack and decay times can be altered dynamically where needed.
Also, the current firing of any neuron can be suppressed because of interaction with other emotions. For example: If the agent's confidence is high and some event or statement with emotional content occurs, the volition subsystem may elect to drain any existing confidence away—rapidly.
Emotions can be fired from many causes or sources. Non-inclusive examples include:
When the requisite conditions are met, the neuron is fired.
The process neurons (a specific usage for a normal conceptual neuron) make significant use of the polling and thresholding of emotions. They are responsible for process steps (baking a cake, conducting a conversation) and are intimately connected with what is happening with both emotions and the resolution of needs, which also are frequently fired).
In the EBM, the 400-some words we use to define our feelings and emotion are categorized into approximately 30 base emotions. The remaining words define degrees of those emotions (and may be applied to more than one emotion, in some cases.
In this system, there are then some 30 “real” emotions and some 370 “feelings” that describe those base emotions. These feeling-words are then assigned to specific degrees of expression of specific base emotions. Several examples of these assignments are given below:
The examples illustrate some internal conventions used by the startup dictionary to define the feelings. In all cases, only the root form of the words is show. When later expressed, the proper adjectival or adverbial form of the feeling words are used.
The above examples show both adjective and adverbial forms of the feeling gamuts.
The emotion subsystem is essential an overlay onto the top of the rest of the EBM system. The brain can operate without them and without them ever being fired. However, it makes the decision process more accurate, realistic and easier to perform, particularly where nuance is involved.
They are certainly not the mysterious gray unknown they are commonly perceived to be, and are an asset to the process of volition rather than a necessary (optional?) evil.
Many tests and metrics for determining both temperament (predispositions) and behavior (personality), but most deal with fixing faulty behavior, such as Dr. Taby Kahler's Transaction Analysis system. The system that garners favorable agreement among psychologists for assessment of current behavior was originally defined by Gough-Heilbrun in 1983, and is used here.
The advantage of its use is that is generally understood, such that any competent psychologist should be able to perform testing on an individual to determine these fairly basic behavioral metrics.
The metrics used to define behavior are illustrated in
The above metrics are stored in the identity neurons but are extracted to a linked-list pool for rapid profile-swapping as the conversation switches between various speakers.
A number of traits are not specified directly in the personality behavioral but are useful to know about the person and use. These are useful in the decision processes and are derived from the profile. (They are called as functions from the Identity profile pool class.) A partial list of these is illustrated in
For every individual known to the brain model, there exists an identity neuron. This holds the behavioral and personal-data information for that individual. Similarly, an identical neuron (called self) exists as an identity neuron, and the self neuron defines the personality for the agent/brain itself.
The personality settings for the brain are defaulted internally to that of a secure Melancholy . . . so that it is relatively analytical about things. Throughout the brain, and particularly in the areas of Volition, experience handling, and Fonx, references are made to the current personality record and its behavioral settings. Similar references are made to specific emotions and mental states.
These references determine decision thresholds such as for depth of analysis, depth of recursive searches into the connections made to a specific neuron, and the like. Any internal decision that could be considered to be of the nature impacted by personality is a candidate for scaling it by a personality parameter. For example, the firing of emotion neurons is affected by personality, with the highest gains going to the Sanguine and lowest to the Choleric. These are not absolute scalings, but derive from the behavioral settings.
Other examples of behavior-based tweaks and scalings:
There are scores of locations in the EBM where behavioral parameters can be applied. This is an ongoing process to identify and incorporate them, although the incorporation is remarkably easy to do.
Profiles for other people are prepared using an external tool and uploaded as a part of training sets. It is possible to have the same (word-analysis) tool incorporated into the brain and drive testing of an individual by asking questions.
Better is to have volition incrementally ask the most telling questions of the other person, accumulating the configuration data over time.
An implementation of a “needs-based” decision process is described here. This process colors the outcome of decisions based upon a finite set of absolute (fundamental) human needs. The list of these needs is described subsequently, and in it, we do not quibble over the nuances of needs versus desires. Rather, recognition is given to absolute needs, and provision is made to additionally include person-specific desires perceived by that person as needs.
The implementation of many processes in the EBM is done in such a manner that activity effectively happens in parallel. The Context Pool holds of pools of information held in common between these processes. These include pools specific to current emotion, experiences and other (‘ordinary’) neurons, and others.
As a part of the Volition subsystem, context pool items are rescanned for relevance. Part of that activity identifies the firing (or re-firing) of emotions. Like all firing neurons, their firing levels rise and decay following specific time constants, causing them to rise and fall below certain established thresholds.
One of these thresholds defines the initial awareness of emotion. For example, without describing how fear was caused, its firing above a threshold causes the initiation of a need that requires resolution.
The overall process looks something like this and happens on a periodic basis:
Following is a list of some basic needs. Each of these is implemented similarly to an emotion neuron (and is a conceptual neuron) that is fired by some specified condition or classes of conditions. This list is representative, and their exact number and names may vary from this document.
During the course of periodic scans of the Context Pool, some of these emotion-based neurons may get fired. The firing of any of these above a temperament-specific threshold causes a special process to take place that evaluates what is happening and what to do about it.
When a basic need exists—i.e., it is firing above some threshold—the decision process is defined to resolve these needs. For each, there are many factors (neurons) that may initiate or contribute to the need. The decision process acts to minimize the need by taking action to optimize the cause(s) of that need.
The general decision process flow is shown in
This flow diagram does not imply any specific decisions, but the process of making the decisions. Most parts of the flow have the ability to alter the outcome of the decision flow by altering the needs criteria.
Some of the process boxes may be skipped based on experience-related conditions, all of which are available as inputs to the process areas.
The decision loop is run until we are satisfied with the solution or course of action. There are many separate conditions to satisfy.
Regardless of temperament and personality effects such as experience, the process is repeated until there is sufficient confidence in the outcome. Some have so little expectation that they will settle for almost any outcome.
There is an additional area consideration shown in the
For example, if an Army private who decides to do something may discard the decision out of deference for a sergeant in his chain of command. Other influences such as the Holy Spirit may so dictate that the choice was not the proper one, even for reasons not shared. The decision is therefore altered or is discarded completely.
Experiences and their Memory
Everyone's life experience can be structured on a timeline of events. From the moment we were conceived until the moment we die, our life is a series of nested events. By their very nature, events are structured in a hierarchical fashion.
Experiences are maintained in their own class of neurons, the exper neuron. They have their own set of relational connection types and similar or identical underlying utility operations as normal conceptual neurons do.
For convenience and to track events in a current context, they have their own linked-list pool, part of the context pool. Volition functions decide experiences worthy of storage in the pool and/or neurons.
Every experience has the following characteristics:
Each of the above elements (and more) are stored in the exper neurons and may optionally be retrieved into an experience context pool.
All experiences have event Type, Status, Open Date, Close Date, Place, Emot Stamp and Name elements.
Event types include:
All events are passed an Event_Type parameter and are critical to later analyzer functions.
Upon startup, the agent gets default experiences opened. The first is one entitled “life”. It remains open during the course of the agent's existence. The second event is titled “static training”. This event remains open while in static training mode. (Essentially the agent “boots up” in static mode.)
Nested events are determined by querying the Event table and seeing which events were opened within other open events that were not closed.
An example of a possible Event structure post-analyzer clean-up could be:
These can be demonstrated in
If we calculate the final Emot stamp of a “parent” event at first glance it would appear we would lose some information.
Let's say our trip to Hawaii was OK in hindsight. At first I thought we would lose the initial Emot stamp that was replaced by the total, but we do not.
We can look at each success nested event and determine how it affected the average. If certain emotions were higher or lower than the average on nested events we would know what direction the parent Exper's Emots were before the nested event occurred.
On the whole, the vacation might have been awesome, except that there was a terrible argument with your wife for a half hour on the 3rd day. Given that it was a two-week vacation, it was a great time on the whole, because the two of you readily kissed and made up. The blow-up was a less-than-memorable experience within the overall two-week experience of the vacation. It will likely play some small part in deciding your answer to the question of how was your vacation.
The EBM therefore must handle the ‘nested’ experiences, and must ensure that memory of the blow-up is properly closed out by the time the vacation experience is closed out.
In fact, any such vacation is made up of many smaller experiences, some of which are worth remembering and some which are not. Each such experience is started and closed out in its sequence. Some are larger or longer lasting than others, leading to yet deeper nesting of experiences. The three days spent flying to the smaller island was a total blast with its own memories, especially when the monkey dropped to coconut shard on your head from high up in the tree. The couple sharing your dinner table thought it funny, anyway!
If some form of recursive provision is made for nesting, then all these experiences will be captured and assessed, each in their proper turn. That multiple experiences are occurring simultaneously is then not a problem.
Obviously, the outermost vacation experiences closes after the experience with monkey closes, notwithstanding the slight sensitive spot left on the top of your head where the coconut fell. In other words, the hierarchy of experiences are closed out each in their turn such that the composite experience can later be evaluated.
Just as in starting an experience, there is some definable end to the experience, even if it the gradual dawning of the idea that it is all over. Emotionally, the Hawaiian vacation may have been over when you checked out of your hotel, or it may have been when you turned on the lights in the kitchen as you subsequently arrived at home.
Whenever the threshold of realization that the experience is over has been reached, some explicit actions are taken to close out the experience. These involve the recording of the date (or time), determining the overall emotional assessment of the experience, and finally in comparing the experience assessment against any preceding expectations. Expectations are then readjusted in this light for future experiences.
When the experience is closed out, emotions are summarized with weighting towards those later in the experience. A smoothed average off each emotion is calculated from all recordings of the same emotion. For example, the first reference to an emotion is taken to be the new ‘previous’ value. Each subsequent reference to the same emotion is added to it, but using (for example) 45% of the previous value and 55% of the new value. This simulates a ‘FIR’(Finite Impulse Response) filter in its behavior. The actual multiplier constants used can be tuned, but must add up to 100%.
The smoothed value is compared against the initial value of the emotion existent at the experience start and a delta is formed. From this delta, the equivalent delta from the incoming emotional expectation is subtracted, yielding a final value of that emotion for the experience. It will be a net positive or a net negative emotional value and represents the ongoing expectation for such an experience in the future.
When the final has been computed, it is stored into the Experience neuron, and is also stored with the noun that defines the experience, such as Hawaiian vacation. If the delta was zero (or below some absolute threshold value), it is not stored, and all references to that emotion are removed from the experience.
All emotions but the updated expectations (and any non-expected emotions encountered during the experience) are removed from the experience.
Experiences are often (but not always) preceded by a set of expectations. For example, we expect to feel good about the anticipated experience yet feel uncertainty about how things will play out. Perhaps we are anticipating an upcoming vacation in Hawaii but have misgivings about the 301 details that are yet to be worked out. At the end of the experience, expectations may be compared with our assessment of the experience as a whole making it a memorable (or unmemorable!) experience.
Whatever the experience, it is associated with an action (verb), although some aspects of it are associated with a topic or subject (noun). For example, Hawaiian vacation is a complex noun, yet vacation(ing) in Hawaii is the verb. Experiences are considered actions and are therefore recorded with a noun.
Emotions are a leading instigator of memories in human beings. If asked what for your five most vivid memories, they will each be likely (yet not always) linked to significant emotion, either positive or negative. The implementation of emotional memory in the EBM dually records the significant emotions in both the noun (Hawaiian vacation) and in a specialized neuron defined specifically for experiences.
This dual recording of emotion allows someone to ask us either question such as:
That is, we can be asked of our feelings from multiple perspectives and still be able to come up with a realistic answer.
The above system is created both in advance for anticipated experiences to be had and when unanticipated experiences are encountered and opened. Actual “start” and “end” of experiences are determined by the firing of elements of the experience, when they exceed or fall below a threshold. Like many other situations within the brain, all experiences have “back-relationals” that point to their constituent elements, and forward relns to the experience. Therefore, just referencing the elements (e.g., the ticket purchase) has the potential to indicate that an experience has started.
This is to account for the fact that one cannot explicitly state where the gray edges of an experience are. Did the vacation start when you bought the ticket, when you locked your house, when you got on the plane, checked into your hotel? This gives us an explicit means to ascertain the begin/end of an experience.
An “ontology” is simply a repository of knowledge. We do not consider a simple dictionary an ontology, per se. However, an ontology is formed starting from a base dictionary, storing it in the form of cross-connected neurons. Various processes add to the knowledge, such as reading of text.
This section gives a glimpse of the (text-based) format for the startup dictionary/grammar files. Overall, the files are loosely organized as follows:
After these are loaded, information that depends upon these (e.g., process neurons) are then loaded
Finally, some text to define basic common sense is loaded. Following this, any other training text can be loaded.
“Gamut” is used internally to specify emotions, adjectives and adverbs. This is simply a block of information stored within a neuron body, often in some specific order. A variant of it is also used in the grammar file to specify irregular verbs. The difference is that with verbs, the gamut value specifies the tense flags for the verb.
Within the verb definitions, we choose to implement both British and American forms of the verb tenses, with the American (or more common) form first. As with all gamuts, the primary version to be used for sentence reconstruction is placed first. As with other gamut specifications, gamut is specified in a truncated field, of five bits in this case. That means that reconstructed numeric gamut values are rounded up or down to the nearest 5-bit value. This is demonstrated in the below example.
The following lines of text are typical of those used to describe verbs. Gamut positions correspond to the tense flags for Present, Past and Past Perfect.
If enabled, validation of the obtained values is shown in the diagnostic outputs. (The above lines were manually inserted into the text for comparison purposes.) We get:
The concept of gamut offers a way to systematically define nuances of expression that are commonplace and in daily usage. It simplifies the organization and cross-linking of information, facts and relationships. Gamut is also a perspective and way of approaching the problem of nuance in human interaction.
Each class of neurons (5-7, typically) has similar tools to support it, such as:
The support operations for normal (conceptual/fact) neurons is the largest, followed by that for clump (verb/phrase/temporal) neurons. Any neuron class may potentially have connections to any other class, although there are explicit connections that are permitted or not.
These neuron type-specific support operations range from low-level primitives to big-picture support, such as “what is the topic of this phrase?”
Each neuron has its own explicit set of relational connection types, and these are fully supported by appropriate utility operations. Each connection is unidirectional, and support functions synthesize bidirectional operations when appropriate.
Learning in the EBM is not the feedback system of classical neural nets, but does include feedback. It is primarily by training the brain with text, in which the parser results ultimately form neuron place-holders for concepts and then form relational connections between those neurons.
The brain can also learn just as people do by feedback in the form of sentences, whether they be replies to questions or clarification of knowledge given by feedback from another person. This new knowledge supplements the growing ontology that originated with the initial word dictionary on start-up.
The Parser first uses a “tokenizer” to pre-process sentences. A tokenizing process breaks text into basic components, words or punctuation. These words need not be known, but could be a collection of letters or a sequence of symbols. These “tokens” are the input that drives the parsing process.
The input to the tokenizer is a text string and the output is a tree of “tokens” for consumption by the natural-language parser. The basic steps involved include:
The tokenizer is a rather conventional process that operates in a manner similar the equivalent steps for an ordinary computer language compiler. It performs relatively few exceptional steps (such as ambiguity resolution).
The mainstay source of “data” for the tokenizer is the textual search table that provides a mapping of English (or profession-specific) words onto associated neuron IDs.
The initial source for this table is a dictionary-like collection of words and their semantic (and/or PAS/PPR) information. During start-up, the words are placed in the text table while all remaining information about them is stored directly as connection information in their associated neurons.
The combination of the text table and neural interconnect information comprise an “ontology,” a representation of human-like knowledge, but one that is fully digested and concept- rather than word-based.
An independent execution thread is assigned to handle these operations in sequence for each sentence:
The above steps may cause system events to be sent to the Volition thread for investigation, completion of post-parse operations (e.g., inference, topic summary, et. al.) and other reasons.
After each pass through the parse thread, thread execution is suspended.
Referring now to
Through breaking down sentences into their conceptual parts, analyzing, topic tracking, and an awareness of context, previously daunting sentence are handled.
In parsing any language we are faced with multi-tiered layers of complexity. The grammatical side of the parse—difficult of a task as it is to do accurately—is only a part of the task whole. Grammatically speaking, a sentence has a format and syntax it adheres to. Generally, any given language will have a rule set that is for the most part followed.
In English, sentences flow from subject to verb to object. However, rules are constantly broken and improper grammar is frequently used. Yoda says, “Grave danger you are in. Impatient you are.” His first sentence is object, subject, verb. Translated in common English he is saying, “you are in grave danger”.
Likewise, “Impatient you are.” is object, subject, verb, and would be translated as, “You are impatient”. These variances must be accounted for. As readers, we are able in many cases to discern the meaning of a text passage even if it was poorly or craftily crafted. A computer has yet to demonstrate this ability.
Aside from all of this, even after a grammatical parse is discerned some process needs to actually understand it. It is one thing to say you know the main verb and subject. It is another to say you know and understand exactly what is happening, where it is happening, how it happening and how it relates to the greater context of the moment.
The ambiguity issue is far greater than just a cursory contextual understanding. There are two major types of ambiguity: lexical and structural.
Lexical ambiguity occurs when one word can mean different things. Technically, the homograph head can be interpreted differently. Words like bank, jump, chair, or cup all have multiple meanings and uses. An example of such is:
There are actually two lexical ambiguities here.
In general, lexical ambiguities arise when words can function as two or more parts of speech.
Structural ambiguity occurs when a phrases owner can be misapplied.
Was the man painting while nude or were the actors he painted nude? Generally, context can resolve structural ambiguity. Was this man known for painting nudes? Was he known to be an eccentric or radical artist? Is this statement being tied to another that may help our understanding?
Various ambiguity ambiguous combinations, bad punctuation, complex sentences and unknown words can lead to a wide variety of grammatical parses. Take the following for example:
There are over 15 unique meanings this sentence could have. A few of the major examples (with the verb bolded) are:
These are just a subset of actual possibilities.
Better punctuation aids in part of the puzzle. A broader understanding of more words helps with another part. Context can help too. However, no single answer can calculate at parse time what the answer actually is. Another method must be followed to get to the solution.
The EBM Natural Language Parser approaches the problem on multiple planes and is recursive at more than one of those planes.
Central to any sentence or thought is the main verb. It is the driver of the sentence car. As seen in the above examples, for any given sentence, selecting a different main verb leads to a drastically different meaning
The main verb assigns semantic “roles” or “responsibilities” to the various grammatical constituents and when that verb changes the entire sentence changes. The unique verb can occur in a certain manner, at a particular time, it can carry a theme, and there can be a main agents or something that experiences the verbs action.
Modifiers such as roles, experiences and locations enable the transfer of words to concepts. The words are not stored, the concepts behind the words are.
The PAS consists of some 24 different semantic roles that can be assigned by any given verb. An example of some these roles are:
With the PAS information for verbs, the EBM Parser is able to understand the unique relationships that can occur between verbs and the roles, or responsibilities, they assign.
In addition to Semantic Roles assigned by the verb, there are also roles assigned at the sentence level. These are frequently used to connect thoughts. Correlative pairs, such as “if—then” will establish a unique relationship between sentence. Adverbial Conjunctions such as “however” denote contrast to a previous statement. These play a critical role in understanding the relationships between thoughts.
The EBM Natural Language Parser is recursive by nature. Its primary assignment is to find all grammatical possibilities for a sentence. Choosing to accept any given possible output is fallacious because it is entirely possible that a less likely and more obscure meaning was intended. Future decision processes decides which of these is the correct grammatical parse, therefore the most accurate way to handle the innumerable possibilities is to accept all possibilities.
The following is a basic flow of the EBM Natural Language Parser:
The flow is depicted in
English has unique structural keywords that give clues to possible ambiguities. The pre-parse layer marks all the relevant tokens with flags that clue the later grammatical parser. For each sentence the Pre-Rules need only be ran once. They are not changed due to different verb attempts because they hold true no matter what the main verb ends up being.
The target text must be prepped prior to attempting to parse it. A tokenizing process breaks the text into basic groupings which may be words or punctuation. These words do not have to be official words, as they could be an unknown collection of letters or a sequence of symbols. These “tokens” are the input that drives the parsing process.
The Predicate Argument Structure verb, or the main verb, is selected through a scoring system. The scoring system determines which possible verbs to try. Regardless of success, other options will also be selected and tried due to the recursive nature of the parser. For any given parse attempt, the PAS Verb selected is the main verb. Going forward, the parser assumes this to be true and proceeds as if it were so. This enables the EBM Natural Language Parser to avoid the complexities of constantly attempting to resolve the issue during the grammatical parse.
Further information is provided on the PAS Verb Selection process in the EBM PAS Verb document
Post rules are applied to the input tokens according to the assumed selected PAS Verb. In English, there are rules that can be applied once the verb is discerned. Since the EBM Natural Language Parser assumes the main verb, in any given parse the main verb has been discerned.
The grammatical parse is also a recursive process. When parsing text there are many “decisions” that have to be made. Many words can operate at multiple word types. Improper grammar and punctuation is often used, and that cannot prevent the parser from its task. “Decision Nodes” have been implemented that track these decision points throughout the course of a parse. An example of a decision node is the following:
A decision point occurs after the main verb “claimed”. The PAS data for the verb claim says that claim assigns a role of “theme”. This theme represents the “claim”. As a theme, the entire role itself can be a nested clause with its own PAS verb. At the point the “that” is encountered, the grammatical parser cannot be certain if a nested clause exits, if that is a relative pronoun, if is an irrelevant keyword, or if that is a determiner. A nested clause is referred to by linguists as a “CP,” or complementizer phrase. Complementizers can have heads, or words that lead them off, or they can be assumed. These cases would look like this:
A decision node is needed at: The cops claimed that . . . .
The decision node stores an enumerated set of information regarding the decision. Nodes are coded with their realm of possibility. Decision logic determines which possibility to choose and it records that choice in a log. Some nodes lead to ambiguity, while others do not. Upon failure, or success of any given parse, all ambiguous nodes will be chased. Essentially, the other choices are made and the parser attempts to parse that particular version.
In handling decisions in this manner, the EBM Natural Language Parser's hands are clean. There is really no decision because all decisions that lead to a valid parse are valid and acceptable at this stage.
At role resolution the grammatical roles are converted to their PAS Role counterparts. A subject may become an actor, an experiencer etc. The PAS verbs have an extensive rule set that is documented in the EBM PAS document.
Scoring can be viewed as a competition. The valid grammatical parse options are the competitors vying for the parse. There are multiple layers upon which the competitors are judged.
A score is calculated and the players compete. The highest score wins, for now.
If there in no viable options we will fall into a series of desperate modes. These modes change the way the pre-rules work and gradually get less restrictive. A sentence like, “the is my favorite determiner.” would parse once certain grammatical restrictions were loosened. The final attempt if all else fails is to parse the sentence as a fragment.
Words are used to convey concepts, and clumps are a collection of those concepts that come together to form a thought. The output of the parser is a single clump that is neatly stored in its conceptual form. See EBM Conceptual Clumps.doc for detailed documentation.
An independent execution thread is assigned to handle these operations in sequence for each sentence:
The above steps may cause system events to be sent to the Volition thread for investigation, completion of post-parse operations (e.g., inference, topic summary, et. al.) and other reasons.
After each pass through the parse thread, thread execution is suspended.
The EBM Natural Language Parser is a multi-layered recursive parser that is not restrictive like parsers of the past. With our approach to verb selection, ambiguity, unknown word handling and decision nodes, we are capable of parsing virtually any text.
A typical sentence parse may encounter multiple areas of ambiguity in the intended use of a word. These include the following example cases case types:
These and other types of resolution that occur are resolved in different ways, separate resolution logic serves both the parser and the “conceptualizer” that closes out the parse sequence.
A number of tools are used in neuron (Nid) and pronoun resolution. Among others, these include:
While this chapter gives implementation-specific names (it is a part of internal documentation), it considered to be of help in understanding overall processes involved.
The following pseudocode outlines the procedural flow of the contextual phrase resolution heuristics. In the code, the use of the term link and pool refer to the links of a linked list, managed under the guise of a single pool of common information. (Links and pools of this type are constituent parts of the Context Pool, a catch-all title for short-term memory.)
The This_Ph_In_Context item is called after parsing a phrase, but before conceptualization and context-culling.
Imagine that we enter the following two input sentences in sequence:
The system should be able to resolve the latter phrase (“colored animal”) to the earlier referent (“the red dog”). To do this, the system should first place “the red dog” in its own neuron, which will happen normally during parsing of the first sentence. When the second sentence is encountered, “the colored animal” will be placed in its own ph_link, but if we attempt to conceptualize at this point, we'll just get a semantic clump of “The colored animal barks,” which, although a true statement, is not really the clump we want to create.
If we perform some contextual processing on the ph_link first, we can tie “the colored animal” back to the earlier-mentioned “red dog”. So that is where conceptual context-resolution should occur in the parsing process—after a phrase has been “closed,” but before the ph_link is handed off to Conceptualizer.
The ‘cullprit’ of cull_link A is defined as the cull_link B which was responsible for cull_link A's insertion into the context cull_pool. This is found by starting at cull_link A and following each successive link's ‘From_Link’ pointer until no more From_Link pointers exists in the chain. At that point, we have cull_link B, the cullprit of A. For example, if we input the statement, “The red dog exists,” and “animal” gets placed into the context cull_pool because of its parental relationship to “dog,” then the cullprit of “animal” is “dog”.
The overall goal is to resolve a phrase (ph_link) to some existing concept (nid or cid) in memory. The ph_link will likely have several words in it, and we want to walk its parse tree (exploring Roots and Mods) and repeatedly run a cull_pool search operation (cull_pool::Find Cullprit) on each of those words. Each word that we run cull_pool::Find Cullprit on is a “Resolution Requirement”.
We continue the search after each successful find, because a word may have been entered into the context cull_pool several times by different cullprits/sources, and we want all the results. All this work is done by the function Build_Nid_Res_List, and the final output for each Resolution Requirement's cullprit search is a list of nids (nid_pool), called the “Cullprit_List”.
When we have each Resolution Requirement Nid's res list built up, we want to assemble all those Cullprit_List's into one data structure (Res_Rqmts). The ptr_pool class allows us to create just such a linked list of linked lists. Once this object is assembled, its pointer can be passed to analyzer::Correlate_Nid_Pools for processing.
Once all the cullprit nid_pool's have been attached to the ptr_pool, we can start performing correlation operations on the nid_pool's. This is done by the function analyzer::Correlate_Nid_Pools, by successively performing set-comparison operations (nid_pool::Union) on each of the cullprit nid_pool's.
For example, we compare the Cullprit_List for “colored” with the Cullprit_List for “animal,” and the resulting set intersection reveals an associative correlation between the two words.
Although we are essentially looking for the set-intersection of the nid_pool's in Res_Rqmts, we do not use nid_pool::Intersection here. Instead, we use nid_pool::Union. This allows us to score the common (intersected) elements between two sets while joining them together into a larger set, so we can order the final unioned set by the elements' intersection frequency.
For example, if we are correlating three sets, A, B, and C, we just perform successive unions on them, then sort by Worth:
Then, those elements common to all sets get bumped up to the top of the list after sorting by Worth, which is illustrated in
Imagine that we enter the following input sentences in sequence:
The system should be able to resolve the ambiguous pronouns (he/them/they/his) to the correct referent in context, taking into account relevant information about gender, plurality, and possession. The resulting clumps for the last two statements should be “The red dog chases cats” and “Cats fear the red dog's teeth.” As several other interpretations may be possible, the system should make a best-effort attempt to resolve the ambiguous pronouns or noun phrases down to a single instance, class, or group.
As with Build_Nid_Res_List (used during conceptual context resolution), Build_PN_Res_List scans the context cull_pool for potential referents of the given Nid, and builds up a list of them. The candidate lists are built slightly differently for first, second, and third person pronouns. Still, follow the same overall approach: Look for Nids placed into the context cull_pool from a previous parse, and which match the pronoun's gender, plurality, and possessiveness.
First and second person are relatively simple cases (since “I” and “you,” by definition, imply very specific referents) whereas the third person pronouns warrant a more complex scoring algorithm to build up and manage the larger sets of res candidates. In the case of a plural pronoun (we/they), we also might need to resolve to a group of Nids, so special processing is needed there, as well.
The res candidates for a third person pronoun are scored for Worth in Build_PN_Res_List—3rd_Pers (as the list is built up). While scanning through the context cull_pool, this function scores each new nid added to the res list by considering the age of the current cull_link and whether it was the subject of the sentence. Other considerations can be added to the scoring algorithm to further refine it. The actual selection of the top candidate(s) is done later in Update_Ph_Res_Options. There, a Confidence score is calculated from each nid's Worth; the main ph_link's Res_Wi_Pool is updated with the new candidate nid.
If a very high-confidence resolution decision is made on a gendered pronoun (he/she), the nid that we resolved to is automatically updated with a new reln indicating the gender relationship. In the above example, “He chases them” implies that “the red dog” is a male, which was a previously unknown fact. Since new information has been introduced during the process of context resolution, we make that new knowledge permanent by attaching the new gender reln to the “the red dog” neuron.
No relevance-scoring is really performed for first and second person pronouns. They are degenerately resolved to the Speaker_Nid and Self_Nid, respectively. If a plural form of either of those personages is encountered (we/us/our, you (all)/your), then Resolve_Nid_To_Group (described below) is called to add other candidates to the res list. The resulting group will contain the Speaker/Self Nid, as well as some additional nid(s) drawn from the context cull_pool.
For all personages, plural pronouns need to be resolved to class or group nids, which both have implicit plurality. Resolve_Nid_To_Group accepts a list (nid_pool*) of group elements and resolves it to one GRP_OF neuron which contains all elements in that list. If no such group is found, one is created in adhoc neuro_space.
If a possessive pronoun is encountered, we attempt to resolve it together with its possession to some unique nid. So in the above example, res candidate lists are built up separately for the mod (“his”) and the root (“teeth”), and then those lists are correlated/intersected to produce a res option list for the whole noun phrase (“his teeth”). This way we attempt to limit the final res options for the noun phrase to only those possessors X which are known to have a possession (R_POSSN) Y. If only “his” could be resolved, and not “teeth,” then only the mod (“his”) gets its Res_Wi_Pool updated with the resolved-to nid. During conceptualization in this case, a new instance nid of “teeth” will be created, with an R_POSSN_OF “the red dog”. If such an instance of the red dog's teeth already existed in neuro_space, however, then the whole noun phrase (“his teeth”) would have been resolved to that object and the top-level Res_Wi_Pool updated accordingly.
If, after building up a resolution candidate list and attempting to select the best candidate, the pronoun is still left unresolved, we need to prompt the user for a clarification of the ambiguous pronoun. This is done by calling Fonx::Clarify, which outputs a pre-formatted clarification request to the chat dialog, e.g., “Which person is meant by ‘he’?”
The function of the conceptualizes is to process the parser output tree, creating new neurons when necessary and storing conceptual associations derived from the incoming text.
In this model, this is a two stage process. The first stage is organizational, in which the parser stack output deposited into a structure that facilitates creation of relational linkages. From this structure, the information is processed to create relational linkages between concepts.
Outputs of the conceptualizer are:
The methodology uses:
The object and basic output of the conceptualizer is creation of a clump neuron (referenced via a “Cid” index). From the parser, the conceptualizer receives a set of linked-list records that define the content for the clump.
Operational steps then include:
The outcome of the process, then, is a clump neuron and an optional set of ordinary conceptual neurons.
A “clump” is one of the 6 classes of neurons. As for the other types, it has its own serial number space and is referenced by cid (“clump ID”), a 32-bit structure that contains the neuron type, serial number and several other pieces of useful data. As with all neurons, clumps can be created in permanent neural space or in the (21-day) adhoc space. All neurons created during conceptualization are in the temporary adhoc space.
A clump consists of some basic header information and then a series of references to other neurons. For all other neuron types, these are referred to as “relationals,” “relational connections,” or simply “relns”. In the clump case, though, the references are called roles. This derives both from in-house linguist preferences and from their more exclusive nature.
All other neuron types gradually gain more relns over time, increasing the options for definition, awareness and inter-conceptual relationships. In the case of the clump, its contents are defined by the conceptualizer and they then never grow.
Referring now to
All neuron headers contain two fields telling current reln/role area allocation length, and how many relns are actually present. For the clump, both of these can be known by the conceptualizer prior to clump creation. (A background process automatically reallocates a neuron that needs to grow because too many relns were added relative to its current size.)
Like relns, each role word—32 bits in the current system—contains a pair of fields at a minimum. These are an 8-bit Cmd field that indicates the role type (of which there are about 40) and a 24-bit field containing the neuron/clump serial number, of which one bit indicates if the item referenced is in adhoc (temporary) space or is in permanent space.
The first element of a clump is always a verb reference. If there is a tense-and-aspect specifier, that will follow the verb. The next chapter gives a set of example clumps produced by the conceptualizer.
An independent execution thread is assigned to handle parse-related operations in sequence for each sentence:
The above steps may cause system events to be sent to the Volition thread for investigation, completion of post-parse operations (e.g., inference, topic summary, et. al.) and other reasons.
After each pass through the parse thread, thread execution is suspended.
This chapter gives examples of parser outputs. In some cases, the complex neurons generated to capture the essence of a concept are also included. This a collection of items clipped from other internal documentation on conceptualizer matters.
The material in blue on the right side is regenerated equivalencies to a concept. Where a specific instance is implied (rather than a general conceptual class), the diagnostic dump usually inserts some form of determiner (e.g., “the”) to indicate a specific instance. The references in green are sentences or phrase reconstructed from the clump.
The mess oozed, from kitchen to stairwell.
The actor and location bounds are all specific instances. The location bounds circumscribe the area or region. They are not temporal (describing verbish action) and does not imply a from-to concept.
The action takes place from some starting point and moves towards a goal (locale, here). The action is temporal, a verbish action, and implies a from-to concept. (Taspect was ignored here.)
The source defines the beginning of the action. (Taspect was ignored here.) Source defines where the action started from.
The goal is recipient of the action or is the target destination. (Taspect was ignored here.)
The for is optional and produces same result. Distance is encoded by TBD means, but preferably in its own spatial neuron. (We may be back to considering the Tid as a space-time neuron, not time alone. The taspect was ignored here.)
This is a special case of English. There is no explicit word to indicate if or other conditional. The else is discarded and the test condition is “inverted”. That is, an SC_IF_NOT is used instead of an SC_IF.
This is a ‘standard’ if-then-else situation, but in English. The test condition is the fact that bananas are not green, something that has to be tested for in real time. If the assertion is true, then There is no explicit word to indicate if or other conditional. The else is discarded and the test condition is “inverted”. That is, an SC_IF_NOT is used instead of an SC_IF. The taspect was ignored here.)
Generic definition case; see next similar example for comments. (The taspect was ignored here.)
This is a question of confirmation, and is either true or false. Note the use of a non-be verb.
Depending on what subsystem poses the question, the answer may come back qualified, or the question may be objected to as being illogical for some reason. The QUESTION WD role contains a word defining the type of question.
This is a question of confirmation, and is either true or false. Note the use of a non-be verb. This is a suitable case for seeking the NATACT relationship using the verb as a reference.
This is a where question with a prep phrase. Note that it does not have a be verb.
This is a how question with a prep phrase. It can be argued that this is a question of what manner. Further, use of INSTRUMENT is in question. As noted, this is a tentative interpretation.
Imperatives are commands to the agent. They are set into the context of the current speaker, currently determined primarily by the present setting in the IM's Speaker ID drop-down box.
Imperatives that include such commands as “tell me about,” “explore” and related words imply that a specific topic is concerned. (NOTE: Any subsystem can discover this by seeing if the word, e.g., “tell” has an ASOC to the “_tell_of” neuron.)
Tell me (Mystery Guest) about Bananas?
This sample assumes that “Mystery Guest” had previously been entered into the IM's Speaker-ID dropdown box.
Remarks: This defines variant examples of the same concept (tree), establishing content for the above area or region. The information is state-like (static) facts and must be properly tied to them.
The brain's curiosity about what the variation . . . of plants looks like is partially satisfied.
This is an example of STATE, usually associated with a simple adjective.
This is another example of STATE, usually associated with a simple adjective. Notice that the PARENT_CID role points to a CC that has now been expanded from the previous example.
Both actor and location are specific instances.
Remarks: Contrasting concepts are being presented (see some and others). The juxtaposed concepts must maintain their relationship in the knowledge realm.
This is treated as two separate sentences (separated by the semicolon). Each occurrence of “while” triggers a CONTRAST controller clump to be created. Each INST of “region” (all EXPERIENCERs) is made a POSSN of “the earth”.
The brain marks that flat, mountainous, rocky, and deep soil or sand are some of the variations suggested in the previous sentence and that they all pertain to geography.
This is a very incomplete set of examples, but illustrates the general technique of conceptualization and the goals behind its processes.
The connections between normal neurons in the EBM are made though “relationals,” relns for short. Relns for other types of neurons (e.g., clump or ident neurons) have their special relns and are given other names such as roles for clump neurons. Each type of neuron has its own numbering sequence or (number space) for enumerating their relational connections.
This chapter focuses on a system of fundamental definitions that enable us to create concepts from relationships. To that end, we focus on getting the noun classes—basic “non-instance”—nouns in the system. Instances of nouns (see the sidebar) are not normally defined by the pre-training files. Rather, they are defined using normal training text files.
With suitable ending changes, many of the nouns can be used as adjectives, verbs and adverbs.
For example, information about “Gonzer” (my pet boa) is included as written English text, not as a noun entry in the pre-training files. That is, instances are not trained via words.txt, but via natural language text files.
In a similar way, the verbs share many of the same relationals but are augmented with usage information derived from “Predicate Argument Structure” (PAS).
Finally, the many structural words such as prepositions, conjunctions and the like are defined. The many word-type related specifics are kept in blocks of relational words (See “R_BLOCK,” below), recorded as a set of flag bits appropriate to the word type. In this way, space reserved in neurons for relational connections is supplanted at times to hold non-interconnection data.
The focus of the following subsections is on nouns, but the same general techniques apply to most other word forms.
At the most basic level, nouns are either abstract or concrete (non-abstract). That is, they are either generic or very specific. Instances of a generic concept are by definition concrete.
An instance of the “thought” class (which is abstract) would be “a thought”. In particular, it was Luke's thought at 5:01 AM in regards to a pesky mosquito that wouldn't stop buzzing in his ear.
Let us call that thought, Neuron ID: 4001. This neuron 4001, the “mosquito thought,” has an R_PARENT of “thought”. “Thought” would have a R_INSTANCE of 4001. “Thought” is likely have other R_CHILDREN, with these children likely have other R_CHILDREN. “A thought,” this particular instantiation of “thought” will have no R_CHILDREN.
Implicitly, this means this implies that a true instance cannot be itself instantiated. If there is an attempt to do so, it is a clear sign that a new class has been derived (e.g., via observation), and the pertinent information has to be moved from the former instance (what is now a new class) down to a lower instance! This dance will also occur with exceptions. Exceptions lead to new class observations, which will lead to cleaning up your tree and moving things around a bit.
So, an instance is always the lowest generation (ground) on any given tree branch, the bottom of the hierarchy. There could be multiple instances at the same ground level, but never instances of instances. All others generations are classes of information that help describe and categorize.
When we speak about defining nouns in words.txt, we are strictly speaking about better defining classes of nouns (concepts that are tied together with Parent-Child relationships). Aside from “noun-place-where” (NPWs), there does not appear to be any reference in our base noun definitions to any relationship except for hierarchical class. (I.e., they are non-instances.)
In defining noun classes, there are four major parental types:
These can be collapsed into two lineages:
We will imply to their type of lineage when we refer to their ‘root’ or top.
Based on this simple break-down, we have a targeted and very select set of ways to define nouns. At issue is the implied relationships established by the ‘Reln’ connections. The intent is to consolidate these connections into categories that are readily understood.
One might say that all Reln types go into defining the concept. That is true, but the aim of this chapter is to find the minimum set of relationals needed for the pre-training word-info files. We seek the base categories for the generic/abstract word concepts which later “instances” of those concepts will tap into.
Relns for Nouns with Concrete Root: (Location, Living, Non-Living)
Relns needed in Words.txt to define concrete nouns include those from the following list:
Some of these may contain back-relns.
For Nouns with an Abstract Root
Abstract nouns include physical properties such as wavelength, viscosity, intensity, etc.
Assigning something as an abstract or concrete root has significant philosophical connotation. Consider the Self, the Mind or Spirit, for example. Labeling them as not abstract, generic, indicates a belief that one can possess or have them. For many children, Santa Clause is not a concept or an idea, but is actually real flesh and blood; haven't you too seen him at the mall? Labeling these nouns with an abstract root therefore has considerable implications.
Back relns are not needed to define abstract nouns, and no special syntax needed in words.txt. They are created whenever a property is assigned.
For “viscosity,” the back reln helps to understand what the property applies to. Whether or not to update the current R_PPROP_ORG is based on its placement in a parent-child tree. If a more basic class where it is assigned, the R_PPROP_ORG reln gets updated.
For normal (conceptual) neurons, the relns are divided into two categories, those with weighted connections and those without weights. Each reln has an 8-bit field in its most significant bits (MSBs) that specifies the type of the reln; this is the Cmd field.
The fields of the neuron relation are as below:
The 24 non-command bits are normally composed of a neuron NID or clump CID, but may be allocated to other uses in some cases. If the lower 24 bits is a neuron or clump ID, it is split into an Adhoc flag and 23-bit neuron or clump serial number.
Example relns are listed below. The entire 8-bit Cmd field is used in the enumeration. The enumeration value itself is not given because it changes from time to time.
The preceding Table is a sampling of the 100-odd relns that comprise those for conceptual neurons (Nids) in the EBM.
Nouns have a parental lineage to one of the following concepts:
Examples: “Psychology” would tie back to abstract through its parental lineage. The generations it takes to tie it back is not the issue. Somewhere along the parental lineage, we will run into one of the 4 main noun categories. Mt. Rushmore would tie back to location, a human or a virus would tie back to living and a lamp would tie back to non-living.
Nouns are composed of other things. A #2 pencil is made of lead, wood, metal and rubber. This provides additional information on the noun. It is wise to use the next level of complexity when defining what something is made of. These “made ofs” can be broken down into the things they are made of in their neuron. A human is best defined as being made of a Spirit, Mind, and a human body. These are the next lower order of grouping. The human body would be broken down into its “made ofs”.
Note: Possession is a translation of the MADE_OFS of a neuron that has an identity or life parental lineage. A chair is made of an arm(s) and leg(s), but a human body is not said to be made of 2 arms, it is said to “have” 2 arms. This is merely an identity translation issue. If the noun has an identity or a living parental lineage, we generally change our “made ofs” to “possesses”. It should be stored the same.
This is the property of color is defined as Hue, Saturation and Intensity (Intensity sometimes called brightness, for reflective surfaces). It is actually used only inside a properties R_BLOCK.
Hue is expressed in degrees of ‘rotation’ and is defined in such a way that incrementing past 360° simply wraps the color around smoothly. For example, at both 0° and 360°, the only RGB color showing is red.
Saturation is a measure of how much of the overall color tint is diluted by white light (illustrated in
Intensity is a measure of the total amount of light being produced at the given tint and saturation (
Example: hsi (309, 38, 97) produces a color of a purple-like hue.
This tint shows the purple-like hue of 309°, has 62% white light added (saturation=39%), and has an overall intensity of the 97% of full intensity. This shows that a little color goes a long way when added to pure white, when you compare the color with that in
Primary function is a critical tie in to a verb on the existing hierarchy. All nouns that have a primary function that tie into one, or more, of the following verb-related lineage:
All nouns fall into one or more of these boxes. The labels may differ in the literature, but the categorization system is generally similar.
Each reln connection type is a member of a bounded set defined to be fundamental information. Representations of other connection types not so defined can be specified by a “double reln,” a connection requiring two associated reln slots. Using this system, the reln types can be viewed in a hierarchical fashion or by sibling or non-structural relationships. It is a very flexible system.
The relational connection in the verb-based semantic clump neurons are internally called “roles” rather than “relns” for reasons of clarity for the linguists. They function in an essentially identical manner to the connection relns of all other neuron types; that is, they form a connection between the clump neuron and other neurons in the system. In a similar manner, the lower 24 bits are sometimes preempted to hold suitable non-ID binary data for certain purposes.
The fields of the clump roles are as below:
The 24 non-command bits are normally composed of a neuron NID or clump CID, but may be allocated to other uses in some cases. If the lower 24 bits is a neuron or clump ID, it is split into an Adhoc flag and 23-bit neuron or clump serial number.
The role types include the following sample (and others). The subset of roles includes:
Separate role sets similar to this one are given for each of the clump sub-types described in the next section.
Other types of clumps are defined and used besides the normal “semantic” clump (SC). The whole list includes:
Each of these clump types has its own enumeration of relns that apply to it.
Volition is a subsystem that orchestrates most of the thought-like processes. It operates under its own thread of execution and handles (or uses) the following general areas of operation:
Dialogue—Handling of two-way agent-user dialogue or discussion
Volition also handles a number of other sub-processes that relate directly or indirectly to though and experience and their emotional consequences. (Each of the above areas is discussed in detail elsewhere, often with a whole dedicated chapter.)
The Volition processes that follow conceptualization generally have a bigger picture of context than parsing and conceptualization does. Therefore, upon exit from conceptualization, Volition takes some of the following steps:
In this way, the clumps and neurons created here may well disappear after they have served their usefulness to the brain. Only the topical and content summaries will remain but the low-level detail of low worth will be discarded and forgotten.
Volition is managed as a separate thread of execution that fields “events” initiated both by other process threads and during portions of its own operation. These events are pending interruptions of the current process flow and are handled on a first-come, first-serve basis.
Example events include:
Volition is a reasonably complex set of processes that cannot be defined in a simplistic “We do it this way” manner. Even so, as a reentrant process, it is able to handle these in an understandable manner. The sections that follow attempt to convey overall processes, many of which are under the control of process neurons, a specific application/usage of ordinary conceptual neurons as described elsewhere
Volition is an implemented as a separate thread of execution. It is a repetitive loop that operates as long as there are unprocessed events to work on and (and then goes idle).
“Monologue” is a sub-system that expounds on a specific concept. It is capable of writing a text on a subject, to the extent that it has enough training and background material to work with.
The overall method used writes an outline on the topic and then expands on the outline. It can perform the outlining on the areas of expansion, too. It follows the general rules of monologue:
The basic tool for directing the above is an analysis of the types of relational connections made between neurons. Certain types of connections are most applicable for each portion of the monologue, making the above sequence readily handled.
When a user asks the EBM to explore a subject, the EBM sets the subject as the Topic Nid. From that Nid it gathers a wealth of knowledge and describes it to the reader in a systematic manner.
Use the context to capture appropriate Nids immediately within the topic Nid. Then cull through them to find more Nids. Consider doing this for seemingly irrelevant Nids in Topic Nid because they might lead to relevant ones further down the line.
Any direct match (between context and within Topic Nid) gets a score of 1.0, whereas the score decreases depending on how far you have to go to find relevant Nids. Each time an Nid is put into a link, the relationship between it and the previous word are also recorded.
For example, we want to remember that “Earth” is R_MADEOF “core.” After putting all of these into a content list, sort them by relns. We should then have groups of R_MADEOFs, R_CHILD, R_CAT_MEMB_OF, etc. They will be in order of their score (already established through a search). (We might want these groups of relns to be within separate links)
Scan through each reln type and look for two things: amount of content and score. If the score is 1.0, the nid on the end of that reln has just become a sub-topic. If the score is lower than 1.0, but this pool has a considerable amount of content, we will want to talk about it anyway—because we can.
The meaning of a neuron is defined by its relational connections. For each facet of monologue, a different set of relns is appropriate, some of them overlapping. For example, relns drawn from for the topical introduction paragraph and summary paragraphs differ from those used in the body of text developed to describe the topic. It is desirable to therefore have a means of prioritizing which relns are most useful and which should not be drawn on at all.
It turns out that the topic (introduction) paragraph needs to draw on several sets of desirable reln types, one to produce the overall outline to follow and one to develop the introductory statements from.
To implement the above process in a reasonably automated manner, a two-dimensional table of relns was created. Along the left axis is a list of all reln types (i.e., their enumerations). Along the top axis is a set of columns according to purpose. Each column includes a list of weights to ascribe to each enumerated type.
For example, for topical purposes we may value category membership over instance references. In the body text, the instances may get more weight. Only those relns over a specific threshold are included as the basis for textual output.
The text is formed in sequence for the introductory paragraph, in which we tell what we are going to say. The content is determined entirely by relns selected from the topic Nid—and its synonyms in some cases. The body is then formed from other relns selected from Nids by worth defined in the above table. Finally, the summary paragraph is formed from yet other reln types.
Based on the above table, relns are “culled” into holding pools so they can be evaluated for merit. Some reln types are capable of defining hierarchical relationships (e.g., PARENT, CHILD, CAT, CAT OF), and these are used to advantage.
“Culling” is an internal process wherein parental-like relational connections (only) are followed up the hierarchy for some defined distance, often 2-20 generations. The worth of the neuron found at each successive generation is scaled to be less and less, giving a net worth to each neuron that is based on generational distance an on connection type as derived from the above table.
After culling for related concepts this way, those below a certain worth are not used to generate text. (They are often used, though, when the human wants to know more on the same topic.) All of this culling and worth-setting is done in Nid context pool.
Finally, sentences are formed on the basis of reln type. Two methods have been tried for this with different results: Formation of clump neurons expressed via Fonx, and intelligent fragment creation. The latter produces better results, where sentences are formed from lexical fragments driven by relational content.
For example, different relns yield different types of information, shown in the very partial list shown here:
The same methods are applied to both noun and verb concepts. With these are an appropriately mixed set of clump (action) neuron references, defining non-static knowledge derived from previously parsed text. In the same way that neurons are culled and weighted, the clumps are similarly weighted by content before their inclusion as a part of the displayed knowledge set.
In the EBM, dialogue and volition (free will) are intertwined, together serving to control overall operations within the brain. They are implemented as an independent thread and use the parser, analyzer, speech construction (“Fonx”) and other constituent blocks of the brain as tools and systems that are subservient to volition.
Communications with other people has many facets, several of which are:
In this document, both monologue and dialog are included under the general heading of discussion, and presume underlying volition, free will. In actual fact perhaps 8 separate types of dialogue are initially defined and supported, including formalized debate.
Were there nothing to drive discussion, the brain would largely sit silently. Things such as physical or emotional needs, expectations, experience, external events and the occurrence of timing-driven events serve as drivers for discussion.
Discussion is handled by an independent thread of control within the computer or brain. It largely sits idle, waiting for something to do. In the EBM, the idle condition is interrupted by certain events or conditions internal or external to the brain. The thread then conducts activity that carries out some aspect of volition and then returns idle.
It is helpful to place the discussion operational block into the context of the larger systems picture of the brain.
Referring now to
The parser/conceptualizer is treated as a controllable subsystem by the discussion logic. The general flow of parsing and conceptualization is shown in
Some of the more important intermediate outputs of blocks in
The monologue form of discussion is one-sided conversation for the purpose of describing an object, a position or to convey other knowledge.
The general form of monologue includes the following traditional steps:
The same process is applied whether we are speaking a paragraph, a short paper or a treatise or book. At each level, whether it be upper synopsis, chapters, sections, pages or paragraphs, the same general mechanism is applied.
The above process is therefore suitable for recursively refining and detailing the content of the monologue. Regardless of the topic of discussion, it is possible to start anywhere within the neural memory structure and effectively write a treatise on any topic.
Methods are given in the next section to establish how much information we will create. We are limited in our ability to discuss a subject only by the amount of material we have available.
The level of detail to be given is based upon intent and other factors, some of which are given above in red. Generally speaking, the level of detail and quantity of information are readily controlled by restricting how far we go in our search for related neurons, such as how far up the parental lineage chain we go (if there is one!)
Topical content for the initial outline of what to speak about is obtained by looking at relns that connect to the base topic. It is known that certain relns connect to very general information, while others point to either generic or very specific types. Top-level outlines pull neuron IDs (NIDs) from relns on the topic neuron by order of type and save them in a list. This list is then used as the outline.
At each stage of the monologue, lists can be used with the Fonx subsystem to create sentences on the topic items. These sentences communicate specific types of information about the NIDs based upon the type of the reln used to connect them.
Consider the outline paragraph illustrated in
Noted in
The neuron data used to obtain the above paragraph is given in
Extended scans for other reln types yield different (or additional) neurons for inclusion in the summary.
The general content of the volition and dialogue thread was illustrated in
The fact that an introduction was just volunteered by the other speaker (the “respondent”) is discovered by the parser, and an event is issued for the situation. This process is shown in
Some of the above expectation pool entries would not occur unless (I) had known that Jack was going to Dallas. (I) think he's cool and is up-building to me as a friend.
For me (as the brain), this sets certain expectations of Jack, and they come into play when I become aware of Jack's greeting.
The primary content of both the Awareness and Expectations pools are an enumeration that indicates an activity or indicator primitive and some form of a neuron ID, regardless of the type of neuron referenced. One other item in each pool entry is a worth indicator.
When the Fonx subsystem is invoked to generate an appropriate sentence, it uses the enumeration and neuron IDs as the basis for the process, as well as its recent history of the conversation. It chooses the appropriate words to convey the intended concepts and action.
The second phase of the above greeting process is to select a method of greeting and the content of the interchange. This is initiated in the volition thread by the “greet-back” event triggered previously (above). This event type selects an appropriate method and text of greeting, based what (this) brain is familiar and comfortable with. Alternative forms of expression are selected from a my-greeting-response neuron. The flow, action and choices for this are depicted in
This process includes down-grading or removing items from both the Awareness and Expectations pools, as indicated in
An event was previously issued to have Jack tell about the trip. When the specified time has elapsed, the event will prompt the volition loop to have Jack explore what happened on the trip.
The selection of prompt method is dependent upon present conditions and emotion, including our interest in hearing the details. The particular sequence of the interaction is based upon the enumerated expectations in the Expectations pool.
The state of the Awareness and Expectations pools has been updated based on flow given in
A similar process to this is used for almost any form of dialogue. The process is initiated by external events or conditions, many/most of which were initiated at the same time the Awareness pool entry was made. The enumerations of the two pools define the task to be accomplished in the volition loop, and the choices made while carrying them out are affected by current conditions, emotions and temperament.
“Inference” is a generalized area that includes various forms of deduction and inference. It is applied in a number of places, but specifically following the parsing of a sentence and during the answering of questions (particularly how and why questions).
Deduction acts on known facts, where all the information is present but perhaps not in a convenient form. Inference takes existing facts and attempts to draw a conclusion from them. It may be considered a form of conjecture that says, “I don't have all the facts. But if I did, what would they look like?”
Inference is also necessary for the isolation of intent. If someone says or acts in a certain manner, there is no way to know for certain why he did that, sort of directly asking a question. In the meantime, there is nothing that can be done but to infer information based on what is known.
Inference is a repetitive process controlled by personality and current emotional conditions. It considers many aspects:
Both heuristic-based and genetic algorithm based methods are used in inference. The outcome of inference is one or more clumps, or new relational connections between existing neurons.
At many points in the system, deduction is required. For example, antecedents for certain words as this, other, area and location need to be fully resolved, disambiguated. In the EBM, this is called “context resolution.” This uses deduction and topic-tracking Deduction uses currently-known information to directly derive new information.
Inference is similar to an educated conjecture and is often based on distantly-removed information. Several systems of inference are used, and it is use at several key places in the system. Inference is applied after each sentence is taken in, parsed and “conceptualized” into neurons. It also take place when questions are being asked, whether the questions are asked by the user or by some part of volition such as curiosity handling.
Three basic types of inference are involved.
It should be noted that each external speaker has a veracity indicator as a part of his personality profile. When his veracity is relatively low—or when the brain is in a cranky mood—connection-based “knowledge” derived from parsing his sentences is flagged as being his world view. Statements derived from his world view can later be discarded or weighted lower during subsequent inference. Normal training text is assumed to come “from God”; being wholly believable it is not so marked.
The overall purpose of asking questions is to either obtain information or to confirm the truth of a statement. The commentary on field of questions applies in reverse to obtaining information from the human (or other EBM/agent), so as to properly elucidate the outbound question to be posed.
Questions fall into one of the general categories of who, what, what, when, where, why, how, what manner and confirmation. The methods to field these differs, with the questions falling into three basic categories:
The basic responses for the first set can readily be determined by the relational connections between neurons. Most of these deal with state of existence—cold facts—and the basic issue is simply how to organize their expression to the listener.
The confirmation question demands a validation of facts and is accomplished by matching certain types of relational connections between neurons and by the matching of roles in related clump neurons.
The third class of question has seven sub-divisions of type, organized into two basic groups:
Handling the question involves first isolating the relevant information and then forming it into cohesive clumps for expression by the fonx or Monologue subsystems.
Questions may be of the variety expecting a yes/no response, or are seeking some type of information.
These generally begin with a verb (to be, have, do or a modal verb) and require a single word or a very brief response. Example: “Are you coming tomorrow?” A direct answer (yes or no) indicates a commitment to the question's premises and propositions.
These questions start with any of the following: do, can, has, did, is, was
They also have a subject and a main verb. Examples:
In each case, the expected (direct) answer is yes or no, but may be followed by a confirmation.
The WH questions begin with an interrogative word (who, what, were, why, when, how). They can be viewed to be information questions, because they ask the responder to provide particulars.
The purpose for questions of the W-H type are as follows:
The analysis of the above alternatives can often be based upon the structure of the question, but may require additional information, such as present context and mood of the discussion.
Indirect Question—May be given as an imperative, or imply a question. It may also be couched in a modal. Examples:
This has been a brief summary of the handling of questions. It is controlled overall by the Volition process. These processes are often initiated indirectly from the parser system, wherein it sends an event to Volition indicating the question being asked.
Some of the information in this document was gleaned from: “Informal Logic, by Douglas Walton (9-78052137925-0). Walton can reasonably be considered authoritative in the area of dialogue and debate, and many of the approaches to dialogue used by the EBM derive from his publications.
In dialogue, both parties have an obligation to work towards fulfilling their own goals, and to cooperate with the other party's fulfillment of his goals. A “bad argument” is a failure of either party to meet one of these obligations.
In a discussion, dialogue or monologue, the speaker makes assertions or asks questions. Knowledge or assertions may be contained in either type of statement. The assertions made may be accurate or false; the speaker may be trusted or not. The listener internally accepts or rejects each such assertion, generally on a case-by-case basis. This happens whether the parties are engaged in formal (forensic) debate or a friendly discussion.
Internally, the speaker's brain must track each assertion he has made and each underlying premise he has used, and whether or not each was accepted or rejected by the other party. This acceptance or rejection plays a large role in the flow of the discussion or debate. Several rules of thumb in dialogue are:
These are more strictly required in informal logic (referred debate) but are a rule of thumb to be observed in any discussion. Structures in the “dialog pool” (associated with process neuron usage) are defined to track these items.
Some general considerations for the content of dialogue include:
The items in parenthesis are specific elements tracked in the dialogue process pools.
All dialogue happens within a given context, which one normally accepts with little thought. The context contains information such as “Who the audience is,” “Where and when the dialogue takes place,” and “What the dialogue is about.” This information provides necessary clues about how the dialogue will ensue. It is necessary to refine the context throughout a dialogue, as its elements may change over time. The speakers might move to another location, or another person may join the conversation, and the topic will evolve as the discussion progresses. Subsequent chapters will explain how context is formed, as well as how context affects dialogue, personality, and strategy.
Premises are underlying assumptions that are implicit in any assertion made; it may be implied but not directly stated. Premises exist for both questions and general statements.
On the other hand, propositions are assertions that the speaker makes to the other party, and these are normally an explicit part of a question or statement. Like the underlying premises, propositions (which may be about—or be—the premises) are either accepted or rejected by the listener.
For example, the listener is asked a question on an issue. If he gives a “direct” answer (rather than objecting to the content or format of the question, he is assumed to have accepted both the premises and propositions involved. He may reject either by objecting to some element of the question rather than by giving a direct answer. Accepting the proposition or premise is called a commitment in this document.
The dialogue or monologue may be in response to a question or observation on a topic, or may be for purposes of educating the other person (often called respondent, here). It may also derive from personal need, i.e., by the needs-based areas of the brain.
Before the premises are examined, the context must be formed (or refined if the premise is embedded).
Once these steps are accomplished, proceed to examine the premise or proposition.
A general flow to set up the premises and proposition is:
Both the premises and propositions are formed as linked lists, and each has a status flag that defines whether or not the respondent has accepted it.
Much of the flow of discussion (whether dialogue or monologue) is controlled by feedback. The speaker's brain must assess the following types of information about the discussion.
There are many indicators that arise during the course of discussion that must be identified and recorded as they occur. At that same time, it must be assessed whether the flow of discussion should be altered because of new indicators.
Not covered in detail here,
Discussion can be initiated for diverse reasons, which may partially determine the type of dialogue method(s) used during the discussion. Some of these reasons include:
Each of these drivers influences context. They might form a bias (e.g., toward a particular need) or they might set the dialogue type as Educational, etc.
Information about the audience (whoever is on the receiving end of a premise) affects the context of dialogue. If I have a quarrel with an acquaintance or a neighbor, I will handle it differently than if I had a quarrel with the President (assuming I could get an appointment to speak with him). However, if I am the President's mother, it does not matter who he is, he is still my son and I will speak with him how I wish.
Controversial topics demand delicate handling. When discussing whether abortion should be legal, the involved parties should be aware that talks about this controversial issue could escalate into a quarrel if it is not handled correctly. Also, if at least two parties do not agree on the topic, the discussion
Where and when does the Dialogue Happen?
The speaker must be aware of the time and place, to know what types of speech are acceptable. A courtroom has formal rules of procedure. During a trial, all parties are expected to follow those rules, and failure to do so can result in expulsion from the room. However, after the trial is finished, the rules of procedure are different. If the lawyers are friends (and have remained so through the trial) they can joke around and use familiar language they could not have used in the trial.
How does the Dialogue Proceed?
The rules of the dialogue can be predicted by answering the preceding questions. The types of dialogue I might have with the President are severely limited, especially if the where and when are at a press conference after a terrorist attack on the United States. Should I try to have a discussion about the implications of outlawing sugar in public school cafeterias, I would likely be asked to leave.
The information listed above forms the context of a dialogue. These data are then used to anticipate the dialogue type and form the rules of discussion. The following chapters discuss dialogue stages and types, as well as the dialogue rules (locution, commitment, etc.).
Dialogue is dynamic and progress through a series of stages. There are individual criteria for moving from one stage to the next, or for even abandoning the current dialogue (or portions of it). The primary stages are:
For argumentation stage, expect and analyze the answer. (See P19 of Walton of this document for question types and analyses.) Upon hearing a question, perform type and meaning analysis.
The basic types of dialog are each driven by a different purpose. Each has its own characteristic, purpose, flow profiles, methods and requirements.
These dialogue types, as illustrated in
The quarrel represents the lowest level of argument. It contains:
Goals of the quarrel are:
The personal quarrel should be avoided at all costs, but recognized for what it is. When on the receiving end of a quarrel, the following steps should be taken:
The most important part of the above process is the escape. If attempts to discover the issue or apologize fail, the next step is to get away from the attacker rather than argue.
Should one have reason to be the aggressor in a quarrel, he should proceed in the following manner:
Attack in whichever way is most effective
The attack has no limits, unless the attack is strategic, as in a debate. In that case, the attack can be limited to be “effective” yet still within reasonable boundaries.
The forensic debate is done for the sake of third parties, who are the judges of its merit and its winner. It is regulated by rules of procedure (which can be kept in a “permissibles” list). A debate may contain the same emotion as a quarrel, but the reasoning behind the arguments is more thought out. Debaters are competing for points, are subtracted and added throughout the debate, and the ultimate goal of a debate is to win, whether or not the winning argument is “true.” The debate follows a formal structure depending on the style of debate.
The following process is followed for debate:
The debate format and rules will vary according to the debate type (Worlds/Europeans, US, Lincoln-Douglas, etc.), but are easily modified once the type is determined.
Goal of each participant is to prove his conclusion from premises that are accepted by the other participant. (P52) Successful persuasion is exhibited by change of behavior in the other participant. An argument that begs the question is automatically doomed in this form of discussion. (P54) Arguments here are based on weak premises and may have low expectations. A persuasion dialogue proceeds as follows:
Involved in Persuasion Dialogue is determining the other participant's needs, attitudes, areas of common ground, and more. Identifying these things allows the persuasion to be specific to each person and thereby more effective. Also worth noting is which types of tricks (yes-yes, ask which, planting . . . ) work best—if at all—on a particular person, so that these can be added or deleted from future persuasive dialogues with that person.
Begin with a set of known premises and work with them to discover what is true. This is the Sherlock Holmes method, where one examines the facts, discovers new facts, and finds a deduction that must be true, assuming all the premises are true. Conduct an inquiry in the following manner:
Using this method, one acquires the necessary information to draw a deduction—which must be true if all the premises are true—and thereby exclaim, “Elementary, Watson!”
Goal is to reach a mutually beneficial agreement through whatever means necessary. Seek a threshold crossing of satisfaction. Provide for multiple issues and be prepared to concede something now if it offers a greater benefit later. A negotiation will proceed as follows:
This process of negotiation allows all parties involved to reach a mutually satisfying agreement.
If the inspiration is curiosity, the information sought has a level of satisfaction that says, “That makes sense to me. My curiosity is satisfied.” However, if the information is needed, the level of satisfaction is based on whether the inquirer has obtained the necessary information.
This dialogue type is similar to an inquiry, except with different drivers and different goals. It proceeds in the same manner as an inquiry, with a set of premises, missing information, and questions about the missing information until the curiosity is satisfied.
An example of the above process is, “You look tired. Have a seat.” Expect “him” to sit, and see if he did.
One-sided focus, educating me or (him): Determine “need-to-know” requirements to be met by the educator. This requirement brings focus to the dialogue, as well as a test for relevance (especially when the educator is asked a question). In one form, the educator is in monologue with questions throughout, another has the educator asking questions of the students, evaluating their responses for veracity, elaborating when necessary. The first type has this flow:
This basic structure of education dialogue is only the common type. In others, the educator allows the students to speak, while the teacher acts as a guide and source of information for the discussion.
One party affirms a given proposition while the other party affirms the opposite of the same proposition. The dialogue centers around each party offering premises that support their own claims or refute the claims of their opponent. This dialogue has a simple structure which is as follows:
A dispute does not necessitate bad feelings or heated arguments. The point is that there is one issue and two opposing opinions. Through the discussion of opinions and facts, someone might change their mind, however it is unlikely. The “satisfaction” is thus not a change of behavior, but rather some point that says, “I have discussed this enough.”
A key to dialogue management is the degree of initiative by each party. Each dialogue participant can either proactively steer the conversation in some direction, or simply react to the other participant. In actively managed dialogue, the system brings the conversation back on topic if we started to stray. In unmanaged dialogue, it only affects the conversation a sentence at a time, awaiting signals to respond.
“What to say next” depends on what mode is appropriate to the conversation. Sometimes, you speak to be heard, and are open to whatever response you might receive (just ‘putting it out there’ or ‘fishing for a response’ or “bouncing and idea” off someone).
Other times, you speak specifically to affect a response. This targeted speech is about eliciting some expected feedback, so you know you've led the listener to a specific state of awareness about you and your perspective.
At that point there is shared context and understanding. The dialogue can proceed correctly (as opposed to continued miscommunication). This is akin to the idea that it takes both a transmitted message and a feedback response to create a complete “communication loop”.
After the parsing of each sentence, Volition knows both the current-sentence topic and the nominal topic for the current paragraph. These are strong indicators used to determine if dialogue is on topic or not. Topics are simply compared with the active dialog process pool link to make this decision. From the personality standpoint, the brain may or may not choose to enforce maintenance of the discussion topic.
Finally, a key to conversation is to occasionally ‘break out’ of it and assess (implicitly or explicitly) what it is about. Stepping outside the dialogue to make a statement about the dialogue itself is demonstration of the ability to truly step back and generalize on-the-fly. This also helps maintain common context. An example conversation with the EBM agent would be:
The ability to ask the right question at the right time in order to reduce a growing conversational ambiguity is a key to maintaining shared direction and focus to the dialogue. Ambiguity recognition should trigger a clarification request.
This chapter is not exhaustively implemented in the EBM, per se, but serves as guidance of the continual extension of dialogue processes, particularly where using process neurons in the implementation. Unless otherwise specified, references such as P21 are to Waltan.
Generally, any detected rules-violation should trigger an event of some form, or must take part in a centralized condition-handling mechanism.
To model dialogue types proposed by Walton and Krabbe (1995) (see Chapter 2, Section 2.7.2), the authors used seven dialogue moves: assert, accept, question, challenge, request, promise and refuse. For each move, they defined rationality rules, dialogue rules, and update rules. The rationality rules specify the preconditions for playing the move. The update rules specify how commitment stores are modified by the move. The dialogue rules specify the moves the other player can make next, and so specify the protocol under which the dialogue takes place.
The above might contain something like:
Where the above bolded items represent enumerations or tokens representing a sequence of dialog “Schemes” (possibly ‘argumentation schemes’), per Walton, et. al.
On the basis of Amgoud et al.'s work, Sadri et al. (2001) proposed a protocol but with fewer locutions called dialogue moves. The legal dialogue moves are request, promise, accept, refuse, challenge and justify. The content of the dialogue moves request and promise are resources, while the content of the other four dialogue moves are themselves dialogue moves. For example, accept(Move) is used to accept a previous dialogue move Move and challenge(Move) is used to ask a justification for a previous dialogue move.
Kind of speech acts or locutions that are allowed.
Turns-taking and other guidelines
Specifies how each type of locution leads to commitments by the participants.
Determine the sequence of locutions that constitute fulfillment of goals.
(Specific types) Participant may not wander too far off the topic (goal) of the dialogue.
(Specific types) Participant must answer questions cooperatively and accept commitments that reflect his position accurately.
(Specific types) Participant must provide enough information to convince his respondent but not provide more information than is required or useful for the purpose.
A direct answer to yes-no question is ‘yes’ or ‘no’.
If you give a direct answer, you become committed to the question's propositions.
A direct answer to a why-question is to produce a set of propositions that implies the proposition queried.
A direct answer to a whether-question is to produce a proposition that represents one of the alternatives posed by the question.
A person may retract or remove his commitment to a proposition explicitly. He may not give a “no reply” to a question about his own commitments.
Options for reply to an Objectionable Question.
Answer “No commitment” (or equivalent).
Reject the presuppositions rather than answer the question.
Attack the question itself.
If question is aggressive, responder must be aggressive too.
A question is objectionable if it attempts to preempt the responder on an unwelcome proposition, by presupposing that the answerer already accepts it.
Question is overly aggressive.
Unwelcome propositions are those the responder is not committed to, those that are prejudicial to his side of the argument.
Opening Stage
Shift in Type of Dialogue
Confrontation Stage
Unlicensed attempt to change the agenda
Shift to argument stage without agreement of agenda
Argumentation Stage
Not making effort to fulfillment obligation
Not meeting burden of proof
Not defending a Challenged Commitment
Shift your burden of proof to other party, or alter burden of proof
Carry out internal proof using premises not yet conceded by other party
Appeal to external sources of proof without backing up argument properly
Failures of relevance
Providing wrong thesis
Wander away from point to be proved
Answering the wrong question
Improperly dealing with questions
Failing to ask question appropriate for stage of dialogue
Asking questions that are inappropriate
Failing to reply to question properly, including answering evasively
Failing to define, clarify or justify meaning or definition of significant term
Also, failing to use standards of precision appropriate to the discussion, if challenged by another participant
Closing Stage
Attempt at premature closure, unless by agreement or by fulfillment of the goal
These failures to perform normally are not behavioral requirements for the EBM. They are behaviors to be observed in other's conversation. However, for realistic emulation of New Yorkers, it may be a reasonable goal to build evasiveness and irrationality into the dialogue. For each “rule-breaking,” the EBM can decide if the offense was enough to quit conversation or if it should continue. It will also check to see if the offense is common to that particular person, so that it becomes a personality trait.
Informal Question Fallacy
Fallacy of Many Questions (or, Fallacy of Complex Question) “Have you stopped beating your wife?”
Ignoring the Issue Fallacy
Appeal to Force Fallacy
Appeal to Emotions Fallacy, emotions, enthusiasms, popular/group feelings
Personal Attack Fallacy—ad hominem—(responding to)
Argument from Ignorance fallacy (ad ignorantiam); Just because something has never been proven does not make it is false. Conversely, never proven false does not imply true.
Fallacy of Equivocation (Confusion between two meanings of a term w/contextual shift)
Straw Man Fallacy (arguer's view is misrepresented, exaggerated or distorted)
Fallacy of Arguing in a Circle (circular proof)
Slippery Slope Fallacy (presuming a sequence of inevitable events)
Fallacy of Composition (attributing properties of parts as properties of the whole)
Black-and-White Fallacy (question poses exclusive disjunction that misrepresents the possibilities allowed in a direct answer) (“Is a zebra black, or white?”)
Do both sides agree on the thesis (conclusion) being discussed? This must be established before irrelevance can be evaluated or charged. I.e., are both sides grousing about the same proposition?
Is the (agreed) thesis about one proposition—on the surface—but really about another issue? E.g., arguing about who should take the trash out this morning, but the real issue is why the other person came come late last night without an explanation. P61
Does the conclusion agree with the premise (proposition or thesis)? If not, this is an ignoratio elenchi fallacy.
An ignoratio elenchi (ignoring the issue, or irrelevant conclusion) exist when an argument fails to prove the conclusion (thesis) it was supposed to prove, but is instead directed towards proving some other (irrelevant) conclusion.
If an ignoratio elenchi is considered but the proponent has not finished his argument, the charge may be premature. He may move to conclusion-premise agreement before he is done. Instead, treat the criticism as a request for more information.
An argument that appears to refute the thesis of the other (but really does not) may be determined to be a case of ignoratio elenchi.
A sentence is fallacious if it forces him to accept a proposition that he should not.
Weigh strong and weak points of an argument (argument points list), then attack the weakest point. Of particular interest are claims based on expert knowledge, as well as ambiguous items and information that is left out (omission could indicate downplay of a weakness):
For ad ignorantiam Cases: If experts have tried to prove it and failed, concentrate on trying to prove it false, rather than true.
For Loaded Questions: Reply to question with a question. Have the questioner prove his presuppositions to the question, giving evidence for the assumptions made. Victim of unsupported accusation must not try to prove his innocence.
No Answer: If the question repeats previous question.
No Answer: If question is unduly aggressive or argumentative.
No Answer: If question lacks clarity, is misleading, or is ambiguous.
No Answer: If question is addressed to an expert and is outside his field of expertise. P51 A non-answer to these last 4 cases removes the obligation to answer the questioner.
General Case: Reply to the question with a question to shift the burden of proof back to the questioner. (The questioner may then declare the returned question to be evasive.)
For a ‘complex question’ (it contains and, or or if-then), the responder must question the question by separating the propositions in the presuppositions into units he can reasonably deal with.
A question that is ‘objectionable’ is open to reasonable criticism of objection by the responder. This is especially so when the question is objectionable because it is overly aggressive.
If questioned to prove, clarify or defend a proposition he has already committee to (even by default), responder must directly respond. “He who asserts must prove.”
Suggested Courses of Action when Asking Questions (Technique)
Aggressive Questioning: Pack so much loaded information as possible into presuppositions of a loaded question that the respondent would be severely implicated in any attempt to a straight answer. If packed into a loaded yes-no question, and the respondent fails to give a straight yes-no answer, then him of evasion or of failing to answer the question.
Use of definitely or conclusively in an ad ignorantiam argument suggests the argument could be fallacious.
If conclusion is phrased as plausible presumption, an ad ignorantiam argument may be reasonable.
Look for conclusion indicators such as therefore, thus, and consequently.
Evaluate the burden of proof for every proposition by either side.
Presuppositions of Questions and their Analysis
Questions have presuppositions and can advance a set of propositions. A question calls for an answer, but when the respondent gives the direct reply that was requested, he automatically becomes committed to those propositions. Questions therefore influence the outcome of an argument most decisively.
A presupposition of a question is defined as a proposition that one becomes committed to by giving a direct answer to the question.
Complex Questions have two or more presuppositions.
Yes-No Questions: The main presupposition that the yes-answer is true or that the no-answer is true. E.g., in “Is snow white?” snow is either white or is not white.
Why-Question: The main presupposition is that the proposition queried is true. E.g., in “Why is chlorine heavier than air?” the proposition is that “Chlorine is heavier than air.”
Whether-Questions: The main presupposition is that at least one of the alternatives is true.
Did-You Questions: The main presuppositions include the existence of the purported action and the existence of the related facts. E.g., in “Have you stopped beating your wife?” the presuppositions are that you did beat your wife, and that you indeed have a wife (i.e., an R_POSSN).
Do-You Questions: The main presupposition is that the purported action or condition is true.
A proposition presumed to be acceptable to the respondent
Respondent is committed to the proposition if he gives a direct answer.
Unwelcome Commitments—Trapped by fallacy of Many Questions.
Loaded Questions—Fallacy of Many Questions.
Harmful (or not)
Reasonable: The question is clear of fallacies and can be answered directly.
Fallacious: The proposition within the fallacy must be dealt with before the question can be answered.
Complexity: Each proposition must be dealt with in turn, rather than answering the question as a whole.
Objectionable: When it becomes too aggressive. (Possible global event.) Answering an overly aggressive question causes responder to be discredited and undone. Violates reasonable order of Q & A in dialogue. Question is especially objectionable if question is overly aggressive.
Circular: (“begging the question”) A has a B; B is a C; Therefore, A is a B.
The normal expectation is for a helpful answer. However, the answer must be analyzed to determine whether it is actually helpful.
Direct Answer: In addition to answering the question, the responder has also agreed to the presuppositions of the question.
Indirect Answer: The responder can be accused of being evasive or committing a fallacy of irrelevance. (In political debate, it can look guilty.) P56
A Reply: This is answering a question or a premise with a premise of one's own. This is especially acceptable in answering a loaded or complex question, in which one must address multiple premises or presuppositions.
Answering With a Question: Shifts burden of proof back to the opponent. This is not always valid, so check to be sure it is before responding.
Reasonable:
Judged as Evasive:
Judged as Irrelevant:
Information is tracked for each argument or question that is part of dialogue. These are kept in a chain of records that are extended as the discussion continues. Older and non-relevant links are discarded when they are outdated, no longer apply, or when overall topic has changed.
For a given dialogue, the argumentation scheme should not change. When it is sensed that the responder has made an attempt to change the scheme, his arguments may be invalidated.
Following is a list of the elements of a dialogue record. Each record relates to one point being made or proven, but each may contain multiple premises or propositions which themselves are independent NIDs (concepts) or CIDs (sentence clauses):
Thesis (or issue)—Proposition to be proved or question of controversy under discussion. This can also be a simple topic (NID) or statement (CID). Both sides have to agree this is the issue under discussion.
Dialogue Method—The method being used for the discussion, though it may change from premise to premise. Keep track of the overall dialogue method, as well as the method for each premise to track shifts in pattern.
Premise—Beyond the presupposition, this is presumed to be the actual argument. Once the presuppositions are dealt with, consider the argument as the thesis.
“Small talk” is the means of an introductory process. Small talk humanizes the relationship. As an icebreaker, small talk is a process on the way to engaging in “real” communications. It is significant in that it is the means to connect on a relational heart level with the other person.
Some of the information in this chapter and implemented in the EBM was derived from the book, “The Fine Art of Small Talk” by Debra Fine, ISBN 9-781401 30226 9 (Barnes & Noble).
With small talk, a person has a basis for self confidence in social situations. Without it there is the (probability) of being socially insecure. It enables us to:
This chapter defines some of the methods and techniques of small talk, and gives them in such a manner that they can be implemented as learned neurons. This is in contrast to implementing them as a hard-coded process.
For this reason, small talk has been implemented through the use of process neurons, a particular application of the normal conceptual neuron. Obviously, the stand-alone brain that is not connected to robotics cannot express some of the mannerisms associated with small-talk, but these faculties can be later integrated without conflict with the methods of process neurons.
Throughout this chapter, the term “ASOC” is often used. It is a generic term for “association reln,” and may imply one of several reln types most appropriate for the connection under discussion.
Some of the small talk conversational processes include:
Some of the rules of small talk processes include:
These are presented here with a means for implementation; that is covered by the remaining sections.
This section includes example situation-dependent ice-breakers. They are suitable for storing as templates in a sequence block of a relevant neuron. A general sequence of conversation (possibly hard for a brain that doesn't have a head to wag) is
Smalltalk can later be redirected to more formal dialogue where appropriate.
Each of these has one or more reln connections that can be associated with it. To correctly select from the list of these, it is necessary to match the associations with current internal conditions. I.e., if there is a need begging to be solved and this person may be able to help out, define and use associations (ASOCs) to need. Some of the initial business ice-breakers include:
A substantial set of these is included in the Dialogue.txt file as part of neural content. Some of these choices are reflective of action, e.g., play piano. They need to be properly associated to clumps to make the decision process possible.
Each of these has one or more ASOCs that can be associated with it. To correctly select from the list of these, it is again necessary to match the ASOCs with the current internal conditions. I.e., if the subject is a movie, a method will have to be defined—probably with ASOCs—to select the proper small item (from a list such as this), then to select the proper option (e.g., “movie”) from the small talk item itself.
As with Business Icebreakers, a substantial set of these is included in the Dialogue.txt file as part of neural content. Some of these choices are reflective of action, e.g., play piano. They need to be properly ASOC'd to clumps to make the decision process possible.
When we are on the listener side of an icebreaker to a conversation, make assessments and decisions in the following manner:
Starting a “from scratch” conversation is helpful at a meeting, party, reception or family reunion. The essential parts of it are:
Continue the conversation using the methods outlined elsewhere in this chapter.
Open-ended questions to a group of people stimulates conversation between them, lets the individuals of the group be the focus, and permits you to learn something about them. It makes them comfortable (they're talking about themselves) and puts them at ease for conversation with you. Some of such questions include the following:
Some of these options assume the known state of a previous conversation or topic, and extend the conversation along derivative lines.
Once a conversation has been so initiated, it will play out in some manner and then possibly begin flagging. There are then “continuity questions” that may be asked, both from the personal and professional sides.
The following are alternative ways to bypass clichés and normally-expected questions used for small talk. Some require prior knowledge of the topic or analysis of the Responder's replies:
Other methods include analysis of the topic content of the Responder. All of these provide basis for follow-on questions. The approach is this:
The above processes require hard-wired logic to implement, although its elements may be sequenced from a neuron. For example: “I hate being an engineer” is casting negatives on the speaker's experiences in the area. Both types of emotion-laden issues are materials for W-H questions relating to the topic, and pull the conversation forward.
The following is a sampling of questions suitable for maintaining continuity in small-talk personal conversations. A complete list is found in Dialogue.txt:
There is a difference in appropriate questions between a professional (any profession) and a business owner or manager. As before, the appropriate connections to the questions should be made with ASOCs so they can be culled in a manner appropriate to the present context and pool content.
Other opportunities exist for brains with vision recognition. This free-for-the-taking information for asking W-H questions includes:
Some of these require optical correlation and the ability to ascertain what type of object is being perceived. These can be ignored in the short run, but must be accounted for when these visual skills have been developed.
On the analytical side, there is opportunity for asking W-H questions based upon observed behavior. These can include perceived intent:
The above list can be extended to include all results from awareness and expectation pools, too. Use of our internally-firing emotions (particularly negative ones) can lead to bad conversational methods. Enable their use for proper emulation of non-disciplined people.
One analyst in non-verbal communications (Ray Birdwhistle) asserts that communication is 35% verbal and 65% non-verbal.
Positive messages are conveyed by the following positions:
Negative messages are conveyed by the following positions:
Some short feedback lines tell the speaker that the responder is actually listening. This is illustrated in
Transition into New Topics
When the intention is to transition to a new topic, the following are some options. They can be configured with ASOCs to properly select them. These methods convey that you are listening and connected, and that you want the responder to continue speaking with you.
Beyond basic brain implementation is a set of requirements for configuration and training Almost all of this is done via ordinary English text, many parts of which become “boiler-plate” after their original creation.
With relevant training, many applications open for use of the EBM. This chapter explores a few such applications.
Referring now to
To ameliorate this, the EBM is being configured to read the log files in semi-realtime and perform sense-making on the events. It interprets the events and signals the operator to look at the event sequence, or can be configured to automatically take remedial action. Communication between the brain and the operator is in conversational English.
This application develops profiles on threats and identifies their behaviors and typical methods
For this application, the set of neuron “spaces” shown in
Example interaction with the system is shown below (operator inputs shown in BOLD CAPS):
This interactive text mode eases operator fatigue and also permits unattended operation for routine events, with critical events up-lined to an appropriate human operator. The system can be expanded by adding additional brains, optionally arranged in a hierarchical fashion.
Web search is another application for the EBM. Two ‘commercial’ examples are given here, Powerset and Cognition. Both are Natural Language Parsers (NLPs) targeted for web search. They both bring value to the search world but are both limited in that they are just NLPs and do not have an internal brain. (Powerset was acquired by Microsoft for $25M.)
The principal differentiator? Google, Powerset and Cognition search engines share one thing in common: they index on words rather than concepts.
The three parts of a search application are:
Powerset and Cognition appear to have robust parsers (Powerset's is claimed to handle 7 languages), and a smooth text-based human interface. Both perform the search and return reasonable search results—with Cognition's relegated to specific intranet data sources. Unlike Google's mass of result pages, the Cognition outputs were minimal but reasonable. It reads the English text and—without comment—gives a set of web-page references, providing neither commentary or direct answer.
The alternative is to for the search ‘bots’ to read in the text but to index on concepts rather than on words. If the user does not know the word (or even concept title) he is searching for, yet can describe it, the EBM could interact with him to identify the nature of the concept he is searching for. The results of the search are now three-fold:
To yield a direct answer, the brain requires training such as reading portions of Wikipedia or some intranet pages relevant to the application. The search itself may even become secondary. The user experience is enhanced and is aware far less of a machine-human interchange.
Obviously, related search applications include the study and inquiry into maintenance of the F14 Tomcat based on reading history and experiences in servicing the craft, permitting proactive maintenance brains. This is a throw-back to the expert systems that was a driving goal of the 1980s.
Another application mitigates the loss the knowledge of senior military commanders, particularly in their early post-conflict retirement. It is possible for a brain to be feed emails, post-action reports, circumstantial information and reports, and to paint a realistic picture of the conflict from the commander's perspective.
The ability to configure the EBM for personality and temperament permits subsequent interaction with the brain to reflect that commander's personality. (Maybe not a hot idea in some cases!)
The nature of the EBM architecture makes it extremely useful for sociological modeling, something ordinarily extremely difficult. Here is the situation repeatedly posed in military circles:
The answer is yes. One could expect poor results from attempting to model a single individual—even if he is autocratic—because ultimate outcomes are determined by a variety of personalities, each with unique combinations of drives, deference and experience. This is a natural problem for the EBM to address and solve.
Emotional associations can be made through text-based training between any word, concept or experience to any emotion, positive or negative. Knowledge of sociological structures, conditions, events are matters of (English text-based) training and tweaking. In the EBM these concepts do not substantively differ from concepts of the physical sciences; they are yet additional concepts to record, perhaps with trainer-defined emotional implications.
Behavioral modeling in the EBM model is driven by three underlying matters:
Individuals from the top cadre can be configured individually, with the back-stories of emotional content that drive them.
During simulation, the brains are allowed to interact with each other (in English, over the TCP/IP link ports). Their before-sim mental knowledge or states can be recorded for later reset-and-rerun and a scenario presented to them (incremental training). The training director can then release them to react to the scenario, recording the interchanges that take place to see if they would make decisions abhorrent to a Westerner.
It will be appreciated by those skilled in the art having the benefit of this disclosure that this emulated brain provides a method for processing a query through a database of concepts in order to determine an action in response thereto. It should be understood that the drawings and detailed description herein are to be regarded in an illustrative rather than a restrictive manner, and are not intended to be limiting to the particular forms and examples disclosed. On the contrary, included are any further modifications, changes, rearrangements, substitutions, alternatives, design choices, and embodiments apparent to those of ordinary skill in the art, without departing from the spirit and scope hereof, as defined by the following claims. Thus, it is intended that the following claims be interpreted to embrace all such further modifications, changes, rearrangements, substitutions, alternatives, design choices, and embodiments.
This application claims priority to U.S. Provisional Application Ser. No. 61/100,940, filed on Sep. 29, 2008 and entitled, “TECHNOLOGY DETAIL OF THE NEURIC BRAIN,” the specification of which is incorporated herein by reference. This application is related to U.S. patent application Ser. No. 12/344,312, filed on Dec. 26, 2008 and entitled, “DISCUSSION PATENT,” which claims benefit of U.S. Provisional Patent Application Ser. No. 61/016,918, also entitled DISCUSSION PATENT, filed Dec. 27, 2007, and U.S. Provisional Patent Application No. 61/140,005, entitled PROCESS OF DIALOGUE AND DISCUSSION, filed Dec. 22, 2008. This application is also related to U.S. patent application Ser. No. 12/136,670, entitled METHOD AND APPARATUS FOR DEFINING AN ARTIFICIAL BRAIN VIA A PLURALITY OF CONCEPT NODES CONNECTED TOGETHER THROUGH PREDETERMINED RELATIONSHIPS, filed on Jun. 10, 2008. All of the above are incorporated herein by reference in their entireties.
Number | Date | Country | |
---|---|---|---|
61100940 | Sep 2008 | US |