In the recent Strong AI diaspora of MindForth
and the tutorial AiMind.html program, we have
implemented the neural inhibition of concepts
immediately after they have been included in
a generated thought. Now we would like to
make inhibition occur when one or more
responses must be made to a query involving
nouns or a query involving verbs. The question
"What do bears eat?" is a query of the
what-do-X-verb variety involving one or more
nouns as potentially valid answers as the
direct object of the verb. If the noun of each
single answer is immediately inhibited, the
AI can respond with a different answer to a
repeat of the question. Likewise, if we ask
the AI, "What do robots do?", the query is
of the what-do-X-do variety where potentially
multiple verbs may need to be inhibited so
as to give one valid answer after another,
such as "Robots make tools" and "Robots
sweep floors." If we are inhibiting the verbs,
we do not want the direct-object nouns to
be inhibited. We might need replies with
different verbs but the same direct object,
such as "Robots make tools" and "Robots
use tools."
Inhibition may also play a role in calling the
ConJoin module when a query elicits multiple
thoughts which are the same sentence except
for different nouns or different verbs. The responses,
"Bears eat fish" and "Bears eat honey" could
become "Bears eat fish and honey" if neural
inhibition suppresses the repetition of subject
and verb while calling the ConJoin module to
insert the conjunction "AND" between the two
answer nouns.
Thurs.26.MAY.2011 -- Problems With Determining Number
When we try to troubleshoot the Forthmind by
entering "bears eat honey", a comedy of errors
occurs. The AudRecog module contains a test
to detect an "S" at the end of an English word
and set the "num(ber)" value to two ("2") for plural.
However, that test works only for recognized words,
and not for a previously unknown word of new
vocabulary. So the word "bears" gets tagged as
singular by default, which causes the AI to issue
erroneous output with "BEARS EATS HONEY",
as if a singular subject is calling for "EATS"
as a third person singular verb form.
The process of determining num(ber) ought to
be more closely tied with the EnParser module,
so that the parsing of a word as a noun should
afford the AI a chance to declare plural number
if the incoming noun ends with an "S".
Now we have inserted special code into the
AudInput module to check for the input of nouns
ending in "S", and to set the "num(ber)" variable
to a plural value if a terminating "S" is found.
For singular nouns like "bus" or "gas" that end
in "S", we will have to devise techniques that
override the default assumption of "S" meaning
plural. We may use the article "A" or the verb "IS"
as cues to declare a noun ending in "S" as singular.
Mentifex (Arthur)
--
http://www.scn.org/~mentifex/mindforth.txt
http://cyborg.blogspot.com/2011/05/may26mfpj.html
http://groups.google.com/group/comp.lang.forth/msg/f882812dbfe2de7a
http://hplusmagazine.com/2011/05/26/the-benefits-of-open-source-for-agi