[alicebot-style] hi, i want to say some of my idea about the orgnization of AIML'quesiton
Kim Sullivan
alicebot at seznam.cz
Tue Dec 5 07:01:02 PST 2006
Hello Tom,
In AIML,we get the answer if we get the question,so i think the main
problem is how to orgnize the question.my opinion is object-origin.here is a
simple quetion,"what is Bush's age". i want to notice that i don't know how
English language processing goes , but according Chinese language processing
,if tanslated to English, we can get three logical sencenes after
tokenizing, they are:
1, "Bush" "what is" "age"
2, "what is " "Bush" "age"
3, "Bush" "age" "what is"
1 and 2 can save more computer memory than 3 in programd because
"Bush" can have a lot of "what is" questions like "what is Bush's
gender","what is Bush's living city",etc.so ,which is better,1 or 2? i think
1 is more suitable because when we are asked "what is Bush's age", the first
reflection in our mind is "Bush" and the information related to "Bush".So
that is what i say, we can organize questions of AIML in a object originated
method.
You will have a lot more "what is" questions than "bush" questions, so I
think number 2 is better and will lead to a more optimal storage of
information inside of the graphmaster. You could even get rid of the "what
is" part, and generalize it even more. For example, you could have the
general structure
"GET INFO" "subject" "attribute"
so you'd have something like
GET INFO New York Weather
GET INFO Bush age
GET INFO New York Raining
GET INFO Bush Location
In this way , we can build a knowledge network, Graphmaster's root
node's hidden field should be the place where a lot of objects are stored,
such as "earth","sun","America","China","Newyork","Shanghai",etc. Going on
from these nodes, there should be the question nodes, like "what
is","where","how",etc, and still going on ,we get the attibutes of the
object metioned in the first level.
Objects can have relations.i want to say this with a sample.here some
<category>s.
<category><pattern>bush where
living<pattern><template>Newyork</template></category>
<category><pattern>Newyork whether raining<pattern><template>no ,sunny
day</template></category>
<category><pattern>Bushing's living place
*<pattern><template><srai><srai>bush where living</srai><star/></srai>
</template></category>
if we ask "is Bushing's living place raining",first the question is
normalized to " Bushing's living place whether raining" , then we ask AIML
it , we can get the answer " no ,sunny day".so you can see the interation of
the objects. In this way , we don't have to store all of the possible
questions.AIML itself now can "think".
I'm not sure about how you decide when to stop evaluating the results...
you're right that it probably makes more sense in Chinese. In english, there
are many ways to ask about bush's living place. Currently, you only have one
level of indirection - if you askabout the weather in bush's living place,
you evaluate it to the weather in new york, and get a result.
But how do you solve questions, where there is more than one level? For
example, if you ask aboiut the weather in the location of the president of
the USA, then you first have to resolve the president of the usa to bush,
then resolve bush location to new york and then new york weather to sunny.
Kim
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://list.alicebot.org/pipermail/alicebot-style/attachments/20061205/d15868e2/attachment-0001.html
More information about the alicebot-style
mailing list