基于深度学习的《辞海》分词方法

2020-07-21 06:30陈美李顿伟高洪美吴小丽
现代计算机 2020年16期
关键词:辞海新华字典分词

陈美,李顿伟,高洪美,吴小丽

(上海计算机软件技术开发中心,上海201112)

0 引言

《辞海》[1]是我国文化资产最重要代表之一,目前唯一的一部以字带词、兼有字典、语文词典和百科词典主要功能于一体的大型综合性辞典,被誉为“历史和时代的档案馆、大事记和里程碑”,对我经济、社会以及文化等发展具有重要支撑。《辞海》收集了自然科学与工程技术、哲学社科、历史地理、文学艺术等领域知识,集成了中华上下五千年文化的精粹,具有重要的研究价值。随着新一代信息技术的快速发展,利用大数据、人工智能、知识图谱等技术研究数字《辞海》,推动知识内容创新、知识服务创新等成为发展趋势。

分词是数字《辞海》的研究基础,本文将开展《辞海》的分词研究。目前中文分词技术[2]主要包括基于词典[3]、基于统计[4]、基于深度学习[5-6]三种分词类型。每种类型各有其优缺点,如规则分词简单、效率高,但是对歧义词和新词分词效果不佳;统计分词基于词频统计,对歧义词和新词分词表现较好,但是效率和复杂度居中;深度学习方法借助词向量技术将词转化成为向量,能够很好的提取词语特征,分词效果相对最佳,但是效率较低、复杂度高。随着硬件技术的突破,基于深度学习的分词目前成为主流,典型的深度学习分词模型包括基于RNN(循环神经网络)[7]、LSTM(长短记忆神经网络)[8,9]、BILSTM(双向长短记忆神经网络)[10-13]等。

由于《辞海》的内容比较复杂,即引用了大量的文言文、诗、歌等古文,如《汉书》、《史记》、《左转》等内容,又包含了自然科学与工程技术、哲学社科、历史地理、文学艺术等领域知识,对分词任务带来巨大的挑战。本文通过深入分析《辞海》内容特点,同时结合目前分词技术成果,提出了基于深度学习的《辞海》分词方法。首先,鉴于目前在古文分词不成熟,同时《辞海》引用了大量各个朝代的文言文、诗、歌等古文,目前基本上找不到合适的古文数据集进行训练,因此本文分词工作先移除古文;其次,针对《辞海》内容涉及领域广问题,本文拟选择《新华字典》,利用CBOW 模型训练字向量;最后,基于《新华字典》训练的字向量,选择目前比较主流的BI-LSTM-CRF 模型执行《辞海》分词任务。

1 分词算法

1.1 分词框架

本文针对《辞海》内容特点,提出了基于深度学习的分词方法,分词框架如图1 所示。

图1 分词框架

从图1 可知,分词任务包括三部分:首先,对《辞海》内容进行预处理,去除古文等;其次,利用CBOW 模型训练字向量;最后,利用BI-LSTM-CRF 模型执行《辞海》分词任务。

1.2 字向量训练

字向量训练,本文选择目前主流的CBOW 模型,训练框架如图2 所示。

图2 字向量训练框架

字向量训练主要工作包括:利用结巴分词工具对《新华字典》分词,然后利用CBOW 模型训练字向量,最后输出字向量矩阵。

(1)分词

首先,输入《新华字典》,利用结巴分词工具对《新华字典》分词,然后去除特殊符号、标点符号、停用词、字母等。

(2)CBOW 训练

CBOW 是Mikolov 等人提出的Word2Vec[14]分布式表示的一种实现。Word2Vec 具有效率高和表示效果好的优势,已经成为主流的词向量和字向量训练模型。Word2Vec 模型提供两种实现CBOW 和Skip-Gram,文献[15]提到CBOW 比较适合常见词,在本研究中,主要为常见词,故选择CBOW 实现。CBOW 模型核心思想是通过目标词wt的上下文词Context(wt)预测目标词:Context(wt)=(wt-c,...,wt-1,wt+1,...wt+c) →predictwt。其中,c为窗口,图3 为c=2 的CBOW 模型结构。

图3 CBOW模型结构

在CBOW 中,训练之前需要进行相关初始化,包括利用语料库建立词典W={w1,…,wN}、基于词典和词频建立哈夫曼树、随机初始化词向量Wword={v1,…,vN}和哈夫曼树内部节点Wnode={θ1,…,θN-1}等,其中,N为词典长度,wi、vi分别为第i词和词向量,θi为第i节点向量参数。

CBOW 各层功能如下。

①输入层

设目标词wt,c为窗口,则依次执行输入上下文:Context(wt) ,热词编码:OneHot(Context(wt)) ,查询词向量:

②投影层

将上下文词向量(vt-c,…,vt-1,vt+1,…,vt+c)首尾相连拼接或者求和取平均值,作为的一个新特征Vt去预测目标词wt。

③输出层依据wt的哈夫曼树二进制编码,采用逻辑回归遍历wt叶子节点,遍历过程中根据定义的优化目标函数,利用梯度上升方法去更新相关参数,详细实现可参阅文献[14]。

在CBOW 输出层计算中,通常采用交叉熵损失函数(Cross Entropy Loss),其中Sigmoid 函数如式(1),逻辑回归分类函数如式(2),则交叉熵损失函数定义和推导如式(3)所示。最后,采用梯度下降训练,并更新相关的参数。

其中,li为wordi的Huffman 树路径长度,θj为wordi的Huffman 树路径上第j节点参数。

CBOW 模型是基于中心词的上下文预测中心词,每次预测遍历一次和学习训练一次,训练效率高,复杂度为O(N)(N为词典长度)。CBOW 主要利用上下文信息生成词向量,能够较好的提取上下文语义特征,表示文本信息。

1.3 分词模型

分词模型,本文采用经典的BI-LSTM-CRF 模型执行分词任务,模型结构如图4 所示。

图4 BI-LSTM-CRF分词模型

BI-LSTM-CRF 主要包括文本表示、句子特征提取和标签预测三层。

(1)文本表示层

文本表示功能是将输入句子向量化,为BI-LSTM模型提供输入。首先将句子转化成One-Hot 热词表示,然后通过Wword={v1,…,vN}查询词向量,得到整个句子词向量X=(x1,x2,…,xO)(xi为输入句子第i词的词向量,且xi∈Wword,O为句子长度),同时设置Dropout 以缓解过拟合。

(2)句子特征提取

句子特征提取是采用BI-LSTM 模型。首先,提取正向LSTM 隐状态序列与反向的序列,接着对正反向输出序列拼接形成最后,接着将隐状态向量ht∈Rm×O映射到k维(k是标注集的标签数),得到句子特征矩阵P=(p1,p2,…,pn)∈RO×k。

(3)标签预测

标签预测层是在局部最优P基础上,利用CRF 模型[16-17]和Viterbi 算法[18]产生全局最优句子序列。

首先,利用CRF 模型产生标签转移矩阵A,其中Aij表示第i个标签转移到第j个标签的概率;pij表示第i个词为第j个标签的概率。设CRF 模型输出为y=(y1,y2,...,yO) ,则对句子的打分计算:

接着,利用Softmax 对y=(y1,y2,...,yO)进行归一化。

其中Yx:{B,M,E,S},表示四个分类标签,B表示词的开始,M表示词的中间,E表示词的结束,S表示单独词。对BI-LSTM-CRF 分词模型,主流采用交叉熵损失函数,同样利用梯度下降训练,并更新相关的参数。

最后,在预测过程时使用Viterbi 算法求解最优句子序列y*:

2 实验结果与分析

2.1 实验设置

(1)实验数据

《新华字典》主要来自文献[19],收录包括14032 条歇后语,16142 个汉字,264434 个词语,31648 个成语。《辞海》由国家新闻出版广电总局“大数据治理与服务”重点实验室提供,收录单字(包括异体字、繁体字),约700 万字,约78754 条字词。

此外,从《辞海》中随机选择10000 条字词进行标注,用于执行评估。数据标注采用四位序列标注法BMES:B 表示一个词的词首位值,M 表示一个词的中间位置,E 表示一个词的末尾位置,S 表示一个单独的字词。

(2)评价方法

为了评估模型的分词性能,采用评价标准包括准确率P(Precision)、召回率R(Recall)和综合性能F1。具体定义如下。

(3)实验参数设置

CBOW 模型参数见表1 和BILSTM-CRF 模型参数见表2。

表1 CBOW 模型参数

表2 BI-LSTM-CRF 模型参数

2.2 结果与分析

(1)分词效果实验与分析

本组实验评估提出的分词方法效果,实验结果如表3 所示。

表3 分词效果评估结果

从表3 可知,提出的分词方法,P、R和F1分别达到94.18%、94.09%和94.13%,取得了比较理性的分词效果。首先,本文选择《新华字典》训练字向量,基本上可以满足《辞海》知识领域广的分词需求;其次,CBOW模型基于中心词的上下文预测中心词,能够较好提取上下文语义特征,能够较好地表示文本;最后,BILSTM(双向长短记忆神经网络)采用双向LSTM,一个作为正向输入序列,一个作为反向输入序列,再将正反向输出结合作为最终的结果,考虑了上文的特征和下文的特征,所以BI-LSTM 模型既能保持上下文信息,又能考虑到未来的上下文信息,从而表现出较好的分词性能。因此本文提出的分词方法能够取得比较理想的分词效果。

(2)词频分析

对《辞海》分词结果进行处理,除去单字、停用词等操作,有效提取:297976 词语,包含1416148 汉字,非重复词语154041 个。

接下来,对《辞海》的词语特点进行分析,首先开展词频统计分析,重点分析《辞海》Top50 高频词语,如表4 所示。同时选择Top1000 高频词语,做词云图分析,实验结果如图5 所示。

表4 《辞海》Top10 词频分析

图5 《辞海》Top1000词云图

分析表4 和图5 可知,Top50 和Top1000 高频词语主要以解释性词义为主,突出内容的解释特点,印证了《辞海》内容的本质。其次,解释具有两种特点,一是通俗性解释,如指、比喻、形容、泛指等,用于解释词义含义;二是引用性解释,如古代、汉代、佛教、帝王等,通过引经据典,证明解释的出处,强调解释内容的科学性和权威性。

3 结束

本文围绕《辞海》数字化建设,开展了《辞海》的分词研究。针对《辞海》内容特点,包括古文类型广和知识领域广等特点,提出了基于深度学习的分词方法。首先,针对古文类型广问题,鉴于古文分词不成熟问题,先移除;针对知识领域广问题,选择《新华字典》训练字向量;最后,选择目前比较主流的BI-LSTM-CRF模型执行《辞海》分词。实验结果显示,提出的分词方法,准确率、召回率和F1 值到分别达到94.18%、94.09%和94.13%,取得了比较理性的分词效果。

今后研究方向是聚焦《辞海》的古文分词方法,以及开展《辞海》的知识内容创新、知识服务创新等数字化建设。

猜你喜欢
辞海新华字典分词
《辞海》的历史回顾及经验总结
赵国春与《辞海》的故事
分词在英语教学中的妙用
《辞海》(第七版)编纂出版工作情况
结巴分词在词云中的应用
结巴分词在词云中的应用
“新华字典”商标权及不正当竞争案开庭审理
新版《新华字典》将收入网络用语
最受欢迎的字典
《新华字典》修订将加注常用网络流行用语