石玉敬,刘伟,葛晓舒,胡为,刘弋莲,易洋
(1.湖南中医药大学信息科学与工程学院,湖南 长沙 410208;2.湖南中医药大学中医学院)
中医古籍是中医药学“传承精华,守正创新”的根脉。《黄帝内经》作为中医古籍的经典之作,在中医研究者的中医学习和临床实践中都起到十分重要的作用。然而,古代汉语中单字词、一词多义的现象很多,且不同时期的中医古籍也存在差异,导致对中医古籍进行分析和挖掘变得十分困难。目前在中医自然语言处理领域缺乏一些高质量的中医古籍语料库,如何构建优质中医古籍语料库以及基于语料库进行数据挖掘,是中医自然语言处理中的重要研究课题。本文将构建《黄帝内经》专用分词、词性标注语料库并对其进行自动分词研究,探究更高效、稳定、快速的中医古籍分词方法。
本文以《黄帝内经》为初始语料,在湖南中医药大学医史文献教研室《医古文》、《内经选读》等课程的多名主讲教师指导下,采用八位中医学专业高年级本科生人工标注的156,507 字的《黄帝内经》全文作为初始研究语料库。本文构建的语料库是国内首个人工标注的集词性标注和分词一体的《黄帝内经》中医古文语料库,能够给后续中医古文分词、命名实体识别和大规模中医古籍语料库的构建等一系列中医自然语言处理研究工作奠定基础。
分词是中文自然语言处理研究的重要组成部分之一。目前分词处理的方法有三类,分别是基于词典和规则的分词方法、基于统计的分词方法和基于深度学习的分词方法。
文献[1,2]采用基于词典和规则的分词方法,虽然使用取得了良好的效果,但是模型的泛化能力较差。由此可见基于规则和词典的分词方法有一定效果但是局限性较大。文献[3,4]采用基于统计的方法进行分词实验均取得不错的效果,这说明基于统计的方法,在语料库相对较小的情况下,分词结果较为出色。随着硬件更新和算法的突破,基于神经网络[5-7]的分词方法已经是大势所趋。文献[8-10]使用了深度学习的分词方法,分词效果与非深度学习的方法相比,效果有了质的飞跃。由此可见,深度学习用于分词领域的效果与其他方法相比具有较大的优越性。
预训练模型是在一个原始任务上预先训练一个初始模型,然后在目标任务上使用该模型,针对目标任务的特性,对该初始模型进行精调,从而达到提高目标任务的目的。Google 在2018 年提出预训练模型BERT[11](Bidirectional Encoder Representation from Transformers),BERT 一经推出便打破了各项自然语言处理任务的榜单,并广泛应用于各个自然语言处理研究之中,许多后续研究一般也以BERT 模型为基础进行改进。其中RoBERTa-wwm[12]是最出色的改进模型之一,RoBERTa-wwm 与BERT 相比具有两方面优势,第一是RoBERTa预训练模型具有更大的训练集的优越性,第二是基于全词掩码的中文训练方式,能够有效提高自然语言处理任务的准确率。因此本文选择RoBERTa-wwm 模型代替BERT 模型进行分词研究。
BiLSTM 层的输出是一个概率矩阵,这个概率矩阵由BiLSTM 基于每个时刻上的最优结果得到,但是这样输出的标签并没有把前一个标签对后一个标签的影响考虑进去。例如,假如输入序列中出现了“黄帝”一词,其中“黄”为词首,“帝”为词尾,模型有可能将“黄”和“帝”都预测为词首,而根据标注规则词首之后只能出现词中和词尾,所以这明显不符合分词标注规则。针对这种情况,文献[13]在BiLSTM 层后引入CRF(Conditional Random Field)层,CRF 层通过随机变量作为输入来输出随机变量的条件概率分布的一种算法。对于标签分类问题,CRF 由于能够充分考虑标签与标签之间的依赖关系,从而避免标注偏置问题。其整体结构如图1所示。
图1 BiLSTM-CRF模型结构图
综上所述,深度学习方法作为在分词领域更好的方法,而预训练模型在其他自然语言处理的应用都十分广泛且效果更好,而使用预训练模型进行分词鲜有人研究,因此本文将相较BERT 模型表现更好的预训练模型RoBERTa-wwm 与深度学习模型BiLSTMCRF(Bidirectional Long Short Term.Memory-Conditional Random Fields)结合,构建RoBERTawwm-BiLSTM-CRF 模型,创新性地将这一模型引入到分词研究之中,并与当前主流分词算法进行对比,探究更准确的中医古籍分词方法,从而验证本文方法的优越性。
常用的用于评价分词效果的性能统计参数包括真阳性(True Positive,TP),假阳性(False Positive,FP),真阴性(True Negatives,TN),假阳性(False Negative,FN),精确率(Precision,P=TP/(TP+FP))和召回率(Recall,R=TP/(TP+FN))以及F1值(F1-mesure,F1=2×P×R)/(P+R))。由于F1 值较为客观全面地描述了分词准确性,所以本文主要采用F1值作为模型性能的评判标准。
BERT模型为BERT-Base-Chinese版本,RoBERTawwm 版本为RoBERTa-wwm-ext-Chinese,实验相关超参数设置如表1所示。
表1 实验超参数取值表
本文将《黄帝内经》语料库中的80%作为训练集,20%作为测试集。使用CRF、HMM、BiLSTM-CRF、BERT-BiLSTM-CRF、RoBERTa-wwm-BiLSTM-CRF算法来进行对比实验。此外,为了体现本文所构建的《黄帝内经》语料库并基于此语料库构建的分词模型在中医古籍分词方面的优越性,同时与第三方古文分词库“甲言”进行实验结果对比。各模型在《黄帝内经》语料库上的识别效果如表2所示。
表2 分词效果对比表
从表2可以看出,CRF的效果明显优于HMM。因为CRF 通过计算全局最优输出节点的条件概率来得到全局最优,而HMM 得到的可能是局部最优。CRF概率归一化较为合理,HMM 可能会导致标签偏置问题。综上所述,CRF 的分词效果明显好于HMM。“甲言”利用HMM 算法进行分词,由于其语料库包含部分中医古籍,所以分词效果好于HMM 模型,但是不及CRF与深度学习模型。
而深度学习分词准确率明显高于传统机器学习方法,这是因为BERT 和BiLSTM 对字符的特征的提取有着优秀的性能,能够学习到更多的文本特征,故深度学习与机器学习方法相比优势较为明显。BERT-BiLSTM-CRF 的分词效果优于BiLSTM-CRF。是由于BiLSTM 使用word2vec 训练词向量,该方法会受到未登录词的影响。针对于本文使用的领域特征明显的中医古籍,大部分中医相关词汇出现次数不多,导致了word2vec 模型进分词的受影响程度较大,而BERT 使用基于字的编码方式,细化了编码单元,极大地避免了未登录词的影响,同时借助于大量无监督语料的训练所以算法性能优于BILSTM。而RoBERTa-wwm-BiLSTM-CRF 模型效果最佳,这是由于RoBERTa-wwm 与BERT 相比,有更大的模型参数量、更大bacth size、更多的训练数据,同时RoBERTa-wwm 模型将BERT字符级掩码替换为词级掩码,可进一步提升分词能力。所以RoBERTa-wwm-BiLSTM-CRF 明显优于其他分词模型,这也充分证明其优越性。
本文首先构建了国内首个《黄帝内经》人工标注的集命名实体、词性标注和分词一体的中医古文语料库,为后续构建大规模中医古籍语料库奠定基础。此外,本文对《黄帝内经》进行系统性分词研究,为今后《黄帝内经》的智能分析和知识提取研究提供参考。
在分词研究方面,本文系统研究和比较了不同算法下《黄帝内经》中的分词效果。实验结果表明,RoBERTa-wwm-BiLSTM-CRF 分词的效果最佳。与以往最佳研究相比,P 值、R 值和F1 值分别提高了1.54%、1.16%和1.35%。本文所提方法解决了中医古籍分词识别效果一般的现状,但是由于古文中存在大量单字词等问题,这导致中医古籍分词研究与现代文分词研究相比还存在差距。同时,深度学习模型的好坏与标注语料库大小密切相关,在后续研究中还将继续增加人工标注的训练语料,从而使得中医古籍分词效果更好。
中医古籍语料库的构建和中文分词研究只是中医自然语言处理的基础性工作。后续将会基于分词结果开展《黄帝内经》的命名实体识别研究和知识图谱的构建研究,同时加强中医古籍文本语料库的建设,并构建中医古籍专用分词词典和中医古籍专用词向量,深入挖掘和抽取蕴含在中医古籍中的知识和经验。