玩转腾讯词向量:词语相似度计算和在线查询

AINLP

先讲一个故事,自从《相似词查询:玩转腾讯 AI Lab 中文词向量》发布后,AINLP公众号后台查询相似词的信息还是蛮多的。前段时间的一天,发现一个女生id频繁的查询相似词,近乎每分钟都在操作(这里要说明一下,腾讯公众号后台是可以看到用户最近二十条消息记录的,信息会保留5天)。然后第二天这个id依然很规律的在查询相似词,作为偶尔玩玩爬虫、也弄弄网站的程序员,第一反应会不会是程序模拟操作,但是观察下来虽然很规律, 查询频率不像是机器所为,另外貌似到了晚上10点之后这个id就停止查询了。然后到了第3天,依然发现这个id在查询,所以我没有忍住,回复了一句:请确认是否是人工查询?如果这个id没有反馈,依然我行我素的查询,我可能就准备拉黑这个id了。但是她很快回复了一句:是人工查询;我有点好奇的追问了一句:为什么不通过程序直接加载和查询腾讯词向量呢?岂不更方便。她回复:不懂程序,不会,然后大概追加了一句:我在做一个课程设计,需要积攒一批相似词,所以通过AINLP公众号这个功能手动查询了一批词,抱歉带来困扰,感谢背后的程序员。

这个回复让我突然有一种释然,也很开心,觉得做了一件有意义的事情,在52nlp微博的简介里,有两句话:Make something people want; A blog for fools written by fools。第一句话“Make something people want”, 大概就是做用户想用或者有用的东西,这句话我忘了什么时候看到的,因为它触动了我,所以记录在微博简介里了,不过google后发现是硅谷孵化器YC的“口头禅”。

关于word2vec词语相似度,这里早期写过几篇相关的文章:《中英文维基百科语料上的Word2Vec实验》、《维基百科语料中的词语相似度探索》,《相似词查询:玩转腾讯 AI Lab 中文词向量》对于熟悉word2vec,熟悉gensim的同学来说,使用这份腾讯AI Lab的词向量其实很简单,只要有个内存大一些的机器(实际加载后貌似用了12G左右的内存),大概就可以通过几行python代码进行查询了:

from gensim.models.word2vec import KeyedVectors
wv_from_text = KeyedVectors.load_word2vec_format(file, binary=False)

但是这个世界大家并不都是程序员,即使是程序员也有很多同学不了解word2vec, 不知道gensim,所以这个word2vec相似词在线查询功能突然变得有点意思,有那么一点用了。其实,当时给AINLP后台聊天机器人加这个技能点的时候,还想过是否有用或者有必要,不过,经历了开头这件事,并且发现后台有越来越多不同领域查询词的时候,我能感知这件事还是很有意义的,特别对于那些不懂程序的同学来说。不过关于这份腾讯词向量相似词在线查询接口,虽然借助了gensim,但是在线服务的时候并不是基于gensim,用了一些trick,对于高并发也没有太多压力,所以对于开头这个小姑娘的持续查询操作,并不介意,还很欢迎,我介意的是机器恶意查询。

当然,还是有很多同学熟悉词向量,熟悉word2vec,也熟悉gensim的接口,所以发现有部分同学很自然的加了查询操作:相似度 词1 词2,期待AINLP后台相似词查询功能能给出两个值词语相似度,这个需求还是很自然的,所以昨晚,我花了一点时间,把这个接口也加上了,感兴趣的同学可以关注AINLP公众号:

然后后台对话操作,例如这样,选择计算AI和人工智能的相似度,AI和NLP的相似度:


输入的格式如下:相似度 词1 词2,这里得到的相似度值相似度值介于0到1之间,越接近1说明相似度越高。

最后,感兴趣的同学可以拿起你的手机,通过微信在AINLP公众号后台把玩这份中文的腾讯词向量,查查相似词、算算相似度,如果有很有意思的用处,也非常欢迎在这里留言。

注:原创文章,转载请注明出处及保留链接“我爱自然语言处理”:http://www.52nlp.cn

本文链接地址:玩转腾讯词向量:词语相似度计算和在线查询 http://www.52nlp.cn/?p=11533

一个能聊天有趣有AI的NLP公众号

NLPJob

玩转腾讯词向量:词语相似度计算和在线查询》上有8条评论

  1. 宇宙人

    有点暖

    [回复]

    YUMIAO HUI 回复:

    前辈您好!我是一名大四信息与计算科学专业学生,最近毕业论文项目需要用到这个语料库来找中文近义词,需要查询大量的关键词,感谢您提供这个非常方便快捷的查询平台!我本人对于数据挖掘,机器学习很感兴趣,您发布的文章让我受益匪浅,很有幸关注到您,再次表示感谢!

    [回复]

  2. fpp

    您好,我有两个疑问:
    1、腾讯训练的词向量只有200维的?有没有更高或更低维度的词向量?例如300维或100维等。
    2、有字向量的训练结果吗?

    非常感谢!

    [回复]

    52nlp 回复:

    腾讯AI Lab只提供了200维的词向量,其他没有

    [回复]

  3. 王小牛

    大神!

    不懂词向量这个领域, 我想问个问题: 腾讯这个数据集, 可以导出一个词频list吗? 我想要这个, 看它的词条目很全

    [回复]

    52nlp 回复:

    只能导出词条,没有词频

    [回复]

发表评论

电子邮件地址不会被公开。 必填项已用*标注