酚醛保温板厂家
免费服务热线

Free service

hotline

010-00000000
酚醛保温板厂家
热门搜索:
技术资讯
当前位置:首页 > 技术资讯

能理解聊天记录的微信机器人三_[#第一枪]

发布时间:2021-06-07 17:50:55 阅读: 来源:酚醛保温板厂家

按:本文作者 grapeot,原载于知乎,雷锋网获授权转载。

聊天机器人部署了一周了。花了几个小时的时间做了一些改动,有意思的部分主要有:

和ElasticSearch和Kibana连了起来,现在有了实时监控和可视化了。能看到每小时平均有多少次自动回复,多少次看群里话唠,多少次看标签云。令我意外的是已经过去一周了,可是大家的热情仍然没有消退。尤其是最简单的自动回复功能,你提到“鸭哥”机器人就会自动回复“嘎?”。这么简单的功能我以为用户会玩玩就腻了。但数据显示,直到今天还有每小时30多次的峰值调戏量。甚至有个群一晚上刷了几百个鸭哥。。真是不能随便猜用户喜欢什么东西啊。。

第二个改动就是把标签云的算法从TF换成了TF-IDF。TF (Term-Frequency)就是最简单的数词频,这是最简单可靠的算标签云的方法,但有一个缺陷,如果没有对一些无意义的虚词做特殊处理的话,会很容易出现一些巨大但没啥意义的词。比如这个例子,“这个”,“就是”,“可以”等等。占据了大量的空间,但没啥信息量。

而 IDF(Inverse-Document Frequency)则可以解决这个问题。它基本上代表了每个词的信息量。IDF的基本思想是,如果一个词在好多群里面都有出现(比如“的”),那么就对这个词施加惩罚,让它的权重变小。如果这个词只在几个群里面出现(比如“社会主义”),那就让它变大。这样就能保证,面积最大的几个词不仅是大家经常说的,而且是最有信息量的。经过算法的这个更改以后,我们对同一个群计算标签云,结果就变成了这样:

这个群最有特色的几个词一下就出来了。

此外,我还试着把标点符号也加入到了计算里面,结果很有意思。大多数的群的标签云里面都是没什么标点符号的。原因很简单。第一,聊天的时候以短句为主,后面本来就很少加标点,TF不高。第二所有群基本上用标点的频率都差不多,所以标点的IDF也差不多。因此不会有标点特别大的情况出现。但我看到了两个群有很大的标点出现。

上面这个图是科大的AI群。因为里面经常进行一些大段的深入的讨论,所以逗号,句号和顿号都非常明显。而下面这个群,则是因为在聊买房,贷款,所以出现了百分号%。又因为这个符号在其他群里都没有出现,所以IDF巨大。一下就抢占了很大的空间。这也是为什么里面出现了房子,地主婆等关键字的原因。。

所以在某种程度上,这个机器人已经可以理解大家说话的内容了。比如可以区分内容中独特的部分。这对于分类,聚类等等进一步的应用都是非常有帮助的。如果你有什么有意思的应用,也可以在评论中提出来,我们来帮你实现。

编者注:关于本文的后续内容,我们后面几天将在雷锋网陆续刊登,敬请关注。

雷锋网相关阅读:

能理解聊天记录的微信机器人 (一)

能理解聊天记录的微信机器人 (二)

雷锋网版权文章,未经授权禁止转载。详情见转载须知。

气压计价格

视频监控系统价格

涡街蒸汽流量计货源

红豆汉堡培训