开发QQ小强智能聊天的基本原理
开发QQ小强智能聊天的基本原理
发布时间:2016-12-22 来源:查字典编辑
摘要:QQ小强,基本原理就是有一个根据汉语语法规则的对照表。例如,你说:"去死吧",在程序中就会在对照表中找到与"死"有关的记录,然后对比"去死"...

QQ小强,基本原理就是有一个根据汉语语法规则的对照表。例如,你说:"去死吧",在程序中就会在对照表中找到与"死"有关的记录,然后对比"去死",确认与"去死"相关的记录,随机找出一条(这样对话就不会重复)。

如果句子过长,例如,"我今天很不开心",找出句子中的"主谓宾",这将语句分为:"我","不","开心",逐一组合与答复对应表进行匹配,再将初步筛选的记录针对"我不开心"进行最近似比较,最终确认回复的记录。

如果是短语/词汇就相对简单,只需要最多2层筛选就可确认。

补充一点,在一个句子中,确认主语是非常关键的,这样,可以决定回复的对象,例如:"你",那么,回复是,一定会有"我",如果主语为"我",那么回复中,则确定对象为"你"。

其次,是逻辑判断,即"是"、"否"、"不是"、"可能"、"不"、"肯定"等,来确定后面附带的名词或动词的含义(即相应动词或名词所关联的对应表)。

例子分析:"你去死吧",提取关键字:"你"(主语)、"死"(动词)

主语对应表:

主语"你" 关联回复:我

主语"你" 关联回复:那么你

动词对应表:

动词"死" 关联回复:不要死

动词"死" 关联回复:想死吗

动词"死" 关联回复:为什么想死

动词"死" 关联回复:死是很可怕的

经过筛选后,按照主谓宾格式输出:

我不要死

那么你想死吗

那么你为什么想死

我为什么想死

我死是很可怕的

。。。。。。。。。

等组合。

例子二:

输入语句:我今天非常不开心,提取关键字:"我","不","开心"

主语对应表:

主语"我" 关联回复:你

主语"我" 关联回复:那么我

动词与逻辑对应表:

1 动词"开心" 逻辑:不 关联回复:想想忧伤的事情

2 动词"开心" 逻辑:不 关联回复:世界上还有很多人更不幸

3 动词"开心" 逻辑:不 关联回复:感到难过

4 动词"开心" 逻辑:是 关联回复:也很开心

5 动词"开心" 逻辑:是 关联回复:值得庆贺

经过主语、逻辑、动词筛选后,按照主谓宾格式输出只会输入:1-3(逻辑字段为: 不):

你想想忧伤的事情

你世界上还有很多人更不幸

你感到难过

上面的回复就太勉强了,如果想让句子生动、流畅,那么就需要加入更多的动词、形容词、名词等词性的分析和相应的回复对应表。此外,如让想让你的机器人更强大,就要做到"记忆推论"功能,也就是将之前的对话作记忆,将新的对话建立在记忆的基础上。这样问题就复杂了。

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新QQ技巧学习
热门QQ技巧学习
电脑子分类