数字阅读中角色隐式属性智能识别分析方法、系统和应用技术方案

技术编号:37747108 阅读:12 留言:0更新日期:2023-06-05 23:33
本发明专利技术公开了一种角色隐式属性智能识别分析方法,包括:使用小说领域的语料对基于BERT的预训练模型进行迁移学习,获得MLM调整过的BERT的预训练模型;获取包含有角色及其属性的角色属性小说文本数据集,预处理获得带角色属性标注的文本;将正常文本的内容使用提示学习Prompt的建模方式转为新的文本序列,并将文本序列转换为文本向量InputEmbedding;将提示学习中获得的PromptText字符序列使用对比学习的建模方式构建同一文本序列中不同角色的属性特征集合,并针对角色属性特征集合构建属性类型对特征矩阵;使用主动学习对数据质量进行提纯;进行新文本的角色属性预测,自动化产出角色属性结果,再对结果作聚合投票产出最终角色属性类型。本发明专利技术还公开了实现上述方法的系统。的系统。的系统。

【技术实现步骤摘要】
数字阅读中角色隐式属性智能识别分析方法、系统和应用


[0001]本专利技术属于文本信息分类
,涉及一种角色隐式属性智能识别分析方法、系统和应用。

技术介绍

[0002]近年来,随着互联网渗透率的不断提升与国家对文化软实力建设的显著增强,网络文学的市场也随之高速发展。“读小说”与“听书”开始逐渐成长为一种新的国民阅读方式,用户开始逐渐从传统的纸质阅读转换为使用手机等电子设备进行在线阅读与在线听书。这种新兴的阅读与听书方式相比传统阅读更为快捷和简便,用户也可以更高效地利用碎片时间来阅读网络文学作品。尽管目前的电子阅读与听书系统已经很成熟,但是对于一些优质的长篇网文小说,由于其世界观较为宏大、故事情节跌宕起伏、人物图谱较为复杂,在近千章节数与近百万字数的规模下,读者在阅读过程中难免会对一些角色的细节设定因存在遗忘现象而产生快速回查的需求,而完备的设定集与人物角色图谱的存在可以让用户在阅读过程中更好的了解、回查相关小说细节,从而带来更好的沉浸式阅读体验。因此,构建小说中相关角色的设定集与人物角色图谱成为了提升用户体验的一大难题。
[0003]目前业界没有类似技术或解决方案。常规方法是依赖人工对小说中相关的人物属性进行校验与标注,然后整理形成相关角色设定集与人物角色图谱。在此过程中,对于部分角色显式属性,如:功法、技能、绝招口诀、武器名、宠物、载具等,业界可能会使用抽取模型或者判别模型来辅助人工标注;然而对于小说中诸如性别、年龄、性格等角色隐式属性,目前暂无较好的解决方案。
[0004]角色显式属性是指在小说剧情发展过程中,凡出现章节均会直接提及的角色属性,如在小说《斗破苍穹》中萧炎的自创绝招“佛怒火莲”、他收集的异火“青莲地心火”;而角色隐式属性指的是仅在少数章节会直接或间接提及、在绝大多数章节均不再提及的角色属性,如萧炎的年龄,在初始章节交代人物设定时会交代其是“乌坦城天才少年、十一岁突破十段斗之气、之后荒废的三年”,可以推断出他是十四岁的少年,然后随着剧情发展,伴随着往往是“数月后、数年后”等模糊描述,角色的年龄甚至需要根据角色的成长经历、外貌描述、说话语气、相关人物年龄等来推定。由此可见小说中角色隐式属性的识别是一个较难的问题。
[0005]目前业界内角色属性识别方法主要有两种:
[0006]1)抽取模型:抽取模型一般采用基于命名实体识别(Named Entity Recognition,NER)技术,以抽取关键词的方式对小说角色相关的预定义属性类型进行抽取。然而,这种抽取式方法具有较大的局限性:(1)不直接支持隐式属性识别;(2)属性识别链路长。例如:“花宗之内强者如云,那代宗主也不足为虑,以你如今的实力,要收拾她并不难,略微棘手的,是她的伴侣妖花邪君,不过我想你应该能够解决”,在这段小说描写中,抽取式方法可以抽取出“代宗主、她、伴侣、妖花邪君”等关键词,但是要必须要依赖诸多下游任务才能完成最终的角色属性识别。比如,需基于指代消解得到“她”指代的是“代宗主”,“妖花邪君”指代“代
宗主的伴侣”;再基于语义关系得到“代宗主的伴侣”性别是“男”等信息。复杂繁多的模型链路无疑会增加错误传导的概率,这将大大降低抽取系统对于角色属性识别的可靠性;
[0007]2)判别模型:较新的判别大多基于预训练等技术,以分类的形式对小说角色相关的预定义属性类型进行判别;现有的判别模型大多基于诸如BERT等预训练模型的CLS特殊语义标志位来做分类任务,然而,这种判别式方法也存在诸多局限:(1)由于BERT的词向量在空间分布中存在各向异性的问题,即分布不均与低频空间稀疏,使用CLS作为语义编码表征应用在下游任务时会存在语义偏弱的情形;(2)无法有效应对同一段文本中对多个角色的多个属性进行判别的情形;(3)整体模型结构简单,未考虑不同角色相同属性类型的异同,从而无法学习到同类属性之间的共同特征,无法区分非同类属性直接的不同之处;
[0008]对于隐式的角色属性抽取工作,现有方法的主要问题在于:
[0009]1)复杂低效:抽取式模型无法对角色隐式属性直接进行有效抽取,即使抽取出部分关键词也必须再结合诸如指代消解、关系判断等多个下游模型才能解决,整个抽取系统显得庞大复杂而低效;
[0010]2)准确率较低:无论是抽取模型还是判别模型,由于各自的缺陷导致最终的角色属性识别的准确率较低,无法达到小说场景下的工业精度要求;
[0011]3)无法一次识别多角色的多属性结果:如图1所示,抽取模型需对抽取结果做通用归一化处理才能得到最终结果;如图2所示,判别模型需使用CLS标志位对同一段文本进行多次编码表征的方式,这将大幅增加重复计算与影响最终数据的统计分布;
[0012]因此,目前亟需一种单一高效、高准确率与一次覆盖识别所有角色所有属性的方案。

技术实现思路

[0013]为了解决现有技术存在的不足,本专利技术的目的是提供一种角色隐式属性智能识别分析方法和系统。该角色隐式属性智能识别分析方法和系统能够有效识别小说中不同角色的不同隐式属性,如:性别、年龄、性格等。本专利技术能够根据网文中的小说情节发展,自动产出多场景、多角色、多属性的结构化抽取结果,从而能够自动生成相关小说按时间线发展的人物设定集、人物属性图谱等知识库,同时也可以利用角色属性信息辅助音频书的生成,使其音色更为丰富和准确,进而产出高质量的商用小说阅读器与有声作品。
[0014]本专利技术中的角色隐式属性智能识别分析方法使角色属性的识别单一高效、准确率高、一次全覆盖,具体步骤如下:
[0015]步骤1.使用小说领域的语料对基于BERT的预训练模型进行迁移学习;
[0016]本专利技术中,使用的小说领域的语料为无标注文本,使用迁移学习(Transfer Learning)将通用域的词向量表征知识向目标域小说领域的词向量迁移,从而使得开源预训练模型能够学习到特定小说领域的语法、语义、句法等知识;迁移学习带来的好处是显而易见的:首先可以避免从零开始学习词向量特征,这将加快并大大提升优化模型的效率;其次,迁移学习将已经训练好的开源预训练模型参数迁移至新的模型可以帮助新模型训练,比如可以使微调后的模型初始性能更高、在下游任务训练过程中可以使模型提升的速率更快、使得模型收敛更好。
[0017]本专利技术中,迁移学习使用开源的BERT

Base

Chinese模型,在小说领域语料上,使
用Masked Language Model(MLM,掩码语言模型)任务进行微调。由于MLM任务可以方便地在无监督数据集上展开,因此这种微调方式不需要任何人工标注数据。但需要注意的技术难点是,掩码比例与掩码策略。在400G语料规模的小说领域数据集上,本专利技术采用15%~20%的掩码比例效果较好,并对字粒度进行whole word masking(wwm,全词mask)的掩码。采用wwm全词掩码是因为,在小说领域有很多重要的实体信息,比如:角色名称、功法名字、宗派名字等,对这些完整的词如果使用部分随机ma本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种角色隐式属性智能识别分析方法,其特征在于,所述方法包括如下步骤:步骤一、使用小说领域的语料对基于BERT的预训练模型进行迁移学习,获得掩码语言模型MLM调整过的BERT的预训练模型;步骤二、获取包含有角色及其属性的角色属性小说文本数据集,并进行预处理,获得带角色属性标注的文本;步骤三、将正常文本的内容使用提示学习Prompt的建模方式转为新的文本序列,并将文本序列输入步骤一中掩码语言模型MLM调整过的BERT的预训练模型得到文本向量InputEmbedding;步骤四、将步骤三的提示学习中获得的PromptText字符序列使用对比学习的建模方式构建同一PromptText文本序列中不同角色的属性特征集合,并针对角色属性特征集合构建属性类型对特征矩阵;步骤五、拼接提示学习和对比学习的损失,并使用主动学习对数据质量进行提纯;步骤六、利用步骤一~五中获得的模型进行新文本的角色属性预测,自动化产出角色属性结果,再对结果作聚合投票产出最终角色属性类型。2.如权利要求1所述的方法,其特征在于,步骤一中,在迁移学习过程中,使用15%~20%的掩码比例,并对字粒度进行全词mask掩码;训练过程中使用交叉熵损失,并使用early stopping策略防止模型过拟合。3.如权利要求1所述的方法,其特征在于,步骤二中,所述属性小说文本数据集中的各个文本信息存在对应的角色名及其对应的包括性别、年龄、性格在内的属性值;所述预处理包括对文本信息中超过BERT预训练模型预设最大文本序列长度max_seq_len=256的异常文本进行切段处理从而得到正常段落文本,并对文本的角色信息进行提取;所述文本的角色信息的提取通过字符匹配与序列标注交叉校验的方式进行,使用序列标注模型NER,按词性对文本序列进行标注,取文本中识别结果为人名PER的字符序列作为角色抽取结果,并进行查表匹配交叉验证。4.如权利要求1所述的方法,其特征在于,步骤三中,所述Prompt建模如下:对正常的文本内容InputText={s1,

,s
i


,s
m
},其中s
i
表示原文本序列InputText中第i个文本字符,1≤i≤m,对InputText引入Prompt属性提示词[MASK],不同角色Name
i
之间的Prompt提示模版以[SEP]符号分隔,并最终处理为如下Prompt模版格式:PromptText=[CLS]+Name1+的性别是+[MASK]+年龄是+[MASK]+性格是+[MASK]+[SEP]+

+Name
n
+的性别是+[MASK]+年龄是+[MASK]+性格是+[MASK]+[SEP]+InputText={token1,

,token
i


,token
n
};token
i
表示加入Prompt模版及特殊编码字符后的新文字序列,新文字序列长度与PromptText经BertTokenizer分词后的编码表征序列长度一致;获得的文本向量的形式如下:文本向量其中I={id1,

,id
i


,id
n
},id
i
是PromptText中第i个字符经BertTokenizer处理得到文本向量的词嵌入表征input_ids向量;A={a1,


a
i


,a
n
},表示当token
i
是原始字符时位置编码attention_mask为1,当token
i
是padding字符位置编码为0;M={m1,

,m
i


,m
n
},表示第m
i
位的提示词[MASK]表征是何种类型的属性提示词编码mask_position特征。5.如权利要求4所述的方法,其特征在于,根据文本向量构建提示学习损失Loss_prompt:根据步骤四所得的文本向量I={id1,

,id
i


,id
n
}、A={a1,

,a
i


,a
n
},输入步骤一中微调后的BERT模型,得到逻辑输出:BERT
outputs
=BERT(input_ids=I,attention_mask=A),取逻辑输出的最后一层隐状态作为BERT对Prompt提示学习模版的编码表征,即Logits=BERT
outputs
.last_hidden_state,其维度为[batch_size,seq_len,hidd...

【专利技术属性】
技术研发人员:杨佳乐马宇峰徐斌张松坡顾炎刘东晓韩太军吴杨崔瑞博陈炜于
申请(专利权)人:上海阅文信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1