基于文本的标签体系构建方法及装置与流程

文档序号:20189501发布日期:2020-03-27 19:30阅读:436来源:国知局
基于文本的标签体系构建方法及装置与流程

本公开的实施例涉及网络技术领域,尤其涉及一种基于文本的标签体系的构建方法及装置。



背景技术:

在网络技术领域中,为了对用户评论、商家以及场景对象等进行很好的理解,通常会通过标签体系对其进行标注,以简单明了的方式对其进行描述,可以对展示、召回以及特征工程等其他任务起到辅助作用。从而构建一个合理、准确的标签体系会使得对对象的说明更加准确,有指导意义。

现有技术中,一种标签体系的构建方法包括:首先,从大量的文本数据中提取关键词;然后,对关键词进行扩展,得到标签信息;最后,将大量的标签信息作为标签体系的其中一个标签。

发明人对上述方案进行研究之后发现,上述方案得到的标签体系没有层级性,使得标签对对象的描述准确度较低。



技术实现要素:

本公开的实施例提供了一种基于文本的标签体系构建方法及装置,可以构建具有层级的标签体系,使得标签对对象的描述准确度较高。

根据本公开的实施例的第一方面,提供了一种基于文本的标签体系构建方法,所述方法包括:

从预设文本集中提取标签信息;

基于所述标签信息之间包含的相同关键字以及所述相同关键字的数目,对所述标签信息进行不同层级的聚类,得到多个标签类;

对于其中任意两个所述标签类,根据两个所述标签类对应的相同归属方确定两个所述标签类之间的归属相似度;

将所述归属相似度大于或等于预设的归属相似度阈值的两个所述标签类进行合并;

根据合并之后的标签类构建标签体系。

根据本公开的实施例的第二方面,提供了一种基于文本的标签体系构建装置,所述装置包括:

标签信息提取模块,用于从预设文本集中提取标签信息;

标签类生成模块,用于基于所述标签信息之间包含的相同关键字以及所述相同关键字的数目,对所述标签信息进行不同层级的聚类,得到多个标签类;

归属相似度确定模块,用于对于其中任意两个所述标签类,根据两个所述标签类对应的相同归属方确定两个所述标签类之间的归属相似度;

第一标签类合并模块,用于将所述归属相似度大于或等于预设的归属相似度阈值的两个所述标签类进行合并;

标签体系构建模块,用于根据合并之后的标签类构建标签体系。

根据本公开的实施例的第三方面,提供了一种电子设备,包括:

处理器、存储器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现前述基于文本的标签体系构建方法。

根据本公开的实施例的第四方面,提供了一种可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行前述基于文本的标签体系构建方法。

本公开的实施例提供了一种基于文本的标签体系构建方法及装置,所述方法包括:从预设文本集中提取标签信息;基于所述标签信息之间包含的相同关键字以及所述相同关键字的数目,对所述标签信息进行不同层级的聚类,得到多个标签类;对于其中任意两个所述标签类,根据两个所述标签类对应的相同归属方确定两个所述标签类之间的归属相似度;将所述归属相似度大于或等于预设的归属相似度阈值的两个所述标签类进行合并;根据合并之后的标签类构建标签体系。可以构建具有层级的标签体系,使得标签对对象的描述准确度较高。

附图说明

为了更清楚地说明本公开的实施例的技术方案,下面将对本公开的实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1示出了本公开的一种实施例中基于文本的标签体系构建方法的步骤流程图;

图2示出了本公开的一种实施例中基于文本的标签体系构建装置的结构图;

图3示出了本公开的另一种实施例中基于文本的标签体系构建装置的结构图;

图4示出了本公开的另一种实施例中基于文本的标签体系构建装置的结构图;

图5示出了本公开的另一种实施例中基于文本的标签体系构建装置的结构图;

图6示出了本公开的另一种实施例中基于文本的标签体系构建装置的结构图;

图7示出了本公开的另一种实施例中基于文本的标签体系构建装置的结构图;

图8示出了本公开的另一种实施例中基于文本的标签体系构建装置的结构图;

图9示出了本公开的一种实施例中电子设备的结构图。

具体实施方式

下面将结合本公开的实施例中的附图,对本公开的实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开的实施例一部分实施例,而不是全部的实施例。基于本公开的实施例中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开的实施例保护的范围。

实施例一

参照图1,其示出了本公开的一种实施例中的基于文本的标签体系构建方法的步骤流程图,具体如下:

步骤101,从预设文本集中提取标签信息。

其中,预设文本集中包括多个预设文本,每个预设文本可以为简单的句子。在实际应用中,预设文本可以从搜索平台、社交平台等的用户生成内容(ugc,usergeneratedcontent)中获取,而这些ugc通常作为历史行为记录被存储。例如,ugc可以为历史评论记录,从而可以从历史评论记录中提取用户输入的评论文本作为预设文本。此外,预设文本还可以从其它的文本数据中提取,例如,从商品说明的文本数据中提取预设文本。本公开的实施例对预设文本的来源不加以限制。

在提取标签信息的一种具体实施方式中,可以将预设文本进行分词,从而可以将所有分词作为标签信息。此外,为了保证标签信息的准确度,也可以从分词中按照一定规则选取部分分词作为标签信息,例如,将分词中的名词、动词等作为标签信息,而将例如副词等其余分词滤除掉。

步骤102,基于所述标签信息之间包含的相同关键字以及所述相同关键字的数目,对所述标签信息进行不同层级的聚类,得到多个标签类。

在聚类得到标签类的一种具体实施方式中,相同关键字可以作为标签类,若两个标签信息仅包含一个相同关键字,则该两个标签信息仅能进行一次聚类,该相同关键字作为聚类之后的标签类;若两个标签信息包括两个或两个以上的相同关键字,则该两个标签信息可以进行多次聚类,聚类次数与相同关键字的数目相关。例如,“重庆麻辣火锅”和“重庆香辣火锅”包括两个相同关键字:重庆、火锅,从而可以聚类到标签类“重庆火锅”下,而重庆火锅还可以进一步聚类到标签类“火锅”或“重庆”下。

在本公开的实施例中,可以从相同关键字的最多数目开始,逐步递减包含的相同关键字的数目,从而实现不同的等级的聚类。例如,首先,将“重庆麻辣火锅”和“重庆香辣火锅”聚类到“重庆火锅”,再将“重庆火锅”和“成都火锅”聚类到“火锅”,得到两个层级的标签类“重庆火锅”和“火锅”。

步骤103,对于其中任意两个所述标签类,根据两个所述标签类对应的相同归属方确定两个所述标签类之间的归属相似度。

其中,归属方可以理解为该标签类的提供方。例如,若标签类是针对商品的标签类,则标签类可以从用户对商家、商品的评论信息、以及商品信息中提取,从而该商家为该标签类的归属方。当然,同一标签类可以对应不同归属方。

可以理解,对于任意两个标签类,若标签类对应的相同归属方越多,则归属相似度越大;若标签类对应的相同归属方越少,则归属相似度越小。从而可以建立上述正向关系的函数确定归属相似度,相同归属方的数目作为输入量,归属相似度作为输出量。

步骤104,将所述归属相似度大于或等于预设的归属相似度阈值的两个所述标签类进行合并。

其中,归属相似度阈值可以根据经验设定,本公开的实施例对其不加以限制。

可以理解,将归属相似度大于归属相似度阈值的两个标签类确定为同一标签类,从而可以将两者合并。其中合并可为:取其中一个标签类作为合并之后的标签类,而另一个标签类被丢弃。而将归属相似度小于归属相似度阈值的两个标签类确定为不同标签类,不能将两者合并。

本公开的实施例可以根据标签类的归属方确定标签类之间的归属相似度,并对标签类进行合并,有助于降低标签体系的冗余。

步骤105,根据合并之后的标签类构建标签体系。

可以理解,由于聚类之后的标签类是具有父子关系的,从而构建的标签体系也是分层级的。具体地,可以将标签类按照父标签类和子标签类之间的关系构建标签体系。例如,若合并之后的标签类包括:lbl1、lbl2、lbl3、lbl4、lbl5,其中,lbl1、lbl2是lbl3的子标签类,lbl3和lbl4是lbl5的子标签类,从而构建的标签体系中层级最高的标签类为lbl5,中间层级的标签类为lbl5的子标签类lbl3和lbl4,最低层级的标签类为lbl3的子标签类lbl1、lbl2。

可选地,在本公开的另一种实施例中,所述步骤103可以包括子步骤a1至a2:

子步骤a1,对于其中任意两个所述标签类,计算两个所述标签类对应的相同归属方的数目与两个所述标签类对应的归属方总数的比值。

例如,标签类lbl1的归属方包括:blg1、blg2、blg3、blg4,标签类lbl2的归属方包括:blg1、blg4、blg5、blg6、blg7,从而标签类lbl1和标签类lbl2对应的相同归属方包括如下2个:blg1、blg4。由于相同归属方为2个,归属方总数为7,从而相同归属方的数目与归属方总数的比值为2/7。

子步骤a2,根据所述比值确定两个所述标签类之间的归属相似度。

具体地,可以将比值直接作为归属相似度,也可以对比值进行线性或非线性转换,只要保持比值和归属相似度之间的正向关系即可,即:比值越大,归属相似度越大;比值越小,归属相似度越小。

本公开的实施例可以根据相同归属方数目与归属方总数的比值准确的确定归属相似度。

可选地,在本公开的另一种实施例中,在步骤105之前,所述方法还包括步骤b1至b2:

步骤b1,对于其中任意两个所述标签类,根据两个所述标签类对应的语义向量确定两个所述标签类之间的语义相似度。

其中,语义向量可以从语义上表述标签类,从而可根据语义向量的相似度确定两个标签类在语义上的相似度,即语义相似度。例如,肥牛卷、牛肉卷两者的语义向量的相似度较高,从而其语义相似度较高。

具体地,语义向量可以通过如下方法生成:神经网络、单词共生矩阵的降维、概率模型、可解释的知识库方法、术语的显式表示单词出现的背景。语义向量的生成已经是很成熟的技术,在此不再赘述。

步骤b2,将所述语义相似度大于或等于预设的语义相似度阈值的两个所述标签类进行合并。

其中,语义相似度阈值可以根据经验设定,本公开的实施例对其不加以限制。

可以理解,语义相似度大于或等于语义相似度阈值的标签类确定为同一标签类,从而将两者合并。具体地,取其中任意一个标签类作为合并之后的标签类。例如,将肥牛卷、牛肉卷合并为一个标签类,可以将肥牛卷作为标签类,而丢弃牛肉卷这个标签类。

本公开的实施例可以将语义相似的标签类进行合并,有助于降低标签体系的冗余。

在实际应用中,可以将归属相似度和语义相似度进行加权运算之后,得到综合相似度,从而将综合相似度大于或等于预设的综合相似度阈值的标签类进行合并。也可以先按照语义相似度进行合并之后再按照归属相似度进行合并,还可以先按照归属相似度进行合并之后再按照语义相似度进行合并。

可选地,在本公开的另一种实施例中,所述步骤b1包括子步骤c:

子步骤c,对于其中任意两个所述标签类,计算两个所述标签类对应的语义向量之间的相似度,得到两个所述标签类之间的语义相似度。

其中,语义向量之间的相似度存在多种计算方式,例如,余弦相似度、基于欧几里得距离的相似度、jaccard系数、基于曼哈顿距离的相似度等。

以基于欧几里得距离的相似度为例进行说明,可以首先通过如下公式计算欧几里得距离d:

其中,i为语义向量的维数,sv1i、sv2i分别为两个标签类对应的语义向量的第i个维度取值。

然后,可以建立语义相似度与距离之间的反向函数,即函数关系为:若距离越大,则语义相似度越小;若距离越小,则语义相似度越大。其中一种典型的语义相似度的计算公式如下:

其中,sim2为语义相似度。

本公开的实施例可以根据语义向量之间的相似度确定标签类之间的语义相似度,提高了标签类合并的准确度。

可选地,在本公开的另一种实施例中,步骤101包括子步骤d1至d2:

子步骤d1,针对所述预设文本集中的每个预设文本,通过第一正则匹配策略从所述预设文本中提取候选标签。

其中,第一正则匹配策略可以为按照一定经验确定的正则公式。例如,喜欢.*?家的[是]?(.*?)%s?$。本公开的实施例可以将其与预设文本进行匹配,并将匹配得到的词作为候选标签,若预设文本为“喜欢aaa家的lv手提包”,从而可以采用第一正则匹配策略匹配到候选标签:“lv手提包”。

可以理解,可以设置多个第一正则匹配策略,从而匹配不同类型的词作为候选标签,以扩大标签体系的覆盖面。

子步骤d2,将所述候选标签和预设标签集合并为标签信息。

其中,预设标签集合可以为通过其余方式确定的标签集合,例如,手动创建的标签集合,或,其余机器模型构建的标签集合。

本公开的实施例可以通过半监督的方式提取标签信息,即:将从预设文本中提取的候选标签和其余方式确定的预设标签集合合并为标签信息,从而实现标签信息的扩展,有助于扩大标签体系的覆盖面以及提高标签信息的多样化。

可选地,在本公开的另一种实施例中,在步骤105之前,所述方法还包括步骤e1至e3:

步骤e1,从预设文本集中确定包含所述候选标签的预设文本得到扩展文本。

具体地,首先将预设文本集中的每个预设文本进行分词处理得到至少一个分词;然后,将每个分词与候选标签进行匹配;最后,将匹配成功的预设文本作为扩展文本,丢弃匹配失败的预设文本。

步骤e2,根据所述扩展文本中所述候选标签之外的文本信息构建第二正则匹配策略。

可以理解,候选标签之外的文本信息和候选标签构成了完整的扩展文本,例如,若候选标签为“lv手提包”,扩展文本为“赞aaa家的lv手提包”,或“爱aaa家的lv手提包”,则候选标签之外的文本信息为“赞aaa家的”或“爱aaa家的”,从而可以构建得到如下第二正则匹配策略:赞.*?家的[是]?(.*?)%s?$,或,爱.*?家的[是]?(.*?)%s?$。

步骤e3,根据所述第二正则匹配策略从所述预设文本集中提取标签,并添加至所述候选标签中。

具体地,针对预设文本集中的每个预设文本,将其与第二正则匹配策略进行匹配,将匹配得到的结果作为标签添加到候选标签中。

本公开的实施例可以根据预设的第一正则匹配策略挖掘得到一种或多种第二正则匹配策略,采用多种匹配策略可以提取更多的候选标签,有助于扩大标签体系的覆盖面。

可选地,在本公开的另一种实施例中,在步骤105之前,所述方法还包括步骤f1至f2:

步骤f1,通过所述预设文本与对应的所述候选标签对标签预测模型进行训练。

其中,标签预测模型可以为机器学习模型,例如,神经网络模型、逻辑回归模型等。本公开的实施例对机器学习模型的具体类型不加以限制。

具体地,首先,将预设文本转换为词向量;然后,将预设文本的词向量输入至初始的标签预测模型,预测得到预测标签;最后,根据预测标签和候选标签确定损失值,若损失值大于预设损失值阈值,则根据损失值相对于模型参数的梯度调整模型参数,使得下一次迭代的损失值更小;若损失值小于或等于预设损失值阈值,则结束训练,此时模型的参数最优,可以准确的预测候选标签,从而将参数最优的当前模型作为训练得到的标签预测模型。

需要说明的是,在实际应用中,还可以将其余方法确定的候选标签和文本,作为标签预测模型的训练样本。

步骤f2,采用训练得到的标签预测模型从预设文本集中提取标签,并添加至所述候选标签中。

具体地,可以将预设文本集中的每个预设文本输入至训练好的标签预测模型,其可以预测得到该预设文本的标签。

本公开的实施例可以根据预先训练得到的标签预测模型对候选标签进行扩展,有助于进一步增多候选标签的数量,扩大标签体系的覆盖面。

可选地,在本公开的另一种实施例中,在步骤105之前,所述方法还包括步骤g1至g3:

步骤g1,统计所述候选标签在预设文本集中的出现频率。

其中,出现频率可以为候选标签在预设文本集中的出现次数与预设文本集中出现的所有候选标签的数目的比值。

步骤g2,将所述出现频率输入至预先训练得到的质量预测模型,得到所述候选标签的质量得分。

其中,质量预测模型可以预先通过标注有样本质量得分、样本出现频率的标签样本训练得到,在训练过程中模型预测样本出现频率对应的质量得分,并根据预测的质量得分和样本质量得分确定损失值,若损失值大于预设损失值阈值,从而根据损失值相对模型参数的梯度调整模型的参数,使得下一次迭代得到的损失值更小,直至损失值小于或等于预设损失值阈值,停止训练,此时模型的参数最优,模型可以准确的预测候选标签的得分,从而可以将参数最优的当前模型作为质量预测模型。

步骤g3,滤除所述质量得分小于预设质量阈值的候选标签。

其中,质量阈值可以根据经验和要求预先设定,本公开的实施例对其不加以限制。

本公开的实施例可以将质量得分较差的标签滤除,将质量得分较高的标签作为候选标签,构建标签体系,可以有助于保证标签体系的整体质量。

需要说明的是,步骤g1至g3可以对前述子步骤d1、步骤e3、步骤f2三者中任意一个步骤生成的候选标签进行过滤。

综上所述,本公开的实施例提供了一种基于文本的标签体系构建方法,所述方法包括:从预设文本集中提取标签信息;基于所述标签信息之间包含的相同关键字以及所述相同关键字的数目,对所述标签信息进行不同层级的聚类,得到多个标签类;对于其中任意两个所述标签类,根据两个所述标签类对应的相同归属方确定两个所述标签类之间的归属相似度;将所述归属相似度大于或等于预设的归属相似度阈值的两个所述标签类进行合并;根据合并之后的标签类构建标签体系。可以构建具有层级的标签体系,使得标签对对象的描述准确度较高。

此外,还可以通过标签预测模型提取更多的候选标签,有助于扩大标签体系的覆盖面;还可以基于预设的匹配策略挖掘出更多的匹配策略,以提取更多的候选标签,有助于进一步扩大标签体系的覆盖面;还可以将质量得分较差的标签滤除,将质量得分较高的标签作为候选标签并构建标签体系,有助于保证标签体系的整体质量;还可以通过半监督的方式提取标签信息,有助于扩大标签体系的覆盖面以及提高标签信息的多样化;还可以根据相同归属方的数目占比准确的确定归属相似度,以对冗余标签进行过滤,有助于降低标签体系的冗余;还可以从语义向量的相似度上确定语义相似度,以对语义相似的标签类进行过滤,有助于降低标签体系的冗余。

实施例二

参照图2,其示出了在本公开的一种实施例中的基于文本的标签体系构建装置的结构图,具体如下:

标签信息提取模块201,用于从预设文本集中提取标签信息。

其中,预设文本集中包括多个预设文本,每个预设文本可以为简单的句子。在实际应用中,预设文本可以从搜索平台、社交平台等的用户生成内容(ugc,usergeneratedcontent)中获取,而这些ugc通常作为历史行为记录被存储。例如,ugc可以为历史评论记录,从而可以从历史评论记录中提取用户输入的评论文本作为预设文本。此外,预设文本还可以从其它的文本数据中提取,例如,从商品说明的文本数据中提取预设文本。本公开的实施例对预设文本的来源不加以限制。

在提取标签信息的一种具体实施方式中,可以将预设文本进行分词,从而可以将所有分词作为标签信息。此外,为了保证标签信息的准确度,也可以从分词中按照一定规则选取部分分词作为标签信息,例如,将分词中的名词、动词等作为标签信息,而将例如副词等其余分词滤除掉。

标签类生成模块202,用于基于所述标签信息之间包含的相同关键字以及所述相同关键字的数目,对所述标签信息进行不同层级的聚类,得到多个标签类。

在聚类得到标签类的一种具体实施方式中,相同关键字可以作为标签类,若两个标签信息仅包含一个相同关键字,则该两个标签信息仅能进行一次聚类,该相同关键字作为聚类之后的标签类;若两个标签信息包括两个或两个以上的相同关键字,则该两个标签信息可以进行多次聚类,聚类次数与相同关键字的数目相关。例如,“重庆麻辣火锅”和“重庆香辣火锅”包括两个相同关键字:重庆、火锅,从而可以聚类到标签类“重庆火锅”下,而重庆火锅还可以进一步聚类到标签类“火锅”或“重庆”下。

在本公开的实施例中,可以从相同关键字的最多数目开始,逐步递减包含的相同关键字的数目,从而实现不同的等级的聚类。例如,首先,将“重庆麻辣火锅”和“重庆香辣火锅”聚类到“重庆火锅”,再将“重庆火锅”和“成都火锅”聚类到“火锅”,得到两个层级的标签类“重庆火锅”和“火锅”。

归属相似度确定模块203,用于对于其中任意两个所述标签类,根据两个所述标签类对应的相同归属方确定两个所述标签类之间的归属相似度。

其中,归属方可以理解为该标签类的提供方。例如,若标签类是针对商品的标签类,则标签类可以从用户对商家、商品的评论信息、以及商品信息中提取,从而该商家为该标签类的归属方。当然,同一标签类可以对应不同归属方。

可以理解,对于任意两个标签类,若标签类对应的相同归属方越多,则归属相似度越大;若标签类对应的相同归属方越少,则归属相似度越小。从而可以建立上述正向关系的函数确定归属相似度,相同归属方的数目作为输入量,归属相似度作为输出量。

第一标签类合并模块204,用于将所述归属相似度大于或等于预设的归属相似度阈值的两个所述标签类进行合并。

其中,归属相似度阈值可以根据经验设定,本公开的实施例对其不加以限制。

可以理解,将归属相似度大于归属相似度阈值的两个标签类确定为同一标签类,从而可以将两者合并。其中合并可为:取其中一个标签类作为合并之后的标签类,而另一个标签类被丢弃。而将归属相似度小于归属相似度阈值的两个标签类确定为不同标签类,不能将两者合并。

本公开的实施例可以根据标签类的归属方确定标签类之间的归属相似度,并对标签类进行合并,有助于降低标签体系的冗余。

标签体系构建模块205,用于根据合并之后的标签类构建标签体系。

可以理解,由于聚类之后的标签类是具有父子关系的,从而构建的标签体系也是分层级的。具体地,可以将标签类按照父标签类和子标签类之间的关系构建标签体系。例如,若合并之后的标签类包括:lbl1、lbl2、lbl3、lbl4、lbl5,其中,lbl1、lbl2是lbl3的子标签类,lbl3和lbl4是lbl5的子标签类,从而构建的标签体系中层级最高的标签类为lbl5,中间层级的标签类为lbl5的子标签类lbl3和lbl4,最低层级的标签类为lbl3的子标签类lbl1、lbl2。

可选地,基于图2,在图3示出的本公开的另一种实施例中,所述归属相似度确定模块203包括归属方占比计算子模块2031、归属相似度确定子模块2032。

归属方占比计算子模块2031,用于对于其中任意两个所述标签类,计算两个所述标签类对应的相同归属方的数目与两个所述标签类对应的归属方总数的比值。

例如,标签类lbl1的归属方包括:blg1、blg2、blg3、blg4,标签类lbl2的归属方包括:blg1、blg4、blg5、blg6、blg7,从而标签类lbl1和标签类lbl2对应的相同归属方包括如下2个:blg1、blg4。由于相同归属方为2个,归属方总数为7,从而相同归属方的数目与归属方总数的比值为2/7。

归属相似度确定子模块2032,用于根据所述比值确定两个所述标签类之间的归属相似度。

具体地,可以将比值直接作为归属相似度,也可以对比值进行线性或非线性转换,只要保持比值和归属相似度之间的正向关系即可,即:比值越大,归属相似度越大;比值越小,归属相似度越小。

本公开的实施例可以根据相同归属方数目与归属方总数的比值准确的确定归属相似度。

可选地,基于图2,在图4示出的本公开的另一种实施例中,所述装置还包括语义相似度确定模块206、第二标签类合并模块207。

语义相似度确定模块206,用于对于其中任意两个所述标签类,根据两个所述标签类对应的语义向量确定两个所述标签类之间的语义相似度。

其中,语义向量可以从语义上表述标签类,从而可根据语义向量的相似度确定两个标签类在语义上的相似度,即语义相似度。例如,肥牛卷、牛肉卷两者的语义向量的相似度较高,从而其语义相似度较高。

具体地,语义向量可以通过如下方法生成:神经网络、单词共生矩阵的降维、概率模型、可解释的知识库方法、术语的显式表示单词出现的背景。语义向量的生成已经是很成熟的技术,在此不再赘述。

第二标签类合并模块207,用于将所述语义相似度大于或等于预设的语义相似度阈值的两个所述标签类进行合并。

其中,语义相似度阈值可以根据经验设定,本公开的实施例对其不加以限制。

可以理解,语义相似度大于或等于语义相似度阈值的标签类确定为同一标签类,从而将两者合并。具体地,取其中任意一个一个标签类作为合并之后的标签类。例如,将肥牛卷、牛肉卷合并为一个标签类,可以将肥牛卷作为标签类,而丢弃牛肉卷这个标签类。

本公开的实施例可以将语义相似的标签类进行合并,有助于降低标签体系的冗余。

在实际应用中,可以将归属相似度和语义相似度进行加权运算之后,得到综合相似度,从而将综合相似度大于或等于预设的综合相似度阈值的标签类进行合并。也可以先按照语义相似度进行合并之后再按照归属相似度进行合并,还可以先按照归属相似度进行合并之后再按照语义相似度进行合并。

可选地,在本公开的另一种实施例中,所述语义相似度确定模块206还用于:对于其中任意两个所述标签类,计算两个所述标签类对应的语义向量之间的相似度,得到两个所述标签类之间的语义相似度。

其中,语义向量之间的相似度存在多种计算方式,例如,余弦相似度、基于欧几里得距离的相似度、jaccard系数、基于曼哈顿距离的相似度等。

以基于欧几里得距离的相似度为例进行说明,可以首先通过如下公式计算欧几里得距离d:

其中,i为语义向量的维数,sv1i、sv2i分别为两个标签类对应的语义向量的第i个维度取值。

然后,可以建立语义相似度与距离之间的反向函数,即函数关系为:若距离越大,则语义相似度越小;若距离越小,则语义相似度越大。其中一种典型的语义相似度的计算公式如下:

其中,sim2为语义相似度。

本公开的实施例可以根据语义向量之间的相似度确定标签类之间的语义相似度,提高了标签类合并的准确度。

可选地,基于图2,在图5示出的本公开的另一种实施例中,所述标签信息提取模块201包括第一候选标签提取子模块2011、标签合并子模块2012。

第一候选标签提取子模块2011,用于针对所述预设文本集中的每个预设文本,通过第一正则匹配策略从所述预设文本中提取候选标签。

其中,第一正则匹配策略可以为按照一定经验确定的正则公式。例如,喜欢.*?家的[是]?(.*?)%s?$。本公开的实施例可以将其与预设文本进行匹配,并将匹配得到的词作为候选标签,若预设文本为“喜欢aaa家的lv手提包”,从而可以采用第一正则匹配策略匹配到候选标签:“lv手提包”。

可以理解,可以设置多个第一正则匹配策略,从而匹配不同类型的词作为候选标签,以扩大标签体系的覆盖面。

标签合并子模块2012,用于将所述候选标签和预设标签集合并为标签信息。

其中,预设标签集合可以为通过其余方式确定的标签集合,例如,手动创建的标签集合,或,其余机器模型构建的标签集合。

本公开的实施例可以通过半监督的方式提取标签信息,即:将从预设文本中提取的候选标签和其余方式确定的预设标签集合合并为标签信息,从而实现标签信息的扩展,有助于扩大标签体系的覆盖面以及提高标签信息的多样化。

可选地,基于图5,在图6所示的本公开的另一种实施例中,所述标签信息提取模块201还包括扩展文本获取子模块2013、第二正则匹配策略构建子模块2014、第二候选标签提取子模块2015。

扩展文本获取子模块2013,用于从预设文本集中确定包含所述候选标签的预设文本得到扩展文本。

具体地,首先将预设文本集中的每个预设文本进行分词处理得到至少一个分词;然后,将每个分词与候选标签进行匹配;最后,将匹配成功的预设文本作为扩展文本,丢弃匹配失败的预设文本。

第二正则匹配策略构建子模块2014,用于根据所述扩展文本中所述候选标签之外的文本信息构建第二正则匹配策略。

可以理解,候选标签之外的文本信息和候选标签构成了完整的扩展文本,例如,若候选标签为“lv手提包”,扩展文本为“赞aaa家的lv手提包”,或“爱aaa家的lv手提包”,则候选标签之外的文本信息为“赞aaa家的”或“爱aaa家的”,从而可以构建得到如下第二正则匹配策略:赞.*?家的[是]?(.*?)%s?$,或,爱.*?家的[是]?(.*?)%s?$。

第二候选标签提取子模块2015,用于根据所述第二正则匹配策略从所述预设文本集中提取标签,并添加至所述候选标签中。

具体地,针对预设文本集中的每个预设文本,将其与第二正则匹配策略进行匹配,将匹配得到的结果作为标签添加到候选标签中。

本公开的实施例可以根据预设的第一正则匹配策略挖掘得到一种或多种第二正则匹配策略,采用多种匹配策略可以提取更多的候选标签,有助于扩大标签体系的覆盖面。

可选地,基于图5,在图7示出的本公开的另一种实施例中,所述标签信息提取模块201还包括模型训练子模块2016、第三候选标签提取子模块2017。

模型训练子模块2016,用于通过所述预设文本与对应的所述候选标签对标签预测模型进行训练。

其中,标签预测模型可以为机器学习模型,例如,神经网络模型、逻辑回归模型等。本公开的实施例对机器学习模型的具体类型不加以限制。

具体地,首先,将预设文本转换为词向量;然后,将预设文本的词向量输入至初始的标签预测模型,预测得到预测标签;最后,根据预测标签和候选标签确定损失值,若损失值大于预设损失值阈值,则根据损失值相对于模型参数的梯度调整模型参数,使得下一次迭代的损失值更小;若损失值小于或等于预设损失值阈值,则结束训练,此时模型的参数最优,可以准确的预测候选标签,从而将参数最优的当前模型作为训练得到的标签预测模型。

需要说明的是,在实际应用中,还可以将其余方法确定的候选标签和文本,作为标签预测模型的训练样本。

第三候选标签提取子模块2017,用于采用训练得到的标签预测模型从预设文本集中提取标签,并添加至所述候选标签中。

具体地,可以将预设文本集中的每个预设文本输入至训练好的标签预测模型,其可以预测得到该预设文本的标签。

本公开的实施例可以根据预先训练得到的标签预测模型对候选标签进行扩展,有助于进一步增多候选标签的数量,扩大标签体系的覆盖面。

可选地,基于图5,在图8示出的本公开的另一种实施例中,所述标签信息提取模块201还包括出现频率统计子模块2018、质量得分预测子模块2019、候选标签滤除子模块2010。

出现频率统计子模块2018,用于统计所述候选标签在预设文本集中的出现频率。

其中,出现频率可以为候选标签在预设文本集中的出现次数与预设文本集中出现的所有候选标签的数目的比值。

质量得分预测子模块2019,用于将所述出现频率输入至预先训练得到的质量预测模型,得到所述候选标签的质量得分。

其中,质量预测模型可以预先通过标注有样本质量得分、样本出现频率的标签样本训练得到,在训练过程中模型预测样本出现频率对应的质量得分,并根据预测的质量得分和样本质量得分确定损失值,若损失值大于预设损失值阈值,从而根据损失值相对模型参数的梯度调整模型的参数,使得下一次迭代得到的损失值更小,直至损失值小于或等于预设损失值阈值,停止训练,此时模型的参数最优,模型可以准确的预测候选标签的得分,从而可以将参数最优的当前模型作为质量预测模型。

候选标签滤除子模块2010,用于滤除所述质量得分小于预设质量阈值的候选标签。

其中,质量阈值可以根据经验和要求预先设定,本公开的实施例对其不加以限制。

本公开的实施例可以将质量得分较差的标签滤除,将质量得分较高的标签作为候选标签,构建标签体系,可以有助于保证标签体系的整体质量。

需要说明的是,出现频率统计子模块2018、质量得分预测子模块2019、候选标签滤除子模块2010可以对前述第一候选标签提取子模块2011、第二候选标签提取子模块2015、第三候选标签提取子模块2017三者中任意一个模块生成的候选标签进行过滤。

综上所述,本公开的实施例提供了一种基于文本的标签体系构建装置,包括:标签信息提取模块,用于从预设文本集中提取标签信息;标签类生成模块,用于基于所述标签信息之间包含的相同关键字以及所述相同关键字的数目,对所述标签信息进行不同层级的聚类,得到多个标签类;归属相似度确定模块,用于对于其中任意两个所述标签类,根据两个所述标签类对应的相同归属方确定两个所述标签类之间的归属相似度;第一标签类合并模块,用于将所述归属相似度大于或等于预设的归属相似度阈值的两个所述标签类进行合并;标签体系构建模块,用于根据合并之后的标签类构建标签体系。可以构建具有层级的标签体系,使得标签对对象的描述准确度较高。

此外,还可以通过标签预测模型提取更多的候选标签,有助于扩大标签体系的覆盖面;还可以基于预设的匹配策略挖掘出更多的匹配策略,以提取更多的候选标签,有助于进一步扩大标签体系的覆盖面;还可以将质量得分较差的标签滤除,将质量得分较高的标签作为候选标签并构建标签体系,有助于保证标签体系的整体质量;还可以通过半监督的方式提取标签信息,有助于扩大标签体系的覆盖面以及提高标签信息的多样化;还可以根据相同归属方的数目占比准确的确定归属相似度,以对冗余标签进行过滤,有助于降低标签体系的冗余;还可以从语义向量的相似度上确定语义相似度,以对语义相似的标签类进行过滤,有助于降低标签体系的冗余。

参照图9,本公开的实施例还提供了一种电子设备,包括:处理器301、存储器302以及存储在所述存储器302上并可在所述处理器上运行的计算机程序3021,所述处理器301执行所述程序时实现前述实施例的基于文本的标签体系构建方法。

本公开的实施例还提供了一种可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行前述实施例的基于文本的标签体系构建方法。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本公开的实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本公开的实施例的内容,并且上面对特定语言所做的描述是为了披露本公开的实施例的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本公开的实施例的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本公开的实施例的示例性实施例的描述中,本公开的实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本公开的实施例要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本公开的实施例的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

本公开的实施例的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(dsp)来实现根据本公开的实施例的基于文本的标签体系构建设备中的一些或者全部部件的一些或者全部功能。本公开的实施例还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序。这样的实现本公开的实施例的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

应该注意的是上述实施例对本公开的实施例进行说明而不是对本公开的实施例进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本公开的实施例可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

以上所述仅为本公开的实施例的较佳实施例而已,并不用以限制本公开的实施例,凡在本公开的实施例的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本公开的实施例的保护范围之内。

以上所述,仅为本公开的实施例的具体实施方式,但本公开的实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开的实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的实施例的保护范围之内。因此,本公开的实施例的保护范围应以权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1