论文阅读笔记:Glyce: Glyph-vectors for Chinese Character Representations

香侬科技提出了一种基于中文字形的向量表示形式:Glyce,基于Glyce的模型在13个中文NLP任务上达到了SOTA.

摘要:

   直觉上,字形信息对于中文这样的表意文字上进行的nlp任务会有很多帮助,但是由于1)象形文字缺乏丰富的象形证据,2)现有的cv模型缺乏针对文字数据的泛化能力,所以,有效的利用这部分信息的方法还有待探索。

   在这篇文章中,我们通过提出Glyce:针对中文字符的字符向量来解决上述问题,主要创新有以下三点:1)充分利用各个时期的中文字体(青铜器文字、篆书、繁体字等)以及各种风格的字体(草书、隶书);2)针对中文字符的图像处理提出一种特制的CNN架构 ;3)在多任务学习设置中,利用图像分类作为辅助分类任务开提高模型的泛化能力。

   这篇文章在13个中文NLP任务上都取得了SOTA的表现:(1) 字级别语言模型 (2) 词级别语言模型 (3) 中文分词 (4) 命名实体识别 (5) 词性标注 (6) 句法依存分析 (7) 语义决策标注 (8) 语义相似度 (9) 意图识别 (10) 情感分析 (11) 机器翻译 (12) 文本分类 (13) 篇章分析。

1.简介:

  中文可以分成表意文字(日,表示太阳)和表音文字(青,睛),在汉朝时期,说文解字就采用字形所谓索引,这种方式今天还在沿用。由于许多汉字是由图片演化而来的,如下图,所以汉字的形状可以提供丰富信息。

   在中文nlp任务上,很少有人利用字形信息,也有一些研究利用五笔结构来研究中文文字,取得了一些进展,但是由于五笔结构是随机编码的,所以并不能表示深层次的标识信息。

也有人利用cnn结构对字形信息进行研究,但是并没有产生良好的效果,原因可能如下:1)使用的简体文字进行研究,而简体文字在演变过程中失去了大部分的字形信息。汉字演变过程如下所示;2)使用的cnn结构不合适,由于字符的尺寸偏小,而现有的cnn模型通常用来处理较大的图片;3)数据少,汉字只有大约10000个文字。

  本文将中文字符看作图片,用cnn来抽取特征,针对以上问题,本文采用了以下解决办法:

1.采用历史文字和当代文字(如青铜器文字、隶书、篆书、繁体中文等)的组合,丰富字符图像的象形信息,以及不同书写风格的文字(草书),提高模型的泛化能力。

2.提出符合中文字形的Tianzige-CNN(田字格)构架。

3.采用多任务学习方法,通过增加图像分类损失函数来提高模型的泛化能力。


3 Glyce

1.使用的数据


   汉字的演化过程是从最初的易于画转变为易于写,在这个过程中,不可避免的失去大量文字中蕴含的字形信息,因此为了丰富文字信息,使用不同时期的文字,为了提高文字的泛化能力,使用不同风格的文字,这都是计算机视觉中常用是数据增大方法,具体使用的文字如下表所示:

2.Glyce的田字格-cnn结构

  为了解决上文提到过的汉字图片尺寸小,数量少的问题,本文提出了田字格结构:

 通过研究发现田字格结构对抽取汉字的信息非常有效,所谓的田字格就是通过设置filter的尺寸,获得2*2的特征尺寸。如下图所示:

 第一次卷积:f=5,s=1,p=no

最大池化:f=4,s=4,p=no

  通过一次卷积和最大池化,将12*12的汉字图片转换为2*2的田字格形式。

  为了防止过拟合,最后一步没有使用常规的卷积方法,而是采用群卷积。详细介绍见:https://blog.csdn.net/hhy_csdn/article/details/80030468

  下图是一个正常的、没有分组的卷积层结构。下图用第三维的视角展示了CNN的结构,一个filter就对应一个输出channel。随着网络层数的加深,通道数急剧增加,而空间维度随之减少,因为卷积层的卷积核越来越多,但是随着卷积池化操作,特征图越来越小。所以在深层网络中,channel的重要性越来越大。

   下图则是一个群卷积的CNN结构。filters被分成了两个group。每一个group都只有原来一半的feature map。

 3.使用图像分类作为辅助目标

  为了防止过拟合,使用图像分类任务作为辅助训练目标,将cnn获得汉字特征输入到图像分类器中来预测这个字符是哪个汉字。图像分类的损失函数为:

 用L(task)表示模型具体进行的nlp任务,也就是下游任务,比如机器翻译、单词分割等,所以总得目标损失函数为:

\lambda表示权重, ,t为迭代次数。

可以看出,在训练的初期,图像分类的影响比较大,随着迭代次数的增加,图像分类的作用逐渐减小,直观地理解是训练的初期我们需要从图像分类得到更多的信息。

根据下游任务的不同,有两种结构的embedding

4.Glyce-字向量

字向量:如下图所示,图中可以看出Glyph Emb 就是本文提出的模型,而char-Id Emb就是每一个汉字对应的普通Embedding,它们两个结合起来就可以作为整个汉字完整的Embedding,结合的方式可以是拼接,fully connected network, highway network等。

 5.Glyce-词向量

词向量:由于中文的词都可以看成是由中文的字组成,Glyce通过充分利用组成中文词中的汉字得到更加细粒度的词的语意信息。使用 Glyce字向量的方式得到词中的对应字的表示。因为中文词中字的个数的不确定性,Glyce 通过 max pooling 层对所有得到的 Glyce 字向量进行特征的筛选,用来保持了维度的不变性。最终得到的词向量通过和 word-id 向量进行拼接得到最终的 Glyce 中文词向量。
 

4.实验

  本文提出的方法是一种新型的字、词向量表示形式,在进行下游nlp任务时,都是将当前效果最好的模型中的向量替换为本文提出的Glyce形式

1.Task1:字符级语言模型

根据前一个字预测下一个字是什么,这一任务在Chinese Tree-Bank 6.0 (CTB6)这一数据集上进行,这个数据集包括4401个不同的中文汉字,采用的模型是LSTM。评价指标为ppl。

Perplexity定义

PPL是用在自然语言处理领域(NLP)中,衡量语言模型好坏的指标。它主要是根据每个词来估计一句话出现的概率,并用句子长度作normalize,公式为:

S代表sentence,N是句子长度,p(wi)是第i个词的概率。第一个词就是 p(w1|w0),而w0是START,表示句子的起始,是个占位符。

这个式子可以这样理解,PPL越小,p(wi)则越大,一句我们期望的sentence出现的概率就越高。

实验结果如下:

2.Task2: 词级别语言模型

使用Chinese Tree-Bank 6.0 (CTB6)数据集和jieba分词,在LSTM上输入本文方法提取的词向量,给定前一个词语预测下一个词语。经过对照实验,word-ID 向量+ glyce 词向量的结合在词级别的语言模型上效果最好,PPL(困惑度)达到了 175.1。实验结果如下所示:

 3.命名实体识别(字符级任务)

应用的数据集为OntoNotes, MSRA and resume ,使用Lattice-LSTMs架构,将charID embeddings替换为Glyce-char  embeddings。实验结果如下:

 4.中文分词(字符级任务)

使用CTB6, PKU and Weibo数据集,当前效果最好的模型是Lattice-LSTMs,用本文提出的Glyce-char embeddings替换charID embeddings,实验结果如下所示:

5.词性标注(字符级任务)

当前效果最好的模型是:字符级的双向RNN-CRF,实验结果如下:

6.句法依存分析(词级任务)

句法依存分析采用了 Chinese Penn Treebank 5.1 的数据集。Glyce 词向量结合之前最优的 Biaffien 模型把结果在 UAS 和 LAS 数据集上和最优结果比较分别提高了0.9和0.8。 实验结果如下:

7.Task7: 语义决策标注

语义决策标注的实验采用了 CoNLL-2009 的数据集,并且采用 F1 作为最终的评价指标。最优模型 k-order pruning 和 Glyce 词向量超过了之前最优模型 0.9 的 F1 值。实验结果如下:

8.语义相似度

采用的数据集为BQ数据集,有120000个中文句子对, 当前效果最好的模型是:bilateral multi-perspective matching model (BiMPM),实验结果如下所示:

9.意图识别

数据集:The Large-scale Chinese Question Matching Corpus (LCQMC),当前效果最好的模型:bilateral multi-perspective matching model (BiMPM),实验结果如下所示:

 10.中英文机器翻译

中文-英文机器翻译任务的训练集来自 LDC 语料,验证集来自 NIST2002 语料。测试集分别是 NIST2003,2004,2005,2006 和 2008,并且采用 BLEU 作为最终的评价指标。Glyce 词向量结合 Seq2Seq+Attention 模型,测试集上 BLEU 值达到了新的最优结果。

11.情感分析

采用(1) Dianping:饭店评论,2000000个训练集500000个测试集,(2) JD Full:商品评论,3M个训练集,250000个测试集,(3) JD binary:商品打星,4M训练集和360000个测试集。采用双向lstm结合本文提出的向量,实验结果如下:


12.文本分类

文本分类的任务采用了 Fudan corpus, IFeng, ChinaNews 三个数据集,并且采用准确率作为评价指标。Glyce 字向量结合 Bi-LSTM 模型在这三个数据集上分别取得了最优的结果。实验结果如下:


 13.篇章分析

数据集:the Chinese Discourse Treebank (CDTB),当前效果最好的模型:RvNN model,实验结果如下:

猜你喜欢

转载自blog.csdn.net/weixin_44740082/article/details/91347767