将语义文本数据与标签匹配的方法、装置及存储介质与流程

文档序号:18214829发布日期:2019-07-19 22:33阅读:369来源:国知局
将语义文本数据与标签匹配的方法、装置及存储介质与流程

本发明涉及一种数据处理方法,具体涉及将语义文本数据与标签匹配的方法、装置以及一种储存指令的计算机可读存储介质。



背景技术:

随着移动互联网的发展,人们越来越倾向在移动设备上表达观点或者寻求相关的咨询。例如,通过app的自助服务进行留言咨询、使用微博等社交网络表达想法等。在这一背景下,将会产生大量的非结构化的短文本数据,而这些数据中往往蕴含了用户的核心诉求或者对产品和服务的优化建议。

对于这些价值巨大的数据,相关部门在日常的分析工作中,往往首先进行文本分类,传统做法主要通过人工标记,效率低下。因此,提升这类数据的分析与挖掘能力,特别是自动挖掘水平,会显著降低日常运营成本。此外,目前移动网络上用户的评论数据文本短促、口语化严重、信息价值零散、语言风格不规范、不同性格的用户表达方式各异,这些都给传统的语义分析特征提取带来很大的挑战。

传统的短文本分类方法主要基于大量的用户标记样本语料训练分类模型,其主要特征包括:由用户分析样本语料库,人工定义一个固定的样本分类标签体系。基于定义的业务分类标签体系,人工逐条筛查样本语料库中的每一个样本,给样本打上合适的标签,构建分类模型训练的样本数据集。针对构建的样本数据集训练分类模型。基于向量空间模型、“频繁词集抽取”或词频-逆向文件词频(tf-idf)的方法提取短文本的特征,再基于提取的文本特征利用分类算法,譬如svm进行训练,形成最终的分类模型。



技术实现要素:

为了将诸如用户评论的语义文本数据进行分类,本发明提出了一种将语义文本数据与标签匹配的方法、装置以及一种储存指令的计算机可读存储介质。

根据本发明的一方面,提供一种将语义文本数据与标签匹配的方法,包括:将多个语义文本数据进行预处理,以获得包括多个语义独立成员的原始语料数据;根据多个所述语义独立成员在自然文本中的重现关系确定多个所述语义独立成员中任意两者之间的关联度,并根据所述任意两者之间的关联度确定对应于该关联的主题,进而确定所述多个语义文本数据与所述主题的映射概率关系;选取对应于该关联的多个语义独立成员中的一者作为所述主题的标签,根据已经确定的所述多个语义文本数据与所述主题的映射概率关系,将所述多个语义文本数据映射到所述标签;以及将已经确定的所述多个语义文本数据与所述标签的映射关系作为监督材料,并且根据所述监督材料将未经映射的语义文本数据匹配所述标签。

可选地,所述预处理包括将所述多个语义文本数据进行分词、去除停用词、去除非中文字符、去除数字符号以及进行词语纠错中的一者或多者。

可选地,所述预处理包括只抽取包含否定语义和/或疑问语义的所述多个语义文本数据。

可选地,所述在自然文本中的重现关系为在所述原始语料数据中和/或在自然文本语料库中的上下文重现关联程度。

可选地,所述确定多个所述语义独立成员中任意两者之间的关联度包括:将所述原始语料数据中所有语义独立成员进行索引;确定所述语义独立成员在所述原始语料数据中的词向量,并确定所述语义独立成员任意两者之间的相似性;根据所述索引以及所述相似性构建语义独立成员对的相似性矩阵。

可选地,所述根据所述任意两者之间的关联度确定对应于该关联的主题包括:对所述相似性矩阵进行吉布斯迭代采样以获得所述原始语料数据与所述主题的映射关系以及所述主题与所述语义独立成员对的映射关系,进而确定所述多个语义文本数据与所述主题的映射概率关系以及所述主题与多个所述语义独立成员的映射概率关系。

可选地,所述选取对应于该关联的多个语义独立成员中的一者作为所述主题的标签包括:将所述多个语义文本数据进行聚类,以及根据所述多个语义文本数据与所述主题的映射关系确定聚类后的所述多个语义文本数据的主题;根据所述主题与多个所述语义独立成员的映射概率关系将聚类后的所述多个语义文本数据的主题映射为语义独立成员,以作为对应于聚类后的主题的所述标签。

可选地,所述根据所述多个语义文本数据与所述主题的映射概率关系确定聚类后的所述多个语义文本数据的主题包括:确定所述多个语义文本数据中的每一个的最大概率主题;确定每个聚类中的所述最大概率主题的数目;将聚类中数目最大的所述最大概率主题作为聚类后的主题。

可选地,根据所述主题与多个所述语义独立成员的映射概率关系确定对应于聚类后的主题的概率值最高的预定数量的语义独立成员以作为所述聚类后的主题的标签。

可选地,若不同的聚类后的主题的标签包括相同的标签,则比较所述相同的标签在所述不同的聚类后的主题中的概率值,保留概率值最大的标签作为所述概率值最大的标签所属的所述聚类后的主题的标签;对于除了概率值最大的标签所属的所述聚类后的主题,使用概率值比所述相同的标签概率值更低的语义独立成员作为所述聚类后的主题的标签。

根据本发明的另一方面,提供一种将语义文本数据与标签匹配的装置,其特征在于,所述装置包括:预处理单元,其用于将多个语义文本数据进行预处理,以获得包括多个语义独立成员的原始语料数据;主题模型单元,其用于根据多个所述语义独立成员在自然文本中的重现关系确定多个所述语义独立成员中任意两者之间的关联度,并根据所述任意两者之间的关联度确定对应于该关联的主题,进而确定所述多个语义文本数据与所述主题的映射概率关系;标签确定单元,其用于选取对应于该关联的多个语义独立成员中的一者作为所述主题的标签,根据已经确定的所述多个语义文本数据与所述主题的映射概率关系,将所述多个语义文本数据映射到所述标签;以及标签匹配单元,其用于将已经确定的所述多个语义文本数据与所述标签的映射关系作为监督材料,并且根据所述监督材料将未经映射的语义文本数据匹配所述标签。

可选地,所述预处理包括将所述多个语义文本数据进行分词、去除停用词、去除非中文字符、去除数字符号以及进行词语纠错中的一者或多者。

可选地,所述预处理包括只抽取包含否定语义和/或疑问语义的所述多个语义文本数据。

可选地,所述在自然文本中的重现关系为在所述原始语料数据中和/或在自然文本语料库中的上下文重现关联程度。

可选地,所述主题模型单元用于确定多个所述语义独立成员中任意两者之间的关联度,包括:将所述原始语料数据中所有语义独立成员进行索引;确定所述语义独立成员在所述原始语料数据中的词向量,并确定所述语义独立成员任意两者之间的相似性;根据所述索引以及所述相似性构建语义独立成员对的相似性矩阵。

可选地,所述主题模型单元用于根据所述任意两者之间的关联度确定对应于该关联的主题,包括:对所述相似性矩阵进行吉布斯迭代采样以获得所述原始语料数据与所述主题的映射关系以及所述主题与所述语义独立成员对的映射关系,进而确定所述多个语义文本数据与所述主题的映射概率关系以及所述主题与多个所述语义独立成员的映射概率关系。

可选地,所述标签确定单元用于选取对应于该关联的多个语义独立成员中的一者作为所述主题的标签,包括:将所述多个语义文本数据进行聚类,以及根据所述多个语义文本数据与所述主题的映射关系确定聚类后的所述多个语义文本数据的主题;根据所述主题与多个所述语义独立成员的映射概率关系将聚类后的所述多个语义文本数据的主题映射为语义独立成员,以作为对应于聚类后的主题的所述标签。

可选地,所述标签确定单元用于根据所述多个语义文本数据与所述主题的映射概率关系确定聚类后的所述多个语义文本数据的主题,包括:确定所述多个语义文本数据中的每一个的最大概率主题;确定每个聚类中的所述最大概率主题的数目;将聚类中数目最大的所述最大概率主题作为聚类后的主题。

可选地,所述标签确定单元用于:根据所述主题与多个所述语义独立成员的映射概率关系确定对应于聚类后的主题的概率值最高的预定数量的语义独立成员以作为所述聚类后的主题的标签。

可选地,若不同的聚类后的主题的标签包括相同的标签,则比较所述相同的标签在所述不同的聚类后的主题中的概率值,保留概率值最大的标签作为所述概率值最大的标签所属的所述聚类后的主题的标签;对于除了概率值最大的标签所属的所述聚类后的主题,使用概率值比所述相同的标签概率值更低的语义独立成员作为所述聚类后的主题的标签。

根据本发明的其他方面,提供一种储存指令的计算机可读存储介质,当所述指令当所述指令由处理器执行时,将所述处理器配置为执行本文中所述的方法。

附图说明

从结合附图的以下详细说明中,将会使本发明的上述和其他目的及优点更加完整清楚,其中,相同或相似的要素采用相同的标号表示。

图1示出了根据本发明的一个实施例的将语义文本数据与标签匹配的方法的流程图。

图2示出了根据本发明的一个实施例的预处理的流程图。

图3示出了根据本发明的一个实施例的构造主题模型的流程图。

图4示出了根据本发明的一个实施例的分类标签学习的流程图。

图5示出了根据本发明的一个实施例的分类模型训练的流程图。

图6示出了根据本发明的一个实施例的k-means聚类的示意图。

图7示出了根据本发明的一个实施例的svm分类器各个类别标签预测结果。

具体实施方式

出于简洁和说明性目的,本文主要参考其示范实施例来描述本发明的原理。但是,本领域技术人员将容易地认识到相同的原理可等效地应用于所有类型的用于视觉感知系统的性能测试系统和/或性能测试方法,并且可以在其中实施这些相同或相似的原理,任何此类变化不背离本专利申请的真实精神和范围。

实施例一

参见图1,其示出了根据本发明的一个实施例的将语义文本数据与标签匹配的方法的流程图。在步骤102中,对用户评论数据进行预处理。预处理的目的在于对诸如用户评论等的语义文本数据进行加工,以获得语义独立的成员(诸如英文单词、中文词汇等语素)和原始语料数据。每个语义独立的成员是进行语义分析的独立单元,特别地,语义独立的成员还可以为进行语义分析的最小单元。

在图2所述的实施例中,为了获得语义独立成员,可以通过jieba等中文分词工具包实现分词(步骤202)。然后对分词后的独立成员进行去除停用词、去除非中文字符、去除数字符号以及进行词语纠错等操作(步骤204)。其次,作为可选的预处理,还可以抽取包含用户关键意图的语句(图中未示出)。例如,在作为用户评论内容的数据平台用户反馈信息中,可只抽取包含否定词或者疑问词的句子,作为原样本的核心句并进一步获得语义独立成员、原始语料数据,若难以抽取可直接跳过该步。最后,在步骤206中,利用多个语义独立成员形成原始语料数据。

在步骤104中,确定主题模型。根据语素在自然文本中的重现关系确定任意两个语素之间的关联度,并根据关联度确定对应于该关联的主题,进而确定语素与主题的映射概率关系。重现关系体现了语素之间的语义关联程度。例如,在一句话(或者一段文字等)中,“支付”与上下文语义的关联性达到某个特定值x,“刷卡”和上下文语义的关联性达到某个特定值y,而x≈y,那么可以认为“支付”与“刷卡”存在较强的语义关联度。其中,“支付”与上下文语义的关联性可以为诸如统计得出的,因而“支付”与上下文语义的关联性在统计中是基于其在自然文本的重现确定。自然文本可以为用于考察、处理的目标文本(本文中的原始语料数据),也可以是任何有意义的自然文本库,诸如百度百科、维基百科、搜狗互联网语料等自然文本语料库。

具体地,步骤104可以以图3中示出的实施例实现。在步骤402中训练词向量。针对预处理过的语料,通过gensim工具包实现训练词向量,用于后续的短文本建模,若采集到的数据较少,词向量训练效果一般,可考虑引入搜狗互联网语料等大型中文语料库作为补充,或者可直接采用google开源的中文向量模型。词向量可以弥补tf-idf无法衡量词之间的语义相似性的缺陷。

在步骤404中,创建词对相似性矩阵。建立文本中不同词汇的索引,索引是作为词汇的标号存在的。

在步骤406中,可以先基于中国餐馆过程(crp)生成词对-主题的概率分布矩阵。然后根据词对集合统计出每个文档中出现的词对的个数,用一个1×n维的矩阵存储所有词对出现在文档中的个数。词对是作为基本语素的任意两个词汇的配对。最后创建词对相似矩阵sim,以用于后续处理。

在步骤408中,利用sim矩阵,进行吉布斯迭代采样,通过词对主题模型中的吉布斯采样获得整体语料库-主题矩阵和主题-词对矩阵,建立文本模型。具体流程如下:

首先,设置词对主题模型的初始化参数:狄利克雷分布的先验参数α=0.5,β=0.1,迭代最大次数iteration=100,保存中间结果的步长savestep=10等。

其次,循环遍历语料库的词对集合,在每次采样过程中考虑到词对间的相似性,分配词对的主题,其中,词对相似性主要基于中国餐馆过程来生成:

其中di表示主题i已有的词对数,n-1表示在当前词对之前已经具有的词对总数,d0为初始参数。p(dn=k|d-n)表示词对dn的分配给主题k概率。

再次,根据词对的主题分配,更新语料库-主题矩阵和主题-词对矩阵,再判断迭代次数是否达到savestep的整数倍,如果没有达到,继续遍历语料库的词对集合。

最后,保存语料库-主题矩阵与主题-词对矩阵,判断迭代次数是否达到最大迭代次数(100次),如果没有达到,继续遍历语料库的词对集合;保存最终生成的语料库-主题矩阵与主题-词对矩阵。

回到图1,在步骤106中进行分类标签的学习。具体地,如图4所示出的,通过推理生成用户评论-主题概率分布矩阵(步骤604)以及主题-词概率分布矩阵(步骤602)。利用短文本主题矩阵来表示短文本,即使用主题的概率分布来表示短文本特征:

di=(p(z0|di),p(z1|di),…,p(zk-1|di)

其中,p(zi|di)表示短文本di中主题zi的概率,k为整个短文本语料上主题的个数。

在步骤606中,可以采用诸如k-means聚类等方法对整个语料库进行聚类,聚类算法中采用js距离来测量文本的相似度:

其中

在步骤608中,遍历聚簇中的所有用户评论语料,根据用户评论-主题矩阵,找到每个评论数据的最大概率主题,并统计不同最大概率主题的个数,提取个数最大的主题以聚簇主题(步骤610)。在步骤612中,再从该主题-词语的概率矩阵中,挑选概率值最高的前n个词语作为该聚簇的标签信息。针对每个聚簇的标签关键词进行验重,若不同聚簇又关键词重复,在各自聚簇对应的主题下重新选取关键词,看该相同的关键词在各自主题下的概率值,概率值小的关键词被概率值下一个的词汇或短语替换。

回到图1,在步骤108中进行分类模型的训练。具体地,如图5所示的实施例。在步骤802中,根据步骤106学习得出的分类类别信息,给用户评论语料自动打分类标签,进而获得用户评论与标签的映射关系。在步骤804中,根据聚簇主题后的用户评论得到用户评论语料。在步骤806中,针对每个用户评论语料提取tf-idf以及词向量作为文本的特征。然后,采用svm与双向lstm两种分类算法训练分类模型(步骤808),再通过投票分类器进行投票聚合,构建用户评论分类模型(步骤810)。

实施例二

本实施例主要分析数据平台用户反馈留言,首先基于本发明提出的短文本特征提取方法抽取数据平台用户反馈留言的语义特征信息,然后构建分类模型,实现用户反馈留言的自动分类。数据来源为某月的数据平台app用户反馈留言数据。原始数据主要以文本的形式保存的,具体样例可以参见表1:

表1

数据平台用户反馈留言的自动分类可以诸如按照如下示例进行。

步骤一、反馈留言数据预处理

通过对大量数据分析,用户大多数情况下都会借助否定词或者疑问词来提出遇到的问题,因此为了进一步的提炼关键信息,我们采取以下方法来提取用户反馈留言的否定窗口:

1.1利用常见的中英符号(如全、半角的逗号、句号等)将句子分为若干个短句;

1.2找到第一个否定词或者疑问词所在的短句作为窗口;

1.3设置指定的窗口大小(本文设定的前后步长均是1),提取否定窗口。

步骤二、数据平台用户反馈短文本的特征表示

2.1针对步骤一预处理过的语料,采取google提出的word2vec方法中的skip-gram模型,利用gensim库中的word2vec函数进行训练,其中设定的词向量维度设定为200,skip-gram模型的窗口大小为5。表2示出了示例性的结果。

表2

2.2对比百度百科与专用领域词向量,进行词向量对比:

表3

词向量可以更精准的表达支付领域知识,这对后面的分类提供了更准确的语义信息。

采用吉布斯采样获得整体用户评论语料库-主题矩阵和主题-词对矩阵:其中狄克雷分布的先验参数α=0.5,β=0.1,迭代最大次数为500,保存中间结果的步长为10。

步骤三、数据平台用户反馈留言分类标签的提取

3.1将上述得到的特征矩阵作为输入,利用scikit-learn机器学习工具包进行k-means聚类(图6)。需要注意的是,为了与后续的聚类合并方法配合使用,在这一场景下,我们将初始聚类个数设为60,最终的聚类个数由轮廓系数和s_dbw来共同决定。

3.2遍历聚簇中的文本,根据文本-主题概率分布矩阵找到该文本下的最大主题概率值的主题;统计该聚簇下的各主题所占的比例,找到出现最多次数的主题;在主题-词矩阵中,找到上一步中统计的出现次数最多的主题,然后找到该主题下概率值大小排在前十的词汇或短语作为聚簇描述(如表4、表5所示)。

交易查询类问题

表4

功能咨询类问题

表5

步骤四、数据平台用户留言的自动分类

4.1使用sklearn包进行机器学习算法的分类实验,主要采用svm算法,分类指标准确率,采用5折交叉验证保证结果的稳定性。

分类模型构建过程使用网格搜索(gridsearch)得到了最优svm参数,即参数设置为c=3.276,kernel='rbf',gamma=0.01。图7示出了根据该配置的标签预测结果的示例。

4.2在实际应用场景,譬如数据平台场景,为了提升模型的可用性,可设置分类预测的概率阈值,对于预测概率类别不高的数据,交由人工处理。综合考虑模型准确率与召回率,阈值可以设置0.6。

利用本文提出的app用户评论自动回复方法一方面可以有效地挖掘用户评论等短文本数据中的热点话题类别,掌握用户在使用产品过程中主要咨询热点,另一方面可以实现用户评论的自动分类,能够大大提升app的运营服务效率。

本发明提及的分类标签体系是基于自学习的方法,不需要业务人员人工分析短文本语料库中的所有文本信息,并且后续标签体系的更新与维护也是自动完成的,可以大大较低人工参与的工作量,更易在实际场景中应用落地。本发明的分类训练语料库也是在分类标签过程中产生的,因此不需要对语料库进行人工标记。本发明在分类标签提取过程中,将整个短文本语料合并进行主题建模,有效缓解文本语义稀疏的问题,在主题-词对采样过程中,融合了词对的相似性,因此考虑到文本中不同词对的上下文关联关系,能够提取文本中更广泛的语义特征,语义表达能力更强。在文本分类过程中,每篇短文本的特征包含了tf-idf计算的特征之外也包含了主题模型提取的特征,不仅做到了从统计角度考虑,而且融合了上下文信息的特征。

以上例子主要说明了本公开的将语义文本数据与标签匹配的方法、将语义文本数据与标签匹配的装置以及一种储存指令的计算机可读存储介质。尽管只对其中一些本发明的实施方式进行了描述,但是本领域普通技术人员应当了解,本发明可以在不偏离其主旨与范围内以许多其他的形式实施。因此,所展示的例子与实施方式被视为示意性的而非限制性的,在不脱离如所附各权利要求所定义的本发明精神及范围的情况下,本发明可能涵盖各种的修改与替换。

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