Skip to content

Latest commit

 

History

History
476 lines (434 loc) · 21 KB

README_zh.md

File metadata and controls

476 lines (434 loc) · 21 KB

Chinese Word Vectors 中文词向量

For English

本项目提供超过100种中文词向量,其中包括不同的表示方式(稠密和稀疏)、不同的上下文特征(词、N元组、字等等)、以及不同的训练语料。获取预训练词向量非常方便,下载后即可用于下游任务。

此外,我们还提供了中文词类比任务数据集CA8和配套的评测工具,以便对中文词向量进行评估。

参考文献

如果使用了本项目的词向量和CA8数据集请进行如下引用:

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

@InProceedings{P18-2023,
  author =  "Li, Shen
    and Zhao, Zhe
    and Hu, Renfen
    and Li, Wensi
    and Liu, Tao
    and Du, Xiaoyong",
  title =   "Analogical Reasoning on Chinese Morphological and Semantic Relations",
  booktitle =   "Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (Volume 2: Short Papers)",
  year =  "2018",
  publisher =   "Association for Computational Linguistics",
  pages =   "138--143",
  location =  "Melbourne, Australia",
  url =   "http://aclweb.org/anthology/P18-2023"
}

 

我们对中文词向量的内部和外部评估任务做了一个非常详尽的分析和对比,参见:

Yuanyuan Qiu, Hongzheng Li, Shen Li, Yingdi Jiang, Renfen Hu, Lijiao Yang. Revisiting Correlations between Intrinsic and Extrinsic Evaluations of Word Embeddings. Chinese Computational Linguistics and Natural Language Processing Based on Naturally Annotated Big Data. Springer, Cham, 2018. 209-221. (CCL & NLP-NABD 2018 Best Paper)

@incollection{qiu2018revisiting,
  title={Revisiting Correlations between Intrinsic and Extrinsic Evaluations of Word Embeddings},
  author={Qiu, Yuanyuan and Li, Hongzheng and Li, Shen and Jiang, Yingdi and Hu, Renfen and Yang, Lijiao},
  booktitle={Chinese Computational Linguistics and Natural Language Processing Based on Naturally Annotated Big Data},
  pages={209--221},
  year={2018},
  publisher={Springer}
}

格式

所有的预训练词向量文件均为文本格式。每一行都包括一个词和它对应的词向量。所有的值均用空格分开。每个文件的第一行记录了基本信息:第一个数值是文件中总词数,第二个数值是向量维度。

除了稠密的词向量(用SGNS方式训练的),我们也提供了稀疏的词向量(用PPMI方式训练的)。稀疏的词向量格式同liblinear中的一样,以“位置:数值”的方式存储。

预训练中文词向量

基本参数

                                       
窗口大小动态窗口子采样低频词阈值迭代次数负采样*
51e-51055

*仅适用于SGNS.

不同领域

下列词向量基于不同的表示方式、不同的上下文特征以及不同领域的语料训练而成。

Word2vec / Skip-Gram with Negative Sampling (SGNS)
语料 上下文特征
词 + N元组 词 + 字 词 + 字 + N元组
Baidu Encyclopedia 百度百科 300d 300d 300d 300d / PWD: 5555
Wikipedia_zh 中文维基百科 300d 300d 300d 300d
People's Daily News 人民日报 300d 300d 300d 300d
Sogou News 搜狗新闻 300d 300d 300d 300d
Financial News 金融新闻 300d 300d 300d 300d
Zhihu_QA 知乎问答 300d 300d 300d 300d
Weibo 微博 300d 300d 300d 300d
Literature 文学作品 300d 300d / PWD: z5b4 300d 300d / PWD: yenb
Complete Library in Four Sections
四库全书*
300d 300d NAN NAN
Mixed-large 综合
Baidu Netdisk / Google Drive
300d
300d
300d
300d
300d
300d
300d
300d
Positive Pointwise Mutual Information (PPMI)
语料 上下文特征
词 + N元组 词 + 字 词 + 字 + N元组
Baidu Encyclopedia 百度百科 Sparse Sparse Sparse Sparse
Wikipedia_zh 中文维基百科 Sparse Sparse Sparse Sparse
People's Daily News 人民日报 Sparse Sparse Sparse Sparse
Sogou News 搜狗新闻 Sparse Sparse Sparse Sparse
Financial News 金融新闻 Sparse Sparse Sparse Sparse
Zhihu_QA 知乎问答 Sparse Sparse Sparse Sparse
Weibo 微博 Sparse Sparse Sparse Sparse
Literature 文学作品 Sparse Sparse Sparse Sparse
Complete Library in Four Sections
四库全书*
Sparse Sparse NAN NAN
Mixed-large 综合 Sparse Sparse Sparse Sparse

*由于古汉语中绝大部份词均为单字词,因此只需字向量。

不同的上下文共现信息

我们提供了基于不同共现信息训练而成的词向量。下述提到的中心向量和上下文向量在类似的论文中也被称为输入和输出向量。

这个部分中的向量不仅仅是词向量,还有其它的语言单位对应的向量。比如,在上下文是“词-字”的条件下,上下文向量会包含字向量。

所有的向量均采用SGNS在百度百科语料上训练而成。

                                                       
特征共现信息中心向量上下文向量
词 → 词300d 300d
N元组 词 → N元组 (1-2) 300d 300d
词 → N元组 (1-3) 300d 300d
N元组 (1-2) → N元组 (1-2) 300d 300d
词 → 字 (1) 300d 300d
词 → 字 (1-2) 300d 300d
词 → 字 (1-4) 300d 300d
偏旁部首 偏旁部首 300d 300d
位置词 → 词 (左/右) 300d 300d
词 → 词 (距离) 300d 300d
全局信息词 → 文章 300d 300d
语法特征词 → 词性 300d 300d
词 → 依存关系300d 300d

表示方式

目前有两种词向量的表示方式:稠密稀疏的表示方式。SGNS模型(word2vec中提出的一种模型)和PPMI模型分别是二者的代表。SGNS是通过浅层神经网络训练而成的一种低维实向量来表示词语。它通常也被称之为神经词嵌入方法。PPMI模型是一种基于正值逐点互信息并且以稀疏方式表示的特征汇总模型。

上下文特征

在词向量领域通常有三种主要的上下文特征:N元组。大部分词表示方式本质上都是在利用词和词的共现统计信息,换句话说就是把词来当作上下文特征,即上文词特征中的向量。受到语言模型的启发,我们将N元组信息也引入了上下文特征中。不只是词和词的共现信息,词和N元组的共现信息也被用在了上文N元组特征向量的训练中。对于中文来说,汉字承载了较强的含义,因此我们利用了词和词的共现信息以及词和字的共现信息来训练了一些向量。在上文字特征中的向量包括了长度1至4的字级别N元组。

除了词、N元组和字以外。还有一些特征对词向量的性质有重要的影响。比如,把整篇文本作为特征引入训练中会使得词向量受到文章主题的影响;用依存分析的结果作为上下文特征来训练词向量会让词向量受到语法的影响。本项目共涉及17种不同的共现信息。

语料

我们花费了大量精力来收集了来自多个领域的语料。所有的文本数据均移除了html和xml标记,仅保留了纯文本。之后采用了HanLP(v_1.5.3)对文本进行了分词。此外,我们将繁体中文用Open Chinese Convert (OpenCC)转换为了简体中文。更详细的语料信息如下所示:

语料 大小 词数量 词汇量 详情
Baidu Encyclopedia
百度百科
4.1G 745M 5422K 中文百科
https://baike.baidu.com/
Wikipedia_zh
中文维基百科
1.3G 223M 2129K 中文维基百科
https://dumps.wikimedia.org/
People's Daily News
人民日报
3.9G 668M 1664K 人民日报新闻数据(1946-2017)
http://data.people.com.cn/
Sogou News
搜狗新闻
3.7G 649M 1226K Sogou labs的新闻数据
http://www.sogou.com/labs/
Financial News
金融新闻
6.2G 1055M 2785K 从多个网站收集到的金融新闻
Zhihu_QA
知乎问答
2.1G 384M 1117K 中文问答数据
https://www.zhihu.com/
Weibo
微博
0.73G 136M 850K NLPIR Lab提供的微博数据
http://www.nlpir.org/wordpress/download/weibo.7z
Literature
文学作品
0.93G 177M 702K 8599篇现代文学作品
Mixed-large
综合
22.6G 4037M 10653K 上述所有数据的汇总
Complete Library in Four Sections
四库全书
1.5G 714M 21.8K 目前最大的古代文献汇总

上述统计结果中,所有词都被计算在内,包括低频词。

训练工具

所有词向量均采用ngram2vec训练而成。Ngram2vec是word2vecfasttext的超集。它可以兼容各种上下文特征并且支持多种模型。

中文词类比评测

通常人们利用词类比任务来评测词向量的好坏。本项目中,包含有两个词类比任务。其一是CA-translated,即由英文词类比任务翻译得到的中文词类比任务集。虽然CA-translated被广泛应用于中文词向量相关的论文中,但是它仅仅只有语义相关任务没有语法相关的任务,并且其中词汇量仅有134。因此,我们提供了另一个中文词类比任务集CA8。CA8是特别为中文而设计的词类比任务集。它包括了17813个词类比问题,并且同时涵盖了语法和语义任务。对上述两个数据集更详细的介绍可以参见:testsets文件夹。

评测工具

我们提供了配套的评测工具,详见evaluation文件夹。

评测稠密的向量,可以运行:

$ python ana_eval_dense.py -v <vector.txt> -a CA8/morphological.txt
$ python ana_eval_dense.py -v <vector.txt> -a CA8/semantic.txt

评测稀疏的向量,可以运行:

$ python ana_eval_sparse.py -v <vector.txt> -a CA8/morphological.txt
$ python ana_eval_sparse.py -v <vector.txt> -a CA8/semantic.txt