专栏首页专知100+中文词向量,总有一款适合你

100+中文词向量,总有一款适合你

【导读】这个项目提供了大量的中文预训练词向量。包含多种representations(包括dense和sparse)、多种词粒度(word、ngram、char等),多种窗口大小,多种语料(百度百科、人民日报等)训练出的Word Embedding。总有一款适合你。此外,该项目还提供了一个中文类比推理数据集CA8以及一个能够评估词向量质量的工具。

编译 | 专知

参与 | Yukun, Huaiwen

Chinese Word Vectors 中文词向量

WordEmbedding格式



项目中预训练的向量文件采用文本格式。每一行包含一个词和它的向量。向量的每个值用空格隔开。文件第一行记录的是元信息:第一个数字表示文件中词的数量,第二个数字表示词向量维度的大小。

除了dense词向量(用SGNS训练),我们还提供sparse向量(用PPMI训练)。它们与liblinear的格式是相同的,在“:”之前的数字表示维度索引,在“:”之后的数字表示其值。

多种Representations



现有的词表示方法分为两类:dense表示和sparse表示。 SGNS模型和PPMI模型分别是这两类表示的典型方法。 SGNS模型通过浅层神经网络训练低维密集向量, 这种方法也被称为神经嵌入方法。 PPMI模型是一种稀疏的特征表示,即正点互信息(positive-pointwise-mutual-information)。

多种上下文特征



三种上下文特征:词、ngram和字符,这三种上下文特征经常在词向量表示的文献中出现。 大多数单词表示方法主要利用词与词之间的共现统计数据,即使用词作为上下文特征。受语言模型问题的启发,我们在上下文中引入了ngram特征。词与词和词与ngram的共现统计数据通常一起用来训练。对于中国人来说,字符通常表达强烈的语义。在最后,我们使用词与词和词与ngram共现统计数据来学习单词向量。字符的ngram的长度通常在1到4之间。

除了单词,ngram和字符之外,还有其他对词向量产生影响的特征。 例如,使用整个文本作为上下文特征可以将更多的内容信息融入到词向量; 使用依赖关系解析作为上下文特征可以为词向量添加语法约束。本项目考虑了17种同现类型。

多种上下文信息



词向量通常是基于一个词来预测其上下文(skip-gram),在一些相关论文中通常被称为输入和输出向量。在这一步部分,我们设置了多种上下文供你选择。

所有向量由SGNS以百度百科为数据集进行训练。

多种语料



该项目收集了大量语料,所有文本数据在预处理中删除了html和xml标签,只保留了纯文本信息,并且使用HanLP(v_1.5.3)进行分词。语料的详细信息如下所示:

工具包



所有的词向量都由ngram2vec工具包进行训练。Ngram2vec工具包是由word2vec和fasttext工具包结合起来进行构造,支持抽取任意上下文特性。

  • 评价dense vectors:
$ python ana_eval_dense.py -v <vector.txt> -a CA8/morphological.txt
$ python ana_eval_dense.py -v <vector.txt> -a CA8/semantic.txt
  • 评价sparse vectors:
$ python ana_eval_sparse.py -v <vector.txt> -a CA8/morphological.txt
$ python ana_eval_sparse.py -v <vector.txt> -a CA8/semantic.txt

中文词类比基准



词向量的质量通常通过类比问题进行评估,在这个项目中,评估过程采用两个基准。第一个是CA-translated,其中大多数类比问题直接从英语基准转换而来。虽然CA-translated已被广泛用于许多中文单词表示论文,但它只包含三个语义问题的问题并且只包含了134个中文单词。相比之下,CA8是专门为中文而设计的。它包含了17813个类比问题,并且包含了复杂的词法和语义关系。 CA-translated和CA8及它们的详细描述在testsets文件夹中可以看到。

参考:

Shen Li, Zhe Zhao, Renfen Hu, Wensi Li, Tao Liu, Xiaoyong Du, Analogical Reasoning on Chinese Morphological and Semantic Relations, ACL 2018.

链接:

https://github.com/Embedding/Chinese-Word-Vectors

更多教程资料请访问:专知AI会员计划

-END-

本文分享自微信公众号 - 专知(Quan_Zhuanzhi)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-05-13

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 远控杂说---总有一款适合你

    Ms08067安全实验室
  • 送书 | DDD/Serverless/RESTFul Web Clients,总有一款适合你

    ThoughtWorks作为一家学习型组织,颇为看重每一位员工的学习能力。好读书、会读书是我们的共有基因,著书、译书在这里也成为风潮,我们通过这种方式加深对知识...

    ThoughtWorks
  • Mybatis中实现批量更新的几种姿势,总有一款适合你

    mybatis中实现批量插入是很简单的,相比大家都知道,这里就不赘述,本文主要讲述如何实现批量更新。

    品茗IT
  • 网罗几种中Python配置文件方式,总有一款适合你

    configpare算是老牌的配置文件选择之一了,优点是标准库,不需要安装,但是需要注意的一点是,在Python2和Python3上使用方式略有差异

    追马
  • Python调用Shell命令–总有一款适合你

    #!/usr/bin/python # -*- coding: utf-8 -*- import os import commands import subpr...

    苦咖啡
  • 10款流行的Markdown编辑器,总有一款适合你

    作为一个开源人,如果你不会使用Markdown语法,那你就OUT了!Markdown 是 2004 年由 John Gruberis 设计和开发的纯文本格式的语...

    用户5807183
  • 总有一款适合你的协同设计工具

    协同设计是当下技术行业技术更新的一个重要方向,也是设计类工具软件发展的必然趋势。它,不单是一个设计类的专业术语,更是一种商业化的服务模式。

    奔跑的小鹿
  • 总有一款适合你的协同设计工具

    协同设计是当下技术行业技术更新的一个重要方向,也是设计类工具软件发展的必然趋势。它,不单是一个设计类的专业术语,更是一种商业化的服务模式。

    奔跑的小鹿
  • 这么多监控组件,总有一款适合你

    监控是分布式系统的必备组件,能够起到提前预警、问题排查、评估决策等功效,乃行走江湖、居家必备之良品。

    xjjdog

扫码关注云+社区

领取腾讯云代金券