一种主题分层建模中主题词/序列的提取方法与流程

文档序号:30784237发布日期:2022-07-16 07:18阅读:150来源:国知局
一种主题分层建模中主题词/序列的提取方法与流程

1.本发明涉及主题词提取技术领域,尤其涉及一种主题分层建模中主题词/序列的提取方法。


背景技术:

2.主题分层建模是指在主题建模过程中不仅挖掘主题集合,同时也挖掘出了主题之间的层级关系。主题挖掘结果最终是通过主题词/序列的形式来呈现给用户,一个主题的表示直接决定着用户对这个主题的理解和把控。常规的主题词/序列的提取方法有c-tf-idf、textrank、计算词/序列频次、基于语义相似性选取top-n词/序列等。不同于单层主题表示,分层主题表示既要体现上下层级主题间的相关性,也要凸显出上下层级主题间的差异性和同层主题间的差异性。无论使用哪种方法来提取分层主题的词/序列都无法兼顾相关性和差异性,例如:
3.1)c-tf-idf:该方法提取的主题词/序列无法体现上下层级主题间的相关性;
4.2)计算词/序列频次、textrank、基于语义相似性选取top-n词/序列:该类方法提取的主题词/序列无法凸显出上下层级主题间的差异性和同层主题间的差异性;
5.为解决上述问题,本文发明提出一种主题分层建模中主题词/序列的提取方法。首先,获取主题分层建模的模型输出;然后,根据模型输出提取主题词/序列;最后,呈现分层主题的表示。


技术实现要素:

6.为解决上述技术问题,本发明的目的是提供一种主题分层建模中主题词/序列的提取方法,该方法围绕层次主题结构中主题间的相关性和差异性来优化主题的表示。
7.本发明的目的通过以下的技术方案来实现:
8.一种主题分层建模中主题词/序列的提取方法,包括:
9.a、获取主题分层建模的模型输出;
10.b、根据模型输出提取主题词/序列;
11.c、展示主题的词/序列特征表示结果。
12.与现有技术相比,本发明的一个或多个实施例可以具有如下优点:
13.可以在挖掘层次化主题结构的过程中更好的表示主题,既体现了上下层级主题间的相关性,也凸显出了上下层级主题间的差异性和同层主题间的差异性,使主题不仅在结构上呈现出层次性,在表示上也体现了层次化。
附图说明
14.图1是主题分层建模中主题词/序列的提取方法流程图;
15.图2是主题层级结构图。
具体实施方式
16.为使本发明的目的、技术方案和优点更加清楚,下面将结合实施例及附图对本发明作进一步详细的描述。
17.如图1所示,为主题分层建模中主题词/序列的提取方法流程,包括
18.1)获取主题分层建模的模型输出:主要包括主题间的层级关系和主题对应文献集合;
19.2)根据模型输出提取主题词/序列:主要根据相关性和差异性来提取主题词/序列;
20.3)呈现分层主题的表示:以主题词/序列的形式呈现主题给用户。
21.上述1)中主要是获取已经挖掘好的分层主题结果(这里使用的是hdbscan方法,也可使用其他方法),包括主题间的层级关系和主题对应文献集合,tm_o=[{'t_cur':t_-1,'t_next':[{'t_cur':t_0,'t_next':[{'t_cur':t_0_0,'t_next':[....],'t_docsets':ds_0_0},{'t_cur':t_0_1,'t_next':[....],'t_docsets':ds_0_1},......],'t_docsets':ds_0},......,{'t_cur':t_n-1,'t_next':[{'t_cur':t_n-1_0,'t_next':[....],'t_docsets':ds_n-1_0},{'t_cur':t_n-1_1,'t_next':[....],'t_docsets':ds_n-1_1},......],'t_docsets':ds_n-1}],'t_docsets':ds_-1}],主题间的层级关系是一个树状图(图2),topic_-1是根节点(不需要提取主题词/序列),topic_-1共有n个子节点,每个非叶子节点都有自己的子节点。
[0022]
上述2)中主要根据tm_o中的信息为每个topic提取词/序列的表示,提取次序从图2根节点开始依次向下提取,同一个父节点的topic作为一个提取单位,提取方法如下:
[0023]
a)根节点topic_-1下面所有子节点(图2中level_0)的主题词/序列提取:
[0024]
(1)计算每个主题对应文献集合(数据预处理阶段剔出了无信息词/序列)的词/序列频次,并倒序排列;
[0025]
(2)取top_n个词/序列作为该主题的词/序列,这里n默认取3,也可以根据需要设置;
[0026]
(3)输出结果为:topic_show_level_0=[{'t_id':t_0,'t_name':[ws_0,ws_1,ws_2]},{'t_id':t_1,'t_name':[ws_0,ws_1,ws_2]},......],其中ws_i为提取的主题的词/序列。
[0027]
b)非根节点子节点(level_j,j》0)的主题词/序列提取:以相同父节点的子节点作为一个单位提取(例如,topic_0的所有子节点主题):
[0028]
(1)计算词/序列频次并倒序提取主题特征:计算每个主题的词/序列频次并倒序,提取top_n个词/序列作为该主题与父节点主题的待选相关性特征sims_features_candidate,这里n默认取10,也可根据需要设置;
[0029]
(2)根据c-tf-idf提取主题特征:把每个主题对应的文献集合合并为一个文献(数据预处理阶段剔出了无信息词/序列),计算tf-idf值并倒叙,为每个主题提取top_n个词/序列作为该主题的待选差异性特征diffs_features_candidate,这里n默认取10,也可根据需要设置;
[0030]
(3)提取主题的词/序列:主题的词/序列由相关性特征(默认选1个,也可根据需要设置)和差异性特征(默认选2个,也可根据需要设置)组成:
[0031]
3.1)提取主题的相关性特征:从主题的sims_features_candidate中选取1个跟父节点主题最相似的特征
[0032]
3.1.1)特征提取:可以用语言模型(例如:sbert)提取语义特征,提取父节点主题词/序列的语义特征f_f和sims_features_candidate的语义特征fs_c;
[0033]
3.1.2)计算形似性:这里可以使用cosine(也可其他方法)计算相似性;
[0034]
3.1.3)从sims_features_candidate中取相似性最大(默认次序作为第二排序指标)的1个特征记作f_s_max=[ws_0];
[0035]
3.2)提取主题的差异性特征:依次从主题的diffs_features_candidate中选取2个跟父节点主题差异性大于阈值的特征:
[0036]
3.2.1)特征提取:可以用语言模型(例如:sbert)提取语义特征,提取父节点主题词/序列的语义特征f_f和diffs_features_candidate的语义特征fd_c;
[0037]
3.2.2)计算差异性:这里可以使用1-cosine计算差异性,也可使用其他度量方法;
[0038]
3.2.3)从sims_features_candidate中依次取差异性值大于差异性阈值的前2个特征记作f_d_max=[ws_1,ws_2],差异性阈值默认为0.8,也可根据需要设定。
[0039]
3.3)组成主题的词/序列:t_f=[f_s_max,f_d_max]=[ws_0,ws_1,ws_2]。
[0040]
(4)输出主题的词/序列
[0041]
输出:topic_show_level_j=[{'t_id':t_*_0,'t_name':[ws_0,ws_1,ws_2]},
[0042]
{'t_id':t_*_1,'t_name':[ws_0,ws_1,ws_2]},......]
[0043]
其中:
[0044]
j》0,j为层次;
[0045]
*为当前主题的父节点追溯,一直追溯到level_0的主题节点;
[0046]
ws_i为主题的词/序列。
[0047]
上述3)中主要展示主题的词/序列特征表示结果t_f。
[0048]
虽然本发明所揭露的实施方式如上,但所述的内容只是为了便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1