其实这题目很大,语义分析其实是一块很大的东西,用这样的标题也不是为了什么就是说一下做微信公共平台在自动回复这块的小小的经验,也许算不上经验叫体验吧。

首先机器人真的能像人类一样进行语言交流,不对,现在不能达到这种技术,将来也许会有,但现在没有,有的只是虚拟的语言交流。

下面来说机器人(完全没达到机器人的要求嘛)的语义识别。 举些例子,小黄鸡之类的,自动聊天机器人,是怎么实现的呢,不知道也没研究(用词不精确啊)过,不过也只是识别用户发的关键字,做关键字回复。

前些天考试的时候,卷子写完了,正好没事,恰好呢,前几天在做微信个人平台,怎么做自动关键字检测回复呢?第一版是想用js脚本来写自动关键字检测回复,其实这里来说用脚本是挺好的,但是这里有不方便之处,后面会说到。第二版直接用代码做关键字检测,调试起来也方便了,基本上的关键字加进去也能回复了,但是代码看起来不好看啊,我强调我不是一个完美主义的人,但的确这种直接在代码里匹配的方式是非常不好的。第三版也是突然之间想起来用数据库来弄,怎么弄呢?继续看。

思路: 数据库A(也不叫数据库,做汉字查询编码)

干什么用呢,就是把单独的汉字转换为唯一的独码。

自动对话机器人(机器人语义分析)

比如 我 01BB 他 02CC 为什么这样做呢,方便储存,和关键字匹配(其实还有一点就是做相似度匹配,由于编码没做好,暂时这块就只能目前这样做关键字匹配了了)

数据库B(这才是真的数据库,做关键字自动回复储存)。

干什么用呢,就是把查询编码和自动回复保存至该数据库。

由于实际情况汉字查询编码和本文描述不一样,本文只做举例。

自动对话机器人(机器人语义分析)

字段 _code 用来储存 汉字查询编码

字段 _reply[0-9] 用来储存 自动回复文本

字段 _weight 用来储存 权值,使用自动付回复文本最高的作为权值

为什么这样做呢,作为数据库,方便收录,甚至比脚本方式更方便。

自动对话机器人(机器人语义分析)

其实本文最重要的一点就是相似度匹配,如果能做到相似度匹配,估计能减少更多的重复语义收录。

暂时先这样。

转载于:https://my.oschina.net/oldmou/blog/126882

相关文章: