四言诗经、五言古风、唐诗宋词蕴含了中国许多宝贵的传统文化,对古诗词进行命名实体识别,有助于挖掘以古诗词为代表的传统文化中包含的深层次知识观点。由于在历代古诗词中有很多环绕地名场所进行的描述与表达,例如北京、南京、西安、洛阳、杭州等,因而在漫长的历史岁月中,地名场所逐渐形成了一种文化符号,具有相对固定而独特的文化含义。识别出古诗词中的地名场所观点,不仅有助于深度挖掘古诗词文本之间的关联,而且有助于绘制中国诗歌版图分布,推动空间维度的中国古典文学研究,因此地名识别是古诗词文本挖掘的核心任务之一。过去环绕古诗词的地名注释与剖析紧张由人工来完成,然而传统人工方法信息处理效率低下,因此本研究致力于借助打算机技能,尤其是深度学习算法,探索古诗词地名自动识别的最佳模型。
1 国内外研究现状综述
命名实体识别(The Named Entity Recognition,以下简称NER)是自然措辞处理的一项根本任务,其主要浸染是从文本中准确地识别出人名、地名、机构名、事宜、物品等信息。国外对付NER研究相对较早,1991年Rau等学者首次描述了一种从文本中提取公司名的方法,此后NER开始备受关注,并成为Text Retrieval Conference、Message Understanding Conference等一系列评测会议的核心主题。从20世纪90年代开始,传统NER方法紧张是基于规则或统计的方法,如Bikel等人最早提出了基于隐马尔可夫模型(Hidden Markov Model,简称HMM)的英文NER方法,并谈论了演习数据集大小对付模型的影响。Ji-Hwan Kim提出了一种基于规则推理的NER方法,实验结果表明自动规则推理是基于HMM命名实体识别方法的可行替代方案。Borthwick最早提出了一种最大熵(Maximum Entropy,简称ME)NER方法,该方法的提出为诸多信息提取任务供应了新思路。只管基于规则或统计方法在NER任务中取得了一定成功,但它们每每须要细致的人工操作和一定专业知识,因此NER效果很难取得大的打破。随着研究者不断进行深入研究,NER干系理论和方法愈加完善。2010年之后,深度神经网络学习方法兴起,其端到真个学习办法,使得机器能根据输入自动地创造对付目标任务有效的表示,因此NER又迎来了新的机遇和发展高峰,Collobert等人首次提出了一种基于神经网络架构的学习算法,该算法可以在大量险些没有标记的演习数据根本长进修输入序列的内部表示,并可以运用于词性标注、NER等任务中。Lample等学者提出运用双向是非期影象神经网络(Bi-directional Long Short-Term Memory,简称Bi-LSTM)和条件随机场模型(Conditional Random Field,简称CRF)的新型神经架构和基于转移方法进行构建和标记文本片段,该模型得到了最前辈的NER性能。同时,随着深度学习算法日益成熟,不断崛起了许多新型NER技能,尤其2018年以来,以BERT(Bidirectional Enoceder Representations from Transformers)、GPT(Generative Pre-Training)为代表的深度学习模型更是帮助NER取得了一系列打破,如Lee提出一种在大规模生物医学语料库上预演习BioBERT模型,Eberts等人构建了一种跨度联合SpERT模型,与之前事情比较,模型F指标分别提高了0.62%和2.6%。
在海内,NER发展进程大致和国外同等,过去很长一段韶光紧张采取基于规则与词典方法,以及传统机器学习方法进行命名实体识别,诸如N元组法、CRF等。而中文措辞分外性决定了NER难度比英文难度大,例如中文文本的词语之间边界模糊,命名实体短缺明显词形变换特色等,基于规则的NER方法体例耗时且无法穷尽中文实体中涌现的规则和模式,基于统计的NER方法对特色选取、语料库的哀求和依赖较高。近年来,随着深度学习算法的兴起,利用诸如Bi-LSTM、BERT等深度学习模型处理中文NER问题成为一种趋势,并取得了显著效果。刘宇瀚等人从汉字自身特点出发,设计了却合字形特色、迭代学习以及Bi-LSTM和CRF的神经网络模型,该模型与最好的基线模型比较F指标提高了1.52%;王子牛等学者基于BERT模型对公民日报语估中实体进行识别,取得了94.86%的F值;刘新亮等人针对生鲜蛋供应链中领域实体提出BERT-CRF模型,模型F指标值达到91.01%。除了当代汉语文本外,古汉语NER事情同样引起了学者广泛关注,研究方法正由基于规则和统计的传统机器学习方法逐步转向深度学习模型。例如,早期朱锁玲等人采取规则与统计相结合的命名实体识别方法,F值为71.83%,黄水清等人以先秦文籍为研究语料,采取CRF模型实现了人名、地名和韶光等实体自动识别。2018年往后,学者纷纭探索基于深度学习模型的NER方法,个中李成名将LSTM-CRF模型用于自动识别《左传》中的地名和人名,F值分别达到82.79%和82.49%;徐晨飞等人基于Bi-RNN、Bi-LSTM、Bi-LSTM-CRF和BERT这4种深度学习模型实现了《方志物产》的多类实体自动识别,F值最高达到89.70%,显示了深度学习模型在古汉语NER任务中的优胜性。
我国古汉语NER技能不断发展与进步,但是古诗词地名实体识别研究仍在极少数,笔者仅查阅到一篇干系文献,崔竞烽等人利用Bi-LSTM、Bi-LSTM-CRF和BERT等模型实现了菊花古诗词语估中包含地名在内的多种实体识别研究。有鉴于此,本研究拟提出一种领悟数据增强、预演习模型以及条件随机场方法的古诗词地名识别模型,简称DA-BERT-CRF模型,开展古诗词地名识别实验。
2古诗词地名实体库构建
2.1 古诗词原始语料采集与处理
古诗词是我国宝贵的历史文化遗产,种类繁芜,按照内容可分为送别诗、借景抒怀诗、托物言志诗等,数量多达百万首以上。考虑到本文致力于挖掘古诗词中的地名信息,因此尽可能地网络含有地名信息的古诗词,以更好地演习地名识别模型,提高识别效果。同时考虑到南京城历史悠久,历代文人墨客据此留下了诸多不朽诗词。故而本文紧张环绕南京这一历史名城,系统采集干系古诗词作为实验语料以减少滋扰数据。
金陵古诗词既包括墨客在南京创作描写南京的作品,又包括墨客在别处创作描写南京的作品,因此金陵古诗词的选择标准与古诗词作品中是否含有南京元素干系,与作品创作地、创作者无关。由于我国古诗词一样平常按照朝代、种别或墨客进行汇编整理,鲜有按照城市地域进行汇编整理,因此与南京干系的古诗词散落于各种古代诗歌总集、别集、合集,以及古代文学史等文献资源中。我国著名古诗词研究者王步高教授认为,与南京直接干系古诗词约1300多首,间接干系古诗词约1100多首。
本文紧张通过两种数据源采集金陵古诗词:网站和图书。第一,通过Python措辞,利用爬虫程序从古诗文网、搜韵网、诗词名句网等网站上,获取南京古诗词干系题目、作者、朝代及正文信息,将其以格式化形式存储在EXCEL文件中。第二,采取人工办法从《钟山诗文精选》(王步高编著)、《南京传》(叶兆言著)、《金陵往事》(明.焦竑撰)等图书中采集并保存与南京古诗词干系题录及正文信息。通过这两种办法在采集与整理数据的过程中,本文创造了一些问题,对其进行了相应的处理:(1)古诗词重复:通过EXCEL中“删除重复项”将完备重复的诗词进行删除;(2)古诗词缺字:通过二次查找,查找威信图书文献进行人工补全;(3)古诗词内容相同,作者不同:通过查找专业图书文献,进行人工改正。终极本文得到金陵古诗词648首,共计57964个汉字,涉及的朝代包括魏晋、南北朝、唐、宋、元、明、清以及民国,个中唐宋诗词数量最多,占半数以上。
2.2 古诗词语料标注体系建立
既有研究大多针对当代文本实体识别而天生语料库实体标注体系,目前尚未存在可直策应用的古诗词地名实体标注体系,本文紧张参考百度百科、搜韵网以及知网文献对网络的648首金陵古诗词进行了4轮地名实体标注。标注办法采取BIOES标注集与Place结合的办法,B-Place代表实体的开始,I-Place代表实体的内部,E-Place代表实体的结尾,S-Place代表单字实体,O代表非实体,末了得到金陵古诗词标注体系数据集。例如唐代墨客李白创作的《洗脚亭》中诗句“西望白鹭洲”中“白鹭洲”是地名实体,便将其标注为“O,O,B-Place,I-Place,E-Place”,表1为标注集样例。
2.3 古诗词地名实体统计剖析
金陵古诗词地名实体标注结束后,本文对实体标注结果进行统计剖析创造,648首古诗词中地点实体共涌现1375次,实体的字符长度普遍介于2-3个字,存在字符长度为1和4的地名实体,如地点实体“淮”和地点实体“八功德水”,涌现次数最多的是“金陵”,其次“钟山”、“台城”、“江南”,个中“金陵”的别称最多,有“建康”、“秣陵”、“建邺”、“南都”等。表2列出了金陵古诗词中涌现频率前十的地点实体。
3 古诗词地名实体识别模型构建
3.1 古诗词地名实体识别特点剖析
作为中国传统文化的古诗词无论是构造句式还是语法词华都与当代文本,抑或是普通古汉语文本有着较大差异,深入剖析古诗词地名实体特点创造存在以下几个特色:
特色1:古诗词中词华讲究精简凝练,一样平常一个汉字都可能是一个兼具形、音、义的独立单位,因此古诗词中存在着以字代词的单字地名实体,如《采桑》(唐.郑谷)中诗句“采桑路隔淮”中的单字“淮”便代表“淮水”这一地点实体。故本文在深度学习模型特色向量的构建中,为了保持古诗词中字的独立性同时避免分词缺点带来影响,选择利用字向量作为模型的输入向量。
特色2:古诗词中地名实体存在同义词和一词多义征象。同义词征象指同一个地点有不同名称,例如南京城又被称为“金陵”、“建康”、“秣陵”、“建邺”等,这一征象在地名命名实体过程中无需特殊处理。而一词多义征象指地名除了表示地点外,还有其他含义,如“孝陵”在诗句“台城下接孝陵西”(《故宫行》,明.夏完淳)中代表南京“明孝陵”,而在诗句“孝陵创业三百载”(《金陵望江》,清.黄景仁)中借指明太祖“朱元璋”,可见二者含义差别很大。
一词多义征象是NER任务难点。为尽可能缓解古诗词地点实体识别一词多义问题,本文选择深度学习模型BERT进行预演习,缘故原由在于BERT模型的核心机制Self-Attention可以利用文本中的高下文词语来增强目标词的语义表示,从而区分一词多义征象,但并非代表可以完备办理一词多义问题,详细还须要依赖数据集对模型的演习。
特色3:演习数据集匮乏。古诗词实体识别研究仍处于起步阶段,目前尚未存在完善的古诗词命名实体标注体系,而系统、完全地标注古诗词中的命名实体非短韶光内可以完成。囿于研究韶光和精力,经由多重筛选、核查与考证,本文终极得到金陵古诗词648首,地名实体1375个,数据集规模不大,使得深度学习模型学习到的实体信息有限。故针对演习语料数据偏少问题,本文将采取实体交叉互换的数据增强方法对已有演习数据进行二次加工,从而扩展古诗词语料库规模。
3.2 模型总体框架设计
基于上述剖析,本文提出由数据增强层DA、预演习层BERT和条件随机场层CRF这三层构造构成的古诗词地名实体识别模型,模型总体框架详细如图1所示。
3.2.1
数据增强层DA
深度学习模型被广泛运用于NER领域,但厥后果依赖于数据集规模与质量,数据量不敷将随意马虎导致模型演习效果不佳。数据增强是一种有效“数据放大”方法,它通过对已有演习数据进行二次加工,以提升模型演习效果。目前,数据增强已经在图像和语音领域得到广泛运用,例如图像翻转、平移和色彩增强,语音快放与声谱修正等。而在文本数据增强方面,通用方法紧张包括词汇更换、句式转换、噪音注入等,但由于文本数据讲究语法构造合理性和畅通性,使得文本增强比较困难,因此基于词表的同义词更换是目前唯一得到广泛运用的方法,其操作大略效果突出,可以较好地丰富实体外部构造。
针对本文所网络的古诗词数据量偏少问题,笔者选择实体交叉更换的数据增强方法。详细为:首先将古诗词按照一定的比例划分为演习集和测试集,然后针对演习集进行数据增强,即将演习集中的某一地名实体随机更换为语料库中另一地名实体,并将更换后的古诗词作为拓展样本复制到原始演习数据集中。只针对演习集进行数据增强是由于考虑到如果在划分数据前对数据集进行增强,那么增强的数据和原始数据会在演习集和测试集中随机分布,导致模型在演习的过程中会打仗到不该打仗的测试集信息,发生数据透露,评价指标结果不可信。同时为掌握拓展数据和原始数据的差异度,限定每首古诗词中更换的最大实体数为1,个中随机更换实现逻辑如下:将语料库中标注的所有实体以数组的形式进行存储并统计数组长度,末了借用python中random.randint(0,数组长度-1)方法随机返回更换实体的数组下标。
3.2.2
预演习层BERT
BERT模型属于从Transformer中衍生出来的预演习模型,以提取序列全局特色,它采取高性能Transformer构造,可以直接对句子中任何一个字以领悟两边信息办法进行编码,并利用遮盖和预测两种方法完成句子词语描述。相较于无法表征词多样性的Word2Vec、GloVe、One-Hot等措辞模型,BERT模型利用其Self-Attention构造,可以有效地从不同维度捕获词之间的关联程度,以此实现对当前词更好的编码,因此可以较大程度处理实体在不同语境不同含义的征象,缓解实体识别中的一词多义问题。其在演习过程中,每个序列X={x1,x2,x3,…,xn}以[CLS]标记作为起始Token,以[SEP]作为句子间隔Token,序列对应的输入E={E1,E2,E3,…,En}由三个特色叠加而成,即领悟字特色、段特色、位置特色三种特色完成对语料集字级特色向量表示,然后向量E通过全自把稳力网络得到序列的丰富语义特色。其模型的输入示例如图2所示。
3.2.3
条件随机场层CRF
CRF模型是办理序列标注问题的经典模型,由于该模型充分考虑了xi对应的标签yi与前后文标注的关系,以是在命名实体识别中利用CRF模型能够很好地约束实体标签,使得字与字之间的标签关系相互依赖。在本研究中,详细约束紧张有:地名实体的起始标签为B-Place,I-Place只能涌如今B-Place标签后面,E-Place只能涌如今B-Place或I-Place标签之后,S-Place只能涌如今O标签或者E-Place标签之后。在本文地名实体识别实验中,CRF模型吸收BERT层的输出结果后,自动学习诗词序列标签之间的约束,通过打算标签间的转移特色,得到具有最大概率的全局最优标签预测序列。
4 实验结果与谈论剖析
4.1环境搭建与参数设置
本文在macOS操作系统中搭建金陵古诗词地名实体识别实验,编程措辞为Python,深度学习框架采取Facebook人工智能研究院开拓的PyTorch,演习测试采取十折交叉实验法,利用sklearn包中用于交叉验证的KFold函数。所谓十折交叉实验法是将数据集随机划分为10等份,依次取个中的1份作为测试集,其余9份合并作为演习集,循环实验得到10次实验结果。本文通过改变模型中各项参数值并不雅观察测试集识别效果,进行参数优化探索,终极得到模型各项参数如下:
学习率设置:BERT模型在学习新知识过程中可能会遗忘预先演习的知识,而较低的学习率可以使BERT战胜灾害性遗忘问题,因此本文根据这一履历以及结合试验将预演习层的学习率设置为0.0001;同时设置参数dropout=0.2,该参数可以在模型演习的过程中随机冻结一部分神经元,因此可以有效防止过拟合;
max_seq_length参数设置:该参数代表模型所能吸收的最大序列长度,小于此长度部分将进行padding处理,大于该值的序列则进行截断处理,造成信息丢失,因此结合本文数据集特点和试验结果,设置其值为最大值512;
batch_size参数设置:该参数是影响模型泛化性能的主要参数,大的batch_size可以减少演习韶光并提高稳定性,但是同时内存的利用率也会提高,因此本文选择该数据集下实验机器所能许可的最大批次16。其次将epoch参数设置为10,激活函数为“gelu”,优化器为Adamw。
4.2实验结果
本文利用NER任务中通用的精确率(P)、召回率(R)以及调和均匀数(F)衡量模型地名实体识别效果。同时为验证本文提出模型的有效性,利用BERT-CRF模型进行实验比拟,BERT-CRF模型参数设置同DA-BERT-CRF模型,十折交叉试验结果如表3所示。
剖析上述数据可以创造,DA-BERT-CRF模型识别结果更佳,在十折交叉试验中,均匀精确率、均匀召回率、均匀调和均匀数均得到提升,分别达到86.49%、90.44%、88.35%,进一步剖析实验结果可以创造:
(1)在数据集处理上,引入数据增强方法能够显著提升模型地名实体识别效果。试验结果显示,数据增强后的BERT-CRF模型其精确率提升了0.55%,召回率提升了5.23%,调和均匀数提升了2.83%,这是由于深度学习模型在处理实体识别任务时须要大量标注数据来演习模型,如果演习数据较少,其演习可能不足充分,而采取实体交叉互换的数据增强策略可以在扩充语料库的同时丰富地名实体的外部构造,因此可以有效减少小样本下的实体漏检情形发生,提高对单字实体以及罕见地名实体的识别率,同时也可以缓解实体边界模糊征象。例如诗词《南朝》(唐.李商隐)中诗句“鸡鸣埭口绣襦回”中存在地点实体“鸡鸣埭”,DA-BERT-CRF模型将其识别精确,而BERT-CRF模型则识别为“鸡鸣”,又如《次韵赠清凉长老》(宋.苏轼)中诗句“过淮入洛地多尘”中“淮”和“洛”均属于单字地点实体,模型在经由数据增强后,丰富了这两个实体的外部构造,提升了单字地名识别准确率,诗词《暮春与诸同寅登钟山望牛首》(宋.苏颂)中诗句“乘兴游北钟”中“北钟”,其代表地点实体“钟山”,“北钟”在语料库中仅涌现一次,但是DA-BERT-CRF模型将其成功识别,而BERT-CRF模型则识别失落败,同时像“白鹭”、“姑熟”、“汤碧山”、“宝公塔”这类语料库罕见地名,通过数据增强后模型也可以准确将其识别。
(2)在模型选择上,引入BERT算法可以有效缓解一词多义的问题。BERT预演习层在表达古诗词高下文语义特色上具有上风,如前文提到的诗词“孝陵创业三百载”中“孝陵”二字借指人物“朱元璋”,而非地点“明孝陵”,剖析该句的模型识别结果,创造DA-BERT-CRF模型可以精确处理这种情形。值得把稳的是,诗词《金陵乌衣园》(宋.吴潜)中诗句“乌衣巷,今犹在。乌衣事,今难觅。”中第一个“乌衣”代表南京市秦淮区的一个古巷,属于地点实体,而第二个“乌衣”指穿黑衣的差役,并非指代地名。在本文实验中,BERT-CRF模型缺点地将第二个“乌衣”识别为地点实体,而DA-BERT-CRF模型则识别精确,这在一定程度上解释,一词多义问题的办理须要依赖数据集对模型进行演习,数据集越大模型演习的越充分,那么模型在理解文本语义上则更具上风。此外,本文通过引入CRF模型改进了实体标签预测结果,使得E标签后紧跟E标签这类不合理预测明显减少,进一步提升了地名识别效果。
5 结语
古诗词地名书写着华阴历史,承载着家国情怀。古诗词地名实体识别不仅对付深入理解与剖析古诗词作品含义具有主要学术代价,而且对付理解我国历史建筑、历史名城的独特文化内涵具有主要实践意义。本文以金陵古诗词为研究工具,牢牢环绕地名实体识别这一研究主题进行实体识别研究,针对古诗词标注数据集规模小、存在单字地名实体、一词多义等问题,提出DA-BERT-CRF模型。研究结果表明,该模型能够较好地处理一词多义问题,并有效办理小样本情形下命名实体识别问题。在后续研究中,为提升模型地名识别性能,操持从以下两个方面进行探索与打破:一是加强金陵古诗词地名标注语料库培植,紧张包括提升数据源的丰富性、人工标注的准确性以及标注规则的合理性,避免漏标、误标情形发生;二是加强古诗词地名实体识别模型培植,紧张包括字词特色挖掘、模型参数优化、深度学习网络构造设计与改进等。
作者:余馨玲 常娥
来源:《图书馆杂志》2022年
选稿:耿 曈
编辑:邹怡思
校正:黎淑琪
审订:黄海红
责编:黄舒馨
(由于版面有限,文章注释内容请参照原文)
欢迎来稿!
欢迎互换!
转载请注明来源:“江西地名研究”微信"大众号