而 IDF(Inverse-Document Frequency)则可以解决这个问题。它基本上代表了每个词的信息量。IDF 的基本思想是,如果一个词在好多群里面都有出现(比如 “的”),那么就对这个词施加惩罚,让它的权重变小。如果这个词只在几个群里面出现(比如 “社会主义”),那就让它变大。这样就能保证,面积最大的几个词不仅是大家经常说的,而且是最有信息量的。经过算法的这个更改以后,我们对同一个群计算标签云,结果就变成了这样:
这个群最有特色的几个词一下就出来了。
上面这个图是科大的 AI 群。因为里面经常进行一些大段的深入的讨论,所以逗号,句号和顿号都非常明显。而下面这个群,则是因为在聊买房,贷款,所以出现了百分号 %。又因为这个符号在其他群里都没有出现,所以 IDF 巨大。一下就抢占了很大的空间。这也是为什么里面出现了房子,地主婆等关键字的原因。。
所以在某种程度上,这个机器人已经可以理解大家说话的内容了。比如可以区分内容中独特的部分。这对于分类,聚类等等进一步的应用都是非常有帮助的。如果你有什么有意思的应用,也可以在评论中提出来,我们来帮你实现。
编者注:关于本文的后续内容,我们后面几天将在AI研习社陆续刊登,敬请关注。