北京大学学报(自然科学版) 第61卷 第3期 2025年5月
Acta Scientiarum Naturalium Universitatis Pekinensis, Vol. 61, No. 3 (May 2025)
doi: 10.13209/j.0479-8023.2025.002
国家社科基金重点项目(23AZD047)和2022年山西省教育科学“十四五”规划课题(GH-220313)资助
收稿日期: 2024–03–20;
修回日期: 2024–08–18
摘要 充分利用古诗文本的语义特征和相关领域的知识特征, 提出融合显性知识和隐性知识的古诗情感分析模型 SACAP。首先从古诗文本中抽取深层次语义特征, 然后在构建古诗知识库的基础上, 设计多维度注意力机制对古诗知识进行特征提取, 最后通过融合古诗文本特征和古诗知识特征, 对古诗情感进行识别。在开放古诗语料 FSPC 上的实验结果表明, SACAP 模型具有比已有模型更优的性能, 并且显性知识比隐性知识具有更大的作用。
关键词 情感分析; 注意力机制; 显性知识; 隐性知识; 中国古诗
情感分析是自然语言处理领域的重要研究方向, 通过解析文本中的语义特征来识别其情感倾向。情感通常划分为积极、消极和中性 3 种基本类型[1]。古诗情感分析作为该领域的一个分支, 同样遵循这一分类原则。作为古代中国特有的文学体裁, 古诗不仅言辞简洁, 格律严格, 语义关系紧密, 而且广泛采用比喻和拟人等修辞手法以及典故和意象等隐喻手段, 含蓄地表达诗人的情感倾向。古诗特有的组织结构和表达方式给情感分析带来巨大的挑战。目前古诗情感分析语料较为有限, 较著名的语料库是由清华大学自然语言处理研究中心 THUAIPoet小组维护的 FSPC 古诗语料库[2]。许多学者基于该语料库, 采用情感三分类的方式对古诗进行情感分析, 取得较理想的效果[2–3]。
随着大数据时代的到来, 大数据技术与方法成为重要的技术样态。以深度学习模型为代表的大数据技术与方法适用于处理规模庞大、关系多样以及结构复杂的数据。近年来, 研究者充分发挥大数据技术与方法的优势, 进行中文情感分析, 目前的研究主要分为两类。
第一类研究是在一系列深度学习模型的基础上, 引入注意力机制来提升情感分析效率。例如, Li 等[4]设计一个三阶段模型, 首先利用卷积神经网络(convolutional neural network, CNN)提取文本中相对重要的局部情感特征; 接着借助双向递归神经网络(bidirectional gated recurrent unit, BiGRU)获取中文文本的上下文语义特征; 最后引入多头注意力机制, 从不同的维度提取与情感分析密切相关的特征。Huang 等[5]提出 BERT-BiGRU-GANet 模型, 首先利用基于 Transformer 的双向编码器(bidirectional encoder representations from transformers, BERT)对中文文本进行向量化表示; 接着利用双向门控循环单元(bidirectional gated recurrent unit, BiGRU)模型来分析中文文本的上下文语义信息; 最后引入注意力机制来提取与情感分析相关的特征。此外, 汪林等[6]提出一种能够提取多级多尺度特征的卷积神经网络 CNN 和双向长短期记忆网络(bidirectional long short-term memory, BiLSTM)混合模型, 该模型分别利用不同卷积核尺寸的 CNN 和 BiLSTM 来提取不同尺度的短语级特征和句子级特征, 获取更丰富的情感特征。赵文辉等[7]针对无法用一个模型进行高效多领域情感分析的问题, 提出基于提示微调的多领域情感分析方法(multi-domain sentiment analysis approach based on prompt tuning, MSAPT), 仅需保存一个模型, 就能够实现多领域情感分析。
第二类研究侧重于融合多维度特征, 特别是引入细粒度特征, 以便提升模型的情感理解能力。Su 等[8]结合中国文化知识与注意力机制, 构建基于长短期记忆网络(long short-term memory, LSTM)的情感分析模型, 有效地捕捉隐喻情感中的关键特征, 建立一个汉语隐喻情感分析系统。Liu 等[9]针对中文文本的特殊性, 在引入 BiLSTM 模型、注意力机制和递归卷积神经网络(recursive convolutional neu-ral network, RCNN)的基础上, 提出一种融合多粒度语义特征的情感分析模型, 通过提取中文文本的词语、字符、部首和词性特征, 有效地提高中文情感分析性能。Liao 等[10]强调外部知识对中文情感分析的有效性, 在多极性注意力模型的基础上, 融入通用知识库的情感信息, 将情感知识与文本语义相结合, 以便提高中文情感分析能力。杨春霞等[11]将中文文本中的字粒度信息与词粒度信息相结合, 以便获得多层次、多粒度的语义信息, 进而提高模型的情感分析能力。
随着研究的深入, 人们逐渐将研究兴趣转移至古诗情感分析。目前古诗情感分析处于起步阶段, 现有研究成果可以归纳为两大类。第一类研究强调特征工程在情感分析中的重要性。例如, Li 等[12]利用 TF-IDF 算法和 FP-Growth 算法, 提出一种面向古诗文本的情感分析方法, 从字词层面提取符合古诗表达特点的情感特征。李晖等[13]提出基于胶囊网络(Capsule Network)的情感分析方法, 通过整合字数规则和不同训练方式的胶囊网络, 提高格律诗情感识别性能。第二类研究利用复杂模型学习古诗的情感模式特征。例如, Zhang 等[3]利用 BERT-WWM-EXT (bidirectional encoder representation from trans-formers-whole word masking-extension)和 ERNIE (en-hanced representation through knowledge integration)模型来提取古诗文本特征, 在此基础上引入古诗知识, 以便提高古诗情感分析性能。此外, Tang 等[14]以古诗为研究对象, 一方面引入卷积神经网络 CNN和门控循环单元 GRU 来提取古诗文本特征; 另一方面, 根据古诗文本特殊的组织结构, 引入多通道处理模型来提取古诗语句特征。Lin 等[15]提出融合融合线性损失和特征损失的联合损失方法, 引入的自学习策略有助于提高古诗情感识别性能。此外, 为了解决古诗文本特征稀疏以及现代译文匮乏等问题, 吴斌等[16]提出一种基于短文本特征扩展的迁移学习模型, 基于频繁词对古诗特征进行扩展, 并引入迁移学习思想建立三类情感分类器, 根据投票结果, 给出古诗情感分析结果。
通过梳理中文情感分析, 特别是古诗情感分析研究成果, 可以看出现有研究面临一些挑战。首先, 情感分析性能高度依赖模型的特征提取能力。近年来涌现的深度学习模型表现出卓越的特征提取能力, 现有研究普遍引入该模型进行情感分析。深度学习模型在中文情感分析, 特别是古诗情感分析中的应用相对较少, 其适用性和有效性有待进一步探索。其次, 古诗文本在情感表达方面具有特殊性, 往往采用比喻和拟人等修辞手法以及典故和意象等隐喻手段, 增加了古诗情感分析的难度。如何有效地挖掘古诗隐性情感特征, 是提高古诗情感分析性能的关键。最后, 现有研究大多采用数据驱动的模型进行情感分析, 然而古诗语料的情感标签规模和准确性均存在一定的差距, 这导致古诗情感分析结果容易产生较大的偏差。近年来, 数智融合的研究范式不断推广, 取得较好的实践效果[17]。因此, 能否引入数智融合研究范式, 充分发挥古诗文本和领域知识在古诗情感分析中的重要作用, 值得进一步 探讨。
如图 1 所示, 本文研究框架由 5 个部分组成: 文本表示模块、知识检索模块、知识表示模块、知识融合模块以及结果输出模块。其中, 文本表示模块由 GuwenBERT 模型组成, 用于从古诗文本中抽取深层次语义特征并进行向量化表示; 知识检索模块用于从古诗知识库检索与输入文本相关的典故情感、意象情感、诗人背景和情感术语等知识; 知识表示模块对古诗知识进行特征提取和向量表示; 知识融合模块对古诗文本张量和古诗知识张量进行融合; 结果输出模块用于判断古诗文本的情感倾向。
图1 研究框架
Fig. 1 Research architecture
文本表示模块利用 GuwenBERT 预训练模型①https://github.com/Ethan-yt/guwenbert;对古诗文本进行特征提取和向量表示。Guwen-BERT 模型是一个利用殆知阁古代文献语料训练的Ro-BERTa 预训练模型, 其训练语料涵盖多种类型的古代文献, 共 17 亿字。该模型的工作流程如图 1所示, 其中 TE, SE 和 PE 分别表示 Token Embedding, Segment Embedding 和 Position Embedding。嵌入层(Embedding)对古诗文本 A 进行编码, 并从 Token Embedding, Segment Embedding 和 Position Embed-ding 三方面进行向量表示。Token Embedding 将古诗文本 A 拆分为字, 并将每个字转换为固定维度的向量; Segment Embedding 将每首古诗作为单句进行编码; Position Embedding 标识组成诗句的汉字的先后顺序。三类向量共同组成 GuwenBERT 模型的输入张量。GuwenBERT 借助 Ro-BERTa 预训练模型, 将现代汉语的一些语言特征迁移到古诗文本中, 有效地捕捉古诗文本的语义特征。GuwenBERT 模型用于对输入张量进行特征提取, 并形成古诗文本张量 pt={x1, x2, …, xt}。
古诗的情感倾向一方面由古诗的字里行间直观地表达出来, 另一方面由诗中的典故和意象等间接地表达出来。此外, 古诗的情感倾向不仅与古诗蕴含的情感有关, 也与诗人的经历和所处的时代背景有关。因此, 知识检索模块试图利用典故、意象和诗人背景这 3 类隐性知识以及情感术语这类显性知识来指导古诗情感分析过程。该模块主要有古诗知识库构建和知识检索两大功能, 其中古诗知识库包括典故意象库、诗人背景库和情感术语库。
典故意象库构建的基本思路如下: 针对古诗语料, 采用网络搜索与人工整理相结合的方式获取典故和意象等信息, 利用关联分析法, 建立上述两类信息与其蕴含情感的映射关系, 在此基础上, 引入知识图谱技术, 形成典故和意象等知识及其情感倾向, 完成典故意象库的构建。
检索典故知识和意象知识及其情感倾向时, 在载入典故意象库中的典故知识和意象知识的基础上, 借助 harvesttext② https://github.com/blmoistawinde/HarvestText; 工具包, 从古诗文本中抽取典故实体和意象实体, 通过实体链接, 建立典故知识及其含义以及意象知识及其含义的映射关系。经查询典故意象库, 得到典故含义和意象含义蕴含的情感倾向, 进而得到典故知识和意象知识的情感倾向。分别将典故情感和意象情感记为 Alt-Smt和Im-Smt。例如, 古诗文本“君家牡丹今盛开|二十四枝为一栽|主人果然青眼待|正忙亦须偷暇来”, 其中的典故实体为“青眼”, 典故知识及其含义的映射关系为{青眼: 对人的赏识、器重或喜爱}, 典故含义及其蕴含情感的映射关系为{对人的赏识、器重或喜爱: 赏识、器重和喜爱}, 则典故知识与其蕴含情感的映射关系为{青眼: 赏识、器重和喜爱}; 古诗文本“行尽关山万里馀|到时闾井是荒墟|附庸唯有铜鱼使|此后无因寄远书”, 其中的意象实体为“关山”, 意象知识及其含义的映射关系为{关山: 象征着艰难险阻、旅途的遥远和思乡之情}, 意象含义及其蕴含情感的映射关系为{象征着艰难险阻、旅途的遥远和思乡之情: 孤独、思乡和艰难}, 经分析可得, 意象知识与其蕴含情感的映射关系为{关山: 孤独、思乡和艰难}。
在检索诗人背景知识及情感倾向时, 将古诗文本作为研究对象, 通过实体链接, 建立古诗文本与诗人以及诗人与其背景知识之间的映射关系, 进而建立古诗文本与诗人背景知识之间的映射关系, 经查询古诗知识库, 得到诗人背景知识蕴含的情感倾向, 将其记为 Bk-Smt。例如, 古诗文本“澹月倾云晓角哀|小风吹水碧鳞开|此生定向江湖老|默数淮中十往来”, 其中的古诗文本与诗人的映射关系为{“澹月倾云晓角哀|小风吹水碧鳞开|此生定向江湖老|默数淮中十往来”: 苏轼}, 诗人与诗人背景知识之间的映射关系为{苏轼: 诗人自颖州改知扬州|取道淮河赴任}, 经查询古诗知识库, 可知该诗蕴含诗人仕途失意的不平之情和人生无定的哀伤之情。情感术语库构建的基本思路如下: 针对古诗语料, 采用微词云③ https://www.weiciyun.com/对该语料进行情感词抽取, 经人工整理后得到情感术语库, 该术语库包括正向、中性、负向 3 类情感词。检索情感术语库的基本流程如下: 首先, 利用微词云对古诗文本进行情感词抽取并去重; 然后, 通过匹配情感术语库中的情感术语, 得到古诗文本中情感术语的情感倾向, 将其记为 Smt-Terms。例如, 古诗文本“巧画无盐丑不除|此花风韵更清姝|从教变白能为黑|桃李依然是仆奴”, 经情感术语匹配后, 得到该诗的情感术语及情感倾向映射关系为{风韵: 正向}、{清姝: 正向}、{丑: 负向}、{仆奴: 负向}。
知识表示与融合由知识表示模块和知识融合模块组成。首先, 分别将典故知识、意象知识、诗人背景和情感术语蕴含的情感倾向 Alt-Smt, Im-Smt, Bk-Smt 和 Smt-Terms 输入模型; 然后, 利用中文BERT 预训练模型 BERT-base-Chinese[④] https://huggingface.co/bert-base-chinese①,将上述 4类输入进行特征提取, 并进行向量化表示, 分别记为 alt, im, bk 和 st; 接着, 设计多维度注意力机制来判断 4 类输入对古诗情感分析的重要性和贡献度; 最后, 融合前述分析结果, 给出古诗知识特征描述。BERT-base-Chinese 是一种改进的 BERT 模型, 由大规模中文语料训练而成, 擅长处理中文文本, 能够较好地捕捉中文文本的句法结构和语义特征。
鉴于所构建知识库具有不完备性以及知识检索时会出现误配或失配问题, 本文引入注意力机制来减少上述问题给古诗情感分析带来的负面影响。受Bahdanau 等[18]提出的基础注意力机制(Vanilla At-tention)启发, 本文设计多维度注意力机制。基础注意力机制的最大优势在于能够建立目标语句与源语句组织结构之间的映射关系。本文基于基础注意力机制, 设计 5 类注意力函数: Ps-attention (poetry-text sentiment attention), As-attention (allusion senti-ment attention), Is-attention (imagery sentiment at-tention), Bs-attention (background sentiment atten-tion)以及 St-attention (sentimental terminology atten-tion), 分别表征古诗文本、典故知识、意象知识、诗人背景以及情感术语蕴含的情感倾向对古诗情感分析结果的贡献度, 计算公式为
, (1)
其中, k 表示不同的知识(k=pt, alt, im, bk, st);
,
,
,
和
分别表示第 i首古诗文本及其典故知识、意象知识、诗人背景、情感术语蕴含情感倾向的注意力权重。权重越大, 表示 k 知识对古诗情感分析结果的贡献度越高; tanh(·)为双曲正切变换非线性激活函数;
和
为权重矩阵; b(k)为偏置向量; softmax(·)函数用于归一化注意力权重。
根据 Ps-attention, As-attention, Is-attention, Rs-attention 和 St-attention 得到的注意力权重, 利用式(2)计算得到蕴含第 i 首古诗文本及其典故知识、意向知识、诗人背景和情感术语情感倾向的语义张量
,
,
,
和
:
。 (2)
为了融合不同类型知识的语义信息, 借鉴多层感知机最后一层的思想, 引入自适应权重机制, 用来动态地调整各类知识的贡献比例。具体地, 针对蕴含第i首古诗文本及其典故知识、意象知识、诗人背景以及情感术语情感倾向的语义张量
,
,
,
和
, 分别分配一个可学习的权重参数, 并将其组合成一个权重向量, 记为
, (3)
在初始阶段, 这些权重参数的值均设为 1, 表示各类知识的贡献相等。在训练过程中, 这些权重被视为待学习参数, 随模型训练而不断优化。随后, 对可学习的权重向量进行归一化处理, 从而生成各类知识表示的权重分布:
, (4)
最终将多维度注意力机制得到的语义向量进行加权融合得到古诗张量 a, 如式(5)和(6)所示:
, (5)
。 (6)
结果输出模块如图 1 所示。首先, 将古诗张量a 送入全连接层, 利用 softmax 函数进行归一化处理, 得到概率输出 ap; 然后, 利用 argmax 函数选取概率最大的输出作为古诗情感分析结果 y。计算公式如下:
, (7)
, (8)
其中, W和 b 表示全连接层的权重矩阵和偏置量, argmax 为选取概率最大输出的函数。
本文使用的实验语料是清华大学自然语言处理研究中心 THUAIPoet 小组维护的古诗语料FSPC[2]。该语料中共有古诗 5000 首, 涵盖多个朝代, 以唐宋时期的古诗为主。该语料将每首古诗标识为负向、隐性负向、中性、隐性正向和正向等 5 类情感。为了表示方便, 本文分别将负向和隐性负向、隐性正向和积极等情感进行合并, 形成负向、中性、正向等 3 类情感, 分别表示为−1, 0 和 1。为了便于模型训练, 需要对实验语料进行预处理。首先, 将实验语料随机打乱, 确保不同情感语料的分布尽可能一致; 然后, 将实验语料按照 8:1:1 的比例划分为训练集、验证集和测试集, 其中训练集用于训练模型, 验证集用于检查模型的训练效果, 测试集用于检验模型的性能。
本文针对训练集和验证集中的古诗语料, 结合古诗文网① https://www.gushiwen.cn/;等互联网资源以及微词云等工具, 经过人工筛选与整理, 构建 4 个关键知识库: 意象知识库、典故知识库、诗人背景库和情感术语库。意象知识库包括 150 个常见的古诗意象, 典故知识库涵盖 110 个古诗中常见的典故, 诗人背景库包含诗人创作诗作的时代背景。情感术语库收录 4209 个情感相关的术语, 包含 1499 个正向情感术语、1798 个负向情感术语以及 912 个中性情感术语。值得注意的是, 古诗中的典故和意象具有较为固定的象征意义, 在不同的诗人和作品中广泛使用。例如“自有春愁正断魂|不堪芳草思王孙|落花寂寂黄昏雨|深院无人独倚门”和“定知花发是归期|不奈归心日日归|风雪岂知行客恨|向人更作落花飞”均使用了“落花”这一意象, 借此抒发喟叹和哀愁的情感。诗人背景及情感术语同样展现出较高的适用性。这些特性使得本文构建的知识库能够覆盖测试集中的大部分古诗语料。
2.2.1 对比模型
为了验证本文模型 SACAP 的有效性, 引入以下 6 个典型模型进行对比实验。
1)BiLSTM: 该模型由两个方向相反的 LSTM模型组成。
2)Llama2-7B[19]: 该模型是 Meta AI 于 2023 年发布的经过预训练和微调的大型语言模型(large language model, LLM)。本文引入 Llama2 的基础模型 Llama-7B-hf② https://huggingface.co/meta-llama/Llama-2-7b;。
3)BiLSTM+SA: 该模型在 BiLSTM 模型基础上加入 self-attention 机制。
4)XLNetbase[20]: 该模型是基于排列语言模型(permutation language modeling, PLM)的广义自回归预训练模型。本文引入面向中文文本的 Chinese-XLNet-base 模型[3]。
5)gMLPbase[21]: 该模型引入门控机制的多层感知机(gated multilayer perceptron, gMLP)。
6)GuwenBERTbase③ https://github.com/Ethan-yt/guwenbert: 该模型是一种特殊的 Ro-BERTa 模型, 经过大规模古文语料训练得到。
2.2.2 参数设置
本文采用带掩码的交叉熵损失函数训练对比模型, 优化器使用 AdamW, 训练轮次为 20, 评价指标为 F1。Llama-7B 模型使用 Lora(low-rank adapta-tion)[22]方式进行微调, 其他模型使用全参数微调。6 个对比模型和本文 SACAP 的实验参数见表 1。
2.2.3 实验结果分析
在古诗语料上依次运行对比模型, 得到古诗情感分析结果(表 2)。可以看出, SACAP 模型的 F1 值最高, 达到 0.9003, 其次是GuwenBERTbase, 此后依次是 XLNetbase, gMLPbase, BiLSTM-SA, Llama2-7B 和 BiLSTM。对比实验结果的成因分析如下。
1)BiLSTM 模型对古诗文本效果较差, 主要有两个原因。一是古诗文本篇幅普遍较短, 不利于该模型建立上下文语义关系; 二是古诗一般采用比喻和拟人等修辞手法, 或引入典故和意象等隐喻手段, 这种情感表达的含蓄性导致该模型提取的语义信息与实际情形差异较大。
2)Llama-7B 模型在古诗文本情感分析中表现较差, 主要原因有三。一是训练 Llama-7B 模型的中文语料仅占 0.13%且为现代文; 二是该模型参数量大, 实验中使用的语料规模不足以对其进行充分的微调; 三是该模型面临大型语言模型常见的幻觉问题, 导致在判断古诗情感倾向时, 有时会生成与古诗情感无关的内容。
3)BiLSTM-SA 模型在 BiLSTM 模型的基础上引入 self-attention 机制, 该机制擅长捕捉古诗文本的内在联系, 在一定程度上增强了古诗文本的特征提取能力。
表1 7种模型的实验参数
Table 1 Experimental parameters of 7 models
模型batch_sizelearning_ratedropouthidden_dim BiLSTM642×10−40.6768 Llama2-7B 81×10−4–– BiLSTM+SA642×10−40.6768 XLNetbase642×10−50.6768 gMLPbase642×10−50.6768 GuwenBERTbase642×10−50.6768 SACAP (本文模型)161×10−50.6768
表2 不同模型的实验结果
Table 2 Comparative experiment results of different models
模型F1 BiLSTM0.5143 Llama2-7B0.5447 BiLSTM-SA0.6022 gMLPbase0.6479 XLNetbase0.7035 GuwenBERTbase0.8585 SACAP0.9003
4)gMLPbase 模型具有更深层次、更为复杂的网络结构, 该结构有助于发现更多的潜在特征, 因而比 BiLSTM 和 BiLSTM-SA 具有更优的古诗情感分析性能。
5)XLNetbase 模型一方面解决了 BERT 模型忽略遮蔽语料之间依赖关系的问题, 另一方面克服了自回归模型不能同时利用语料上下文信息的不足。因此, 该模型能够同时提取古诗文本的深层次语义特征和上下文语义信息, 比 gMLPbase 具有更优的古诗情感分析效果。
6)GuwenBERTbase 模型结合现代汉语 RoBERTa权重和大量古文语料, 将现代汉语的部分语言特征迁移到古代汉语。由于现代汉语的标注比古代汉语更高效, 故该模型相比 XLNetbase 在古代汉语处理方面具有一定优势。
7)SACAP 模型的 F1 值最高。本文模型融合了GuwenBERT 和注意力机制等多个模型的优势, 充分利用古诗文本的显性特征和隐性特征进行古诗情感分析, 因此获得最优的性能。
为了验证各类知识对古诗情感分析结果的影响, 设计消融实验。该实验在相同参数条件下进行, 实验结果如表 3 所示。
由表 3 可以看出, SACAP-PT 模型不引入任何外部知识, 即 SACAP 模型仅包含文本表示和结果输出两个模块, 其中文本表示最为关键, 该模块由GuwenBERT 组成。SACAP-PT 与 GuwenBERT模型的 F1 值相同, 均为 0.8585。SACAP-AE, SACAP-IE和 SACAP-BK 分别表示只引入典故情感知识、意象情感知识和诗人背景的SACAP 模型, 3 种模型的F1 值分别比 SACAP-PT 模型高 0.0017, 0.0208 和0.0108。主要原因是, 古诗中引入的典故或意象往往与诗人所处的境遇或表达的观点具有较大的相似性, 诗人的生平背景为其诗歌创作提供了丰富的情感, 通过这些元素的含义及其蕴含的情感倾向, 有助于提高古诗情感分析性能。SACAP-ST 模型只引入情感术语, 该模型的 F1 值比只引入古诗文本、只引入典故情感知识、只引入意象情感知识和只引入诗人背景的 SACAP 模型分别高 0.0233, 0.0216, 0.0088 和 0.0125, 凸显情感术语在古诗情感分析中的重要作用。
表3 消融实验结果
Table 3 Ablation experimental results
模型PTAEIEBKSTF1 SACAP-PT√××××0.8585 SACAP-AE×√×××0.8602 SACAP-IE××√××0.8730 SACAP-BK×××√×0.8693 SACAP-ST××××√0.8818 SACAP-W-PT×√√√√0.8987 SACAP-W-AE√×√√√0.8976 SACAP-W-IE√√×√√0.8959 SACAP-W-BK√√√×√0.8968 SACAP-W-ST√√√√×0.8924 SACAP (本文模型)√√√√√0.9003
说明: PT, AE, IE, BK和ST分别表示古诗文本、典故情感知识、意象情感知识、诗人背景和情感术语; “√”表示采用该知识; “×”表示不采用该知识。
在仅缺省一种知识的消融实验中, SACAP-W-PT, SACAP-W-AE, SACAP-W-IE, SACAP-W-BK 和SACAP-W-ST 分别表示仅缺省古诗文本、仅缺省典故情感知识、仅缺省意象情感知识、仅缺省诗人背景和仅缺省情感术语的 SACAP 模型。仅缺省古诗文本的模型的 F1 值分别比仅缺省典故情感知识、仅缺省意象情感知识、仅缺省诗人背景、仅缺省情感术语的模型高 0.0027, 0.0044, 0.0035 和 0.0079, 由此可见, 仅缺省古诗文本的模型最优, 其次是仅缺省典故情感知识、仅缺省诗人背景、仅缺省意象情感知识的模型, 仅缺省情感术语的模型最差。此外, 在缺省一种知识的情况下, 仅缺省古诗文本、仅缺省典故情感知识、仅缺省意象情感知识、仅缺省诗人背景、仅缺省情感术语的模型的性能优于只依赖单一知识来源的只引入古诗文本、只引入典故情感知识、只引入意象情感知识、只引入诗人背景和只引入情感术语的模型, 进一步表明古诗文本、典故情感知识、意象情感知识、诗人背景和情感术语每一种知识在古诗情感分析中都有一定的作用, 情感术语的影响更显著, 典故情感知识、意象情感和诗人背景知识次之, 古诗文本相对较弱。尽管SACAP 模型的 F1 值最高, 但与只引入情感术语的模型相比, 仅高 0.0085, 与缺省古诗文本的模型相比, 仅高 0.0021, 这是因为典故情感、意象情感和诗人背景属于隐性知识, 这类知识间接地表达古诗情感; 情感术语属于显性知识, 直接反映古诗的情感倾向。从实验结果看, 与隐性知识相比, 显性知识在提高古诗情感分析性能方面具有更加突出的作用。
图 2 给出 SACAP 模型对两组古诗“巧画无盐丑不除|此花风韵更清姝|从教变白能为黑|桃李依然是仆奴”和“儒冠多误身|识字用心苦|斯文忧患馀|鬰鬰流年度”进行情感分析的流程和识别结果。表 4 显示消融实验中各个模型在这两组古诗文本上的情感识别效果。这两组文本的情感倾向在实验语料中均被标注为“中性”。
如图 2(a)所示, 古诗“巧画无盐丑不除|此花风韵更清姝|从教变白能为黑|桃李依然是仆奴”, 经由古诗文本中用于文本表示的 GuwenBERT 模型识别出的情感倾向为“中性”。通过查询典故意象知识库可知, 典故实体为“无盐”, 因此典故知识及其含义的映射关系为{无盐: 一个因貌丑而闻名却以智慧和忠诚赢得敬仰的女性}, 典故含义及其蕴含情感的映射关系为{因貌丑而闻名的女子, 但也因才智与忠诚而受人敬仰: 对内在美的认可}, 典故知识与其蕴含情感的映射关系为{无盐: 对内在美的认可}, 表达出正向的情感。意象实体为“桃李”, 意象知识及其含义的映射关系为{桃李: 美好的事物}, 意象含义及其蕴含情感的映射关系为{美好的事物: 赞美和向往}, 因此意象知识与其蕴含情感的映射关系为{桃李: 赞美和向往}, 表达出正向的情感。通过查询诗人背景知识库可知, 这首诗作者是“陈与义”, 其背景知识为“这首诗是陈与义与其表兄张规臣的唱和之作”, 并没有情感倾向。只引入古诗文本、只引入典故情感知识、只引入意象情感知识和只引入诗人背景的 SACAP 模型识别错误, 这是因为 SACAP-PT 仅依赖古诗文本的语义特征, 且鉴于GuwenBERT 模型在识别中性情感方面存在一定的局限性, 而只引入典故情感知识和只引入意象情感知识的 SACAP 模型提取的典故“无盐”、意象“桃李”在这首古诗中所传达的情感倾向并不明显, 只引入诗人背景的 SACAP 模型其背景知识并无情感倾向, 因此导致古诗情感误判。结合古诗文网等相关赏析来看, 整首诗想表达的是诗人对美丑贵贱的辩证思考, 体现的是中性情感。只引入情感术语的SACAP 模型识别出诗中同时存在的正向和负向情感, 并将它们综合考虑, 从而正确地识别出古诗的中性情感倾向。此外, SACAP 模型以及仅缺省古诗文本、仅缺省典故情感知识、仅缺省意象情感知识和仅缺省诗人背景的 SACAP 模型均识别出正确的中性情感, 而仅缺省情感术语的 SACAP 模型识别错误, 进一步表明情感术语这类显性知识的影响更显著, 典故情感知识、意象情感知识和诗人背景这类隐性知识的影响相对较小。
如图 2(b)所示, 古诗“儒冠多误身|识字用心苦|斯文忧患馀|鬰鬰流年度”, 经由古诗文本中用于文本表示的 GuwenBERT 模型识别出的情感倾向为“消极”。通过查询典故意象知识库可知, 典故实体为“儒冠”, 但“儒冠”一般指代儒家学者或文人, 并没有情感倾向; 意象实体为“流年”, 意象知识及其含义的映射关系为{流年: 对时光流逝的感伤和无奈}, 意象含义及其蕴含情感的映射关系为{对时光流逝的感伤和无奈: 感伤和无奈}, 因此意象知识与其蕴含情感的映射关系为{流年: 感伤和无奈}, 表达出负向的情感。通过查询诗人背景知识库可知, 该诗的作者是“文天祥”, 其背景知识是“作于南宋末年, 国家面临元军的入侵和统治危机, 诗人也经历了从状元及第到抗元斗争”, 表达出负向的情感。表 4 显示, 只引入典故情感知识、只引入意象情感知识、只引入诗人背景和只引入情感术语的 SACAP模型均识别错误, 原因在于提取的典故“儒冠”、意象“流年”, 诗人背景知识以及情感术语“苦”、“鬰鬰”未能全面地捕捉到作者的情感表达。只引入古诗文本的 SACAP 模型识别正确, 得益于 Guwen-BERT 模型能够挖掘出诗中深层次的语义特征。结合古诗文网等相关赏析可以发现, 整首诗实际上反映诗人对个人命运与社会现实的深刻思考, 其情感倾向更接近中性。SACAP 模型以及仅缺省古诗文本、仅缺省典故情感知识、仅缺省意象情感知识、仅缺省诗人背景和仅缺省情感术语的模型均识别错误, 造成这一现象的原因是, 尽管古诗文本中用于文本表示的 GuwenBERT 模型识别出正确的情感倾向, 提取的典故、意象、诗人背景以及情感术语会误导各模型对该诗的识别效果。
图2 SACAP模型古诗情感分析结果示例
Fig. 2 Example of sentiment analysis results of Chinese ancient poems based on SACAP
表4 消融实验识别古诗情感对比
Table 4 Ablation experimental identify emotional contrasts in Chinese poems
模型巧画无盐丑不除|此花风韵更清姝|从教变白能为黑|桃李依然是仆奴儒冠多误身|识字用心苦|斯文忧患馀|鬰鬰流年度 SACAP-PT×√ SACAP-AE×× SACAP-IE×× SACAP-BK×× SACAP-ST√× SACAP-W-PT√× SACAP-W-AE√× SACAP-W-IE√× SACAP-W-BK√× SACAP-W-ST×× SACAP (本文模型)√×
说明: “√”表示模型正确识别的情感倾向, “×”表示模型错误识别的情感倾向。
本文兼顾古诗文本以及领域知识对古诗情感分析的重要性, 在引入一系列深度学习模型和注意力机制的基础上, 提出基于多维度注意力机制的古诗情感分析模型 SACAP。该模型首先从古诗文本中抽取深层次语义特征; 然后, 在构建古诗知识库的基础上, 检索与输入文本相关的典故情感、意象情感、诗人背景和情感术语等知识; 接着, 引入多维度注意力机制, 对古诗文本和古诗知识进行特征融合; 最后, 判断古诗文本的情感倾向。在开放古诗语料 FSPC 上的实验结果表明, 与 GuwenBERTbase, XLNetbase, gMLPbase, BiLSTM-SA, Llama2-7B 和 Bi-LSTM 等对比模型相比, 本文所提模型 SACAP 的F1 值最高, 达到 0.9003。消融实验结果表明, 与典故情感、意象情感以及诗人背景这 3 类隐性知识相比, 情感术语这类显性知识在古诗情感分析中发挥更大的作用。本文的研究结果不仅在一定程度上完善, 古诗情感分析的方法体系, 而且有助于推动中国传统文化创造性转化和创新性发展, 促进文化与科技深度融合, 助力文化强国建设。词亦是一种中国古代特有的文学体裁, 能否将所提模型(或稍作修改)应用于词的情感分析, 值得后续探讨。
参考文献
[1] Peng H, Ma Y, Li Y, et al. Learning multi-grained aspect target sequence for Chinese sentiment analysis. Knowledge-Based Systems, 2018, 148: 167–176
[2] Chen H, Yi X, Sun M, et al. Sentiment-controllable Chinese poetry generation // Proceedings of the 28th International Joint Conference on Artificial Intelligen-ce. Macao, 2019: 4925–4931
[3] Zhang L, Wu Y, Chu Q, et al. SA-model: multi-feature fusion poetic sentiment analysis based on a hybrid word vector model. Computer Modeling in Enginee-ring & Sciences, 2023, 137(1): 631–645
[4] Li H, Wang J, Lu Y, et al. Chinese multi-category sentiment of e-commerce analysis based on deep lear-ning. Electronics, 2023, 12(20): 4259
[5] Huang S, Liu C, Zhang Y. Chinese text sentiment analysis based on BERT-BiGRU fusion gated attention. American Journal of Computer Science and Techno-logy, 2023, 6(2): 50–56
[6] 汪林, 蒙祖强, 杨丽娜. 基于多级多尺度特征提取的CNN-BiLSTM模型的中文情感分析. 计算机科学, 2023, 50(5): 248–254
[7] 赵文辉, 吴晓鸰, 凌捷, 等. 基于prompt tuning的中文文本多领域情感分析研究. 计算机工程与科学, 2024, 46(1): 179–190
[8] Su C, Li J, Peng Y, et al. Chinese metaphor sentiment computing via considering culture. Neurocomputing, 2019, 352(4): 33–41
[9] Liu Z, Zhao W. Chinese sentiment analysis model by integrating multi-granularity semantic features. Data Technologies and Applications, 2023, 57(4): 605–622
[10] Liao J, Wang M, Chen X, et al. Dynamic commonsense knowledge fused method for Chinese implicit senti-ment analysis. Information Processing & Management, 2022, 59(3): 102934
[11] 杨春霞, 姚思诚, 宋金剑. 一种融合字词信息的中文情感分析模型. 计算机工程与科学, 2023, 45(3): 512–519
[12] Li G, Li J. Research on sentiment classification for Tang poetry based on TF-IDF and FP-Growth // Proce-edings of the 3rd Advanced Information Technology, Electronic and Automation Control Conference. Chong-qing, 2018: 630–634
[13] 李晖, 张天垣, 金纾羽. 古代中国格律诗中的社会情感挖掘. 计算机工程与应用, 2021, 57(7): 171–177
[14] Tang Y, Wang X, Qi P, et al. A neural network-based sentiment analysis scheme for Tang poetry // Procee-dings of 2020 International Wireless Communications and Mobile Computing. Limassol, 2020: 1783–1788
[15] Lin Y, Cheng M, Liu L. Joint learning and self-training for poetry sentiment recognition // Proceedings of the 12th International Conference on Electronics Informa-tion and Emergency Communication. Beijing, 2022: 272–275
[16] 吴斌, 吉佳, 孟琳, 等. 基于迁移学习的古诗宋词情感分析. 电子学报, 2016, 44(11): 2780–2787
[17] 孙建军, 李阳, 裴雷. “数智”赋能时代图情档变革之思考. 图书情报知识, 2020(3): 22–27
[18] Bahdanau D, Cho K, Bengio Y. Neural machine trans-lation by jointly learning to align and translate //Pro-ceedings of the 2015 International Conference on Lear-ning Representations. San Diego, 2015: 1–15
[19] Touvron H, Martin L, Stone K, et al. Llama 2: open foundation and fine-tuned chat models [EB/OL]. (2023–07–19)[2024–03–16]. https://arxiv.org/abs/2307. 09288
[20] Yang Z, Dai Z, Yang Y, et al. XLNet: generalized autoregressive pre-training for language understanding // Proceedings of the 32th Annual Conference on Neu-ral Information Processing Systems. Vancouver, 2019: 5754–5764
[21] Liu H, Dai Z, So D, et al. Pay attention to MLPs. Advances in Neural Information Processing Systems, 2021, 34: 9204–9215
[22] Hu E J, Shen Y, Wallis P, et al. Lora: low-rank ad-aptation of large language models [EB/OL]. (2021–06–17)[2024–03–16]. https://arxiv.org/abs/2106.09685
Sentiment Analysis of Chinese Ancient Poetry by Fusing Explicit Knowledge and Implicit Knowledge
Abstract By fully utilizing the features of poetry text and related knowledge, this paper proposes a model SACAP for sentiment analysis of Chinese ancient poems integrating explicit knowledge and implicit knowledge. On the one hand, the model extracts deep semantic features from poetry text, and on the other hand, on the basis of constructing a knowledge base of Chinese ancient poetry, it designs a multidimensional attention mechanism to extract features from Chinese ancient poetry knowledge. The sentiment of Chinese ancient poetry can be determined by taking both features into consideration. The experimental results show that the proposed model performs better than existing models and the explicit knowledge plays much more important role, compared with implicit knowledge.
Key words sentiment analysis; attention mechanism; explicit knowledge; implicit knowledge; Chinese ancient poetry