匿名用户 作为曾经在宇宙中心打过滚的输入法代码工人,一直匿藏于知乎的角落,没想到竟然有这么对口的问题,激动! 先回答第二个问题,怎么可能是人工监控,搜狗不可能找那么多“临时工”。 好,玩笑不多说,下面是纯干货。我来给大家分析分析搜狗输入法是怎么做到的? 既然不是人工,那肯定就是程序分析啦,不过究竟是什么程序?据我所知,输入法那边其实也没具体的叫法,但是原理其实都明白,我这里根据用途杜撰了一个,姑且叫他热词挖掘系统,不知道是否准确,如果输入法的同学看到,有更好的说法,请补充。 其实挖掘系统是为能够及时发现网络新词丰富词库而开发,所有的新词主要有三个来源——搜索中的热词、社交媒体中的热词、用户输入频率高的热词。一旦以上渠道的某个网络新词的热度达到一个预设的值,就会触发热词挖掘系统,云端词库将收录该词,然后 push 给用户。这其实从另一个角度说明了一个问题,一个网络新词火还是不火,有没有被输入法搜录进词库其实也是标准之一。 下面我比较细的分析下热词挖掘系统,看他是怎样工作的! 搜索 首先要说搜狗输入法一个特别牛逼的地方:搜狗输入法与搜狗搜索的数据其实是共享的。这样的结果就是搜狗输入法可以根据用户的搜索次数发现各种词到底火不火,一旦一个“关键词”搜索频率过高,搜狗输入法就及时的将它与云端词库进行对比,如果发现词库中没有这个关键词,当这个关键词的搜索量达到一定量级后,就会触发搜狗热词挖掘系统进行判定,判定为热词后就将它添加进词库。比如题主说的“互联网 +”这个词,在原来的词库里是绝对没有的,但是搜索这个词的用户多了,热词挖掘判定通过,词库就会有这个词。 社交媒体 社交媒体是网络新词的最主要诞生地,新浪微博公布的数据是每天发布的内容超过 1 亿条(实际可能没有这么多,呵呵),这些微博内容从流行段子到心灵鸡汤以及文艺青年的碎碎念,其实都是热词系统要爬要分析的内容,另外特别值得一说的是,据说热词挖掘系统还能独家挖到微信公众号的内容来分析。(有干爹就是牛啊!)所以像“duang”之类的新词一旦在社交媒体出现,热词挖掘系统就会根据他的提及率、阅读量、含有新词热门微博的转评数据进行分析,当对比后发现这些流行词汇没有收录,然后系统就会更新到词库中,之后你就会发现输入这个词时他已经成了首选词。 用户体验计划 其实无论那一款软件,都有会这样的提醒,“加入 XXX 的用户体验计划”,而搜狗输入法的用户体验计划最主要的用途就是词库的更新。新词出现后,搜狗输入法热词挖掘系统就会对这些用户提供的新词的热度进行统计,一旦热度超过一定的标准,搜狗输入法也会将这些词加入到需要更新的词库中去。 以上只是我的一些初步分析,但相信已经离真相不远了。如果输入法的同学能够看到,有兴趣的话不妨补充下。 查看知乎原文