CN112069322A - 文本多标签分析方法、装置、电子设备及存储介质 - Google Patents
文本多标签分析方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN112069322A CN112069322A CN202011251557.4A CN202011251557A CN112069322A CN 112069322 A CN112069322 A CN 112069322A CN 202011251557 A CN202011251557 A CN 202011251557A CN 112069322 A CN112069322 A CN 112069322A
- Authority
- CN
- China
- Prior art keywords
- text
- word
- training
- label
- cluster
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
- G06F18/2155—Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the incorporation of unlabelled data, e.g. multiple instance learning [MIL], semi-supervised techniques using expectation-maximisation [EM] or naïve labelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Abstract
本发明公开一种文本多标签分析方法、装置、电子设备及存储介质,方法包括:获取训练文本数据,所述训练文本数据包括多篇文本,对所述训练文本数据进行分词;使用N‑gram对分词进行建模,形成包含多个词语序列集合的文本集合,作为语料库,所述词语序列集合中包含多个由N个词组成的词语序列;利用所述语料库对LDA模型进行训练,并对训练结果进行评分验证,选取分值高的LDA模型进行持久化,获得持久化的LDA模型;利用持久化的LDA模型提取测试文本数据的主题簇,结合词项半监督方式定义标签,确定所述主题簇的簇标签。本发明将LDA和N‑gram相结合,考虑词语的先后顺序,又兼有LDA快速生成主题聚类的特点,可以准确的获得文本的主题簇,获知文本主题含义。
Description
技术领域
本发明涉及数据处理领域,尤其涉及文本多标签分析方法、装置、电子设备及存储介质。
背景技术
针对一篇文本的主题含义进行机器自动定义,目前的方式主要为关键词定义或文本分类方式,其中关键词定义方式多为抽取式和生成式,抽取式直接从文本中截取表示文章主题的词,而生成式相对某些欠缺关键表述的文章效果较好,然而由于中文语境的复杂性,比如评论文本“这些只能说明还是不够”,目前较为主流的模型生成式架构seq2seq对这些过于隐含的短文本理解不够暂且不论,服务的响应性能也不能满足线上急剧增长的数据量处理需求。因此,在教育应用场景中,系统地理解文本内容主旨,且能快速地响应系统处理需求,基于文章内容语义的主题模型应运而生,且得到了快速发展的机会。
目前的主题模型本质是词袋模型,例如LSI、pLSI,这些模型将文章看成由一堆词组成,词语之间的顺序对其中的主题没有本质影响,即将文章看成是先拟定主题,然后在这些主题下选择相应的主题词组成。LSI使用SVD来对单词-文本矩阵进行分解,SVD可以看作是从单词-文本矩阵中发现不相关的索引变量(因子),将原来的数据映射到语义空间内。在单词-文本矩阵中不相似的两个文本,可能在语义空间内比较相似。pLSI是基于概率统计的LSI模型,不同于使用SVD求解,它是用EM算法学习模型参数。
针对在线文本的多标签定义应用场景,目前可以应用LDA(一种文档主题生成模型)模型对文章主题及其相关词建模,LDA的优点在于能有效快速地对文本建模,能快速的匹配中文语义,完成对文章堆的主题聚类。然而由于本质也是词袋模型,缺点在于分词如果不准和区域词项变动对结果有本质影响,最终建模的主题词项对应矩阵就很难满足中文语义精准要求。
针对以上问题,暂没有较好的解决方案。
发明内容
在本发明提供一种文本多标签分析方法,包括:
获取训练文本数据,所述训练文本数据包括多篇文本,对所述训练文本数据进行分词;
使用N-gram对分词进行建模,形成包含多个词语序列集合的文本集合,作为语料库,所述词语序列集合中包含多个由N个词组成的词语序列;
利用所述语料库对LDA模型进行训练,并对训练结果进行评分验证,选取分值高的LDA模型进行持久化,获得持久化的LDA模型;
利用持久化的LDA模型提取测试文本数据的主题簇,结合词项半监督方式选取标签,确定所述主题簇的簇标签。
可选地,所述N-gram的N为2。
可选地,所述评分验证是采用一致性分数进行验证,所述一致性分数是根据所述持久化的LDA模型获得给定主题下的词项分布,利用词项分布中的所述词语序列来判断其一致性分数C(z,Sz),所述一致性分数的公式如下:
其中,C(z,Sz)为一致性分数;
z为文本;
Sz为所有文本中词语序列的集合;
C值越高,说明具有更好的主题可解释性。
可选地,所述词项半监督方式是指对每个主题簇对应的所述词语序列的相关性排序,选取排列在设定阈值前的词语序列,构成该主题簇的标签簇,所述词语序列的相关性排序的公式是:
relevance(w | θ) = λ * p(w | t) + (1 - λ) * p(w | t)/p(w),
其中relevance(w | θ)表示在主题θ下的词语序列w的相关性;
w表示一个词语序列;
p(w | t)对应该主题簇下的词语序列的分布概率;
p(w)对应该词语序列在整篇文本的分布概率;
λ是可调整参数。
可选地,在所述对所述训练文本数据进行分词时,还去除停用词。
可选地,在所述使用N-gram对分词进行建模,形成包含多个词语序列集合的文本集合后,还将所述文本集合与所述训练文本数据进行词语序列的分布统计,过滤掉在一篇文本中出现的频率低于最低频率阈值的词语序列,以及在多篇文本中出现的频率高于最高频率阈值的的词语序列。
可选地,在所述获得持久化的LDA模型后,还将持久化的LDA模型结合词项半监督方式进行脚本封装,形成在线文本多标签分析模型部署在服务端,并采用POST方式与客户端之间传输数据,获取客户端发送的文本数据,输出所述文本数据的标签簇给客户端。
本发明还提供一种文本多标签分析装置,包括:
分词模块,用于获取训练文本数据,所述训练文本数据包括多篇文本,对所述训练文本数据进行分词;
语料库构建模块,用于使用N-gram对分词进行建模,形成包含多个词语序列集合的文本集合,作为语料库,所述词语序列集合中包含多个由N个词组成的词语序列;
LDA模型训练模块,用于利用所述语料库对LDA模型进行训练,并对训练结果进行评分验证,选取分值高的LDA模型进行持久化,获得持久化的LDA模型;
主题簇提取模块,用于利用持久化的LDA模型提取测试文本数据的主题簇,结合词项半监督方式选取标签,确定所述主题簇的簇标签。
本发明还提供一种电子设备,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的文本多标签分析方法。
本发明还提供一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上所述的文本多标签分析方法。
本发明将LDA和N-gram相结合,利用LDA快速地对文档建模,完成文本的主题聚类的特点,通过N-gram考虑词语的先后顺序的特点形成语料库,并利用该语料库训练LDA 模型,使得训练后的模型能够综合了N-gram的考虑词语先后顺序的特点,又能够兼有LDA快速生成主题聚类的特点,可以更加准确的获得文本的主题簇,获知文本主题含义。
附图说明
图1为本发明提供的文本多标签分析方法一实施例的流程示意图;
图2为本发明提供的文本多标签分析模型的应用流程示意图;
图3为本发明提供的文本多标签分析装置一实施例的模块示意图;
图4为本发明提供的实现文本多标签分析方法的电子设备一实施例的结构示意图;
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本实施例的文本多标签分析方法包括以下步骤:
S1,获取训练文本数据,所述训练文本数据包括多篇文本,对所述训练文本数据进行分词。
分词算法是将句子切分为一系列词语组合的算法,例如“我路过北京大学”可以切分为“我/路过/北京大学”。可以使用北京大学提供的pkuseg分词模型进行分词,由于该模型具有细分的不同领域的预训练模型,并且也支持使用全新的标注数据进行训练,获得自训练模型,可以更加准确的获得分词结果。
S2,使用N-gram(大词汇连续语音识别中常用的一种语言模型)对分词结果进行建模,形成包含多个词语序列集合的文本集合(语料库),所述词语序列集合中包含多个由N个词组成的词语序列。具体说,是对应每个文本,都经过分词后变为词语序列集合,多篇文本从而形成包含多个词语序列集合的文本集合。
其中,N-gram表示N个词的序列。例如,2-gram是两个词排列形成的序列,3-gram是三个词排列形成的序列,利用N-gram将以上的分词结果形成包含多个N个词的序列的集合,同样的还有4-gram、5-gram等。以采用2-gram为例。将分词结果按窗口为2的方式两两结合成词组语料,例如一句话的分词结果为{猿辅导/获得/5亿/融资},将其使用2-gram转换得到多个包含两个词的词语序列,构成词语序列集合{[猿辅导,获得],[获得,5亿],[5亿,融资]}。
对应每个文本都生成这样的词语序列集合,如一篇文本生成的词语序列集合是{[猿辅导,获得],[获得,5亿],[5亿,融资]},另一篇文本生成的词语序列集合是{[北京,获得],[获得,2008年],[2008年,奥运会],[奥运会,举办权]}。
S3,利用所述语料库对LDA模型进行训练,并对训练结果采用一致性分数验证,选取分值较高一组参数调优并模型持久化,获得持久化的LDA模型。具体说,选择高于一致性分数的LDA模型进行持久化,对于低于一致性分数的,可以返回步骤S2,重新利用N-gram进行建模。
所述一致性分数验证的方法是给定一个主题,根据LDA模型获得的主题下的词项分布,利用词项分布中的词语序列来判断其一致性分数。
其中,C(z,Sz)为一致性分数;
z为主题;
Sz为主题中的词语序列的集合;
C值越高,说明更好的主题可解释性,更有意义。
S4,利用持久化的LDA模型提取在线文本信息的主题簇,可以形成一个或多个主题簇,结合Top30词项半监督方式定义标签,确定所述主题簇的簇标签。
所述Top30词项半监督方式是指对每个主题簇对应的词项相关性排序,选取排列在前30的词语序列,构成该主题簇的标签簇。
优选地,词项相关性排序的公式是:
relevance(w | θ) = λ * p(w | t) + (1 - λ) * p(w | t)/p(w),
其中relevance(w | θ)表示在主题θ下的词语序列w的相关性;
w表示一个词语序列;
p(w | t)对应该主题簇下的词语序列的分布概率;
p(w)对应该词语序列在整篇文本的分布概率;
λ是可调整参数,
λ越接近1,该词语序列频率越高,相关排序越靠前,反之,更独有的词跟主题更相关。
所述Top30仅是示例性的,可以根据设定的阈值来选择,排列在阈值前的作为标签。
通过以上步骤,可以得到文本的一个或多个主题的主题簇,且每个主题簇都包含多个所述词语序列。由于词语序列包含了更加确切的语义信息,可以帮助更加准确的获取在线咨询的主题含义。例如,“这些只能说明还是不够”这句话,如果按照常规的切分方式,“这些/只能/说明/还是/不够/”这样的分词结果并不能很好的体现这句话的整体语义。而采用本实施例的方式,对切分后的分词再采用2-gram形成词语序列集合,{[这些,只能],[只能,说明],[说明,还是],[还是,不够]},通过形成词语序列,显然各个词语序列包含的语义更加丰富,这就能够更加准确的获得文本的主题含义。
另外,由于不同的文本信息包含的词语长度不同,适合的N-gram的方式也可以有所区别。可以在步骤S2中采用2-gram、3-gram、4-gram、5-gram分别建立词语序列,形成不同的语料库,并把语料库分别用于训练LDA模型,并根据LDA的训练结果,综合选择其中一致性分数高的一个LDA模型进行持久化。
进一步地,在步骤S4中,还对持久化的LDA模型进行可视化,可视化可以采用LDAvis(基于web的交互式主题模型可视化R包)。
在一个可选实施例中,步骤S1中,在对句子切分的时候,还去除停用词,其中用到的停用词表来源于专注汉语言研究的哈工大所贡献的停用词词表,作用是去除一些噪声特征,降低分类的错误率和耗时。停用词是指一些代表语义的能力不强,对类别的区分能力很差,但频繁出现的词,例如“的”、“我们”、“你”等。
在一个可选实施例中,步骤S2中,在对分词结果进行建模形成包含多个N个词的序列的集合后,还对所述集合结合原始的所述训练文本数据进行词项分布统计,通过设定一定的限值来获得过低频和过高频词项,因为训练文本数据中,过高频的词项在多篇文本中不能显式的区分主题特征语义,易造成噪声,而过低频的词项不具有主题代表性,故过滤掉过低频和过高频的词项,并将剩余的结果序列化为训练用的语料库。例如,如果[猿辅导,获得]在一篇咨询数据中出现的频率过低或在多篇文本中出现的频率过高,则将其过滤掉。
进一步地,将训练后的LDA模型结合Top30词项半监督方式进行脚本封装,形成在线文本多标签分析模型,并将多标签分析模型放入flask框架部署在服务端,并采用POST方式与客户端之间传输数据。
客户端将训练文本数据按照指定json格式请求给服务端,服务端接到请求并验证,验证通过就采用在线文本多标签分析模型进行预测结果,输出在线文本的标签簇,并发送给客户端。
其具体流程如图2所示,
t1, 将持久化的LDA模型结合Top30词项半监督方式进行脚本封装,形成在线文本多标签分析模型,并将多标签分析模型放入flask框架部署在服务端;
t2,接收客户端的post请求;
t3,进行数据验证,判断验证结果,若是验证通过,执行t4,否则返回t2,继续接收客户端的post请求;
t4,给出预测结果,即在线文本的表示主题的标签簇。
进一步地,关于步骤S3中的LDA模型,每一篇文本代表了一些主题所构成的一个概率分布,而每一个主题又代表了很多词语所构成的一个概率分布。通过将语料库输入到LDA模型中进行训练,使得LDA模型能够输出文本的一个或多个主题的词语序列。
具体的,是应用LDA模型接收处理好的上述语料库,设置主题数、词块、迭代算法和迭代轮数参数,通过语料库对LDA模型进行迭代训练,确定其中参数,从而获得训练后的LDA模型。具体包括以下步骤:
S31,随机初始化α和β,其中α和β是分别用于文本的主题和主题的词语序列分布的狄利克雷分布的参数(超过二维的Beta分布一般称之为狄利克雷分布(Dirichlet),值越大意味着越平滑。优选地,α取值可以为50/k,β取值为0.1,k表示有k个主题。
S32,通过以下步骤迭代直到收敛,获得包含主题k的词语序列的向量α k 和词项分布β k :
S321,对语料库中的每篇文本利用当前的α和β值计算每篇文本的主题分布θ、表示词语序列属于主题的词项分布β:
其中,主题分布如下:
α为分布的超参数,是一个k维向量,k表示主题数目;
其中,词项分布如下:
其中,对于语料库中任意一篇文本d中的第n个词,从主题分布θ d 中得到主题编号为z dn 的概率分布为:
z dn =multi(θ d )
对于该主题编号z dn ,得到词语序列w dn 属于该主题编号z dn 的概率分布为:
w dn =multi(β zdn )
S322,累积所有文本中,属于主题k(k=1…K)的词语序列的个数,得到向量α k ;以及词语序列i(i=1…V)属于主题k的次数,得到主题k的词项分布βk;具体如下:
通过求解联合分布p(w,z,θ,β|α,η),可以获得向量α k 和词项分布βk。
w所有文本联合起来形成的词向量;
z语料库的主题;
θ表示文本的主题分布。
可以采用吉布斯抽样算法和变分推理EM算法求解联合分布p,本实施例使用变分推理EM算法更新参数。要使用变分推理EM算法,需要求出隐藏变量的条件概率分布如下:
p(θ,β,z|w,α,η)=p(θ,β,z,w|α,η)/p(w|α,η)
假设隐藏变量θ是由独立分布γ形成的,隐藏变量z是由独立分布ϕ形成的,隐藏变量β是由独立分布λ形成的,由此得到三个隐藏变量联合的变分分布q(β,z,θ|λ,ϕ,γ)
从而可以用q(β,z,θ|λ,ϕ,γ)来近似的估计p(θ,β,z|w,α,η),最小化两者KL距离(交叉熵)即可:
(λ∗,ϕ∗,γ∗)=argmin λ,ϕ,γ D(q(β,z,θ|λ,ϕ,γ)||p(θ,β,z|w,α,η))
其中,λ是近似模型主题词分布,γ是近似训练文本主题分布。
其中D(q||p)为KL距离;
L(λ,ϕ,γ;α,η)=−L(λ,ϕ,γ;α,η)+log(w|α,η)
L为ELBO(Evidence Lower Bound),通过对ELBO函数各个独立分布λ,ϕ,γ分别求导并令偏导数为0,可以得到迭代表达式。以便找到合适的λ∗,ϕ∗,γ∗,然后用q(β,z,θ|λ∗,ϕ∗,γ∗)来近似隐藏变量的条件分布p(θ,β,z|w,α,η),进而使用EM算法迭代。
通过对ELBO函数各个变分参数λ,ϕ,γ分别求导并令偏导数为0,可以得到
其中ϕ dnk 是隐藏变量z的独立分布,
i是表示语料库中第i个词;
其中M表示M 篇文本;
k表示有k个主题;
d表示一篇文本d;
n表示文本中的词语序列;
N表示文本中有N个词语序列。
S323,根据当前的α k ,利用Newton-Raphson迭代方法求得当前的最优α值和β值;
η i =η i +∇ ηiL /∇ ηiηjL
α k =α k +∇ αkL /∇ αkαjL
其中∇ηiL和∇ηiηjL是η的一阶导数和二阶导数,∇αkL和∇αkαjL是α的一阶导数和二阶导数,对应EM算法的M步骤。
(S33)重复上述S323,也即LDA的M步迭代循环,直到α,η收敛,输出达到收敛时的α和β的值。
η i =η i +∇ ηiL /∇ ηiηjL
α k =α k +∇ αkL /∇ αkαjL
其中∇ηiL和∇ηiηjL是η的一阶导数和二阶导数,∇αkL和∇αkαjL是α的一阶导数和二阶导数。
如图3所示,是本发明文本多标签分析装置一实施例的功能模块示意图。
本发明的文本多标签分析装置100可以安装于电子设备中。根据实现的功能,所述文本多标签分析装置100可以包括分词模块101、语料库构建模块102、LDA模型训练模块103、主题簇提取模块104。本发明所述模块是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
在本实施例中,关于各模块的功能如下:
其中,所述分词模块101,用于获取训练文本数据,所述训练文本数据包括多篇文本,对所述训练文本数据进行分词。
分词算法是将句子切分为一系列词语组合的算法,例如“我路过北京大学”可以切分为“我/路过/北京大学”。可以使用北京大学提供的pkuseg分词模型进行分词,由于该模型具有细分的不同领域的预训练模型,并且也支持使用全新的标注数据进行训练,获得自训练模型,可以更加准确的获得分词结果。
其中,语料库构建模块102,用于使用N-gram(大词汇连续语音识别中常用的一种语言模型)对分词结果进行建模,形成包含多个词语序列集合的文本集合(语料库),所述词语序列集合中包含多个由N个词组成的词语序列。具体说,是对应每个文本,都经过分词后变为词语序列集合,多篇文本从而形成包含多个词语序列集合的文本集合。
其中,N-gram表示N个词的序列。例如,2-gram是两个词排列形成的序列,3-gram是三个词排列形成的序列,利用N-gram将以上的分词结果形成包含多个N个词的序列的集合,同样的还有4-gram、5-gram等。以采用2-gram为例。将分词结果按窗口为2的方式两两结合成词组语料,例如一句话的分词结果为{猿辅导/获得/5亿/融资},将其使用2-gram转换得到多个包含两个词的词语序列,构成词语序列集合{[猿辅导,获得],[获得,5亿],[5亿,融资]}。
对应每个文本都生成这样的词语序列集合,如一篇文本生成的词语序列集合是{[猿辅导,获得],[获得,5亿],[5亿,融资]},另一篇文本生成的词语序列集合是{[北京,获得],[获得,2008年],[2008年,奥运会],[奥运会,举办权]}。
其中,LDA模型训练模块103,用于利用所述语料库对LDA模型进行训练,并对训练结果采用一致性分数验证,选取分值较高一组参数调优并模型持久化,获得持久化的LDA模型。具体说,选择高于一致性分数的LDA模型进行持久化,对于低于一致性分数的,可以返回步骤S2,重新利用N-gram进行建模。
所述一致性分数验证的方法是给定一个主题,根据LDA模型获得的主题下的词项分布,利用词项分布中的词语序列来判断其一致性分数。
其中,C(z,Sz)为一致性分数;
z为主题;
Sz为主题中的词语序列的集合;
C值越高,说明更好的主题可解释性,更有意义。
其中,主题簇提取模块104,用于利用持久化的LDA模型提取在线文本信息的主题簇,可以形成一个或多个主题簇,结合Top30词项半监督方式定义标签,确定所述主题簇的簇标签。
所述Top30词项半监督方式是指对每个主题簇对应的词项相关性排序,选取排列在前30的词语序列,构成该主题簇的标签簇。
优选地,词项相关性排序的公式是:
relevance(w | θ) = λ * p(w | t) + (1 - λ) * p(w | t)/p(w),
其中relevance(w | θ)表示在主题θ下的词语序列w的相关性;
w表示一个词语序列;
p(w | t)对应该主题簇下的词语序列的分布概率;
p(w)对应该词语序列在整篇文本的分布概率;
λ是可调整参数,
λ越接近1,该词语序列频率越高,相关排序越靠前,反之,更独有的词跟主题更相关。
所述Top30仅是示例性的,可以根据设定的阈值来选择,排列在阈值前的作为标签。
通过以上步骤,可以得到文本的一个或多个主题的主题簇,且每个主题簇都包含多个所述词语序列。由于词语序列包含了更加确切的语义信息,可以帮助更加准确的获取在线咨询的主题含义。例如,“这些只能说明还是不够”这句话,如果按照常规的切分方式,“这些/只能/说明/还是/不够/”这样的分词结果并不能很好的体现这句话的整体语义。而采用本实施例的方式,对切分后的分词再采用2-gram形成词语序列集合,{[这些,只能],[只能,说明],[说明,还是],[还是,不够]},通过形成词语序列,显然各个词语序列包含的语义更加丰富,这就能够更加准确的获得文本的主题含义。
另外,由于不同的文本信息包含的词语长度不同,适合的N-gram的方式也可以有所区别。可以在步骤S2中采用2-gram、3-gram、4-gram、5-gram分别建立词语序列,形成不同的语料库,并把语料库分别用于训练LDA模型,并根据LDA的训练结果,综合选择其中一致性分数高的一个LDA模型进行持久化。
进一步地,在步骤S4中,还对持久化的LDA模型进行可视化,可视化可以采用LDAvis(基于web的交互式主题模型可视化R包)。
在一个可选实施例中,步骤S1中,在对句子切分的时候,还去除停用词,其中用到的停用词表来源于专注汉语言研究的哈工大所贡献的停用词词表,作用是去除一些噪声特征,降低分类的错误率和耗时。停用词是指一些代表语义的能力不强,对类别的区分能力很差,但频繁出现的词,例如“的”、“我们”、“你”等。
在一个可选实施例中,步骤S2中,在对分词结果进行建模形成包含多个N个词的序列的集合后,还对所述集合结合原始的所述训练文本数据进行词项分布统计,通过设定一定的限值来获得过低频和过高频词项,因为训练文本数据中,过高频的词项在多篇文本中不能显式的区分主题特征语义,易造成噪声,而过低频的词项不具有主题代表性,故过滤掉过低频和过高频的词项,并将剩余的结果序列化为训练用的语料库。例如,如果[猿辅导,获得]在一篇咨询数据中出现的频率过低或在多篇文本中出现的频率过高,则将其过滤掉。
进一步地,将训练后的LDA模型结合Top30词项半监督方式进行脚本封装,形成在线文本多标签分析模型,并将多标签分析模型放入flask框架部署在服务端,并采用POST方式与客户端之间传输数据。
客户端将训练文本数据按照指定json格式请求给服务端,服务端接到请求并验证,验证通过就采用在线文本多标签分析模型进行预测结果,输出在线文本的标签簇,并发送给客户端。
其具体流程如图2所示,
t1, 将持久化的LDA模型结合Top30词项半监督方式进行脚本封装,形成在线文本多标签分析模型,并将多标签分析模型放入flask框架部署在服务端;
t2,接收客户端的post请求;
t3,进行数据验证,判断验证结果,若是验证通过,执行t4,否则返回t2,继续接收客户端的post请求;
t4,给出预测结果,即在线文本的表示主题的标签簇。
如图4所示,是本发明实现文本多标签分析方法的电子设备一实施例的结构示意图。
所述电子设备1可以包括处理器10、存储器11和总线,还可以包括存储在所述存储器11中并可在所述处理器10上运行的计算机程序,如文本多标签分析程序12。
其中,所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:SD或DX存储器等)、磁性存储器、磁盘、光盘等。所述存储器11在一些实施例中可以是电子设备1的内部存储单元,例如该电子设备1的移动硬盘。所述存储器11在另一些实施例中也可以是电子设备1的外部存储设备,例如电子设备1上配备的插接式移动硬盘、智能存储卡(Smart Media Card, SMC)、安全数字(SecureDigital, SD)卡、闪存卡(Flash Card)等。进一步地,所述存储器11还可以既包括电子设备1的内部存储单元也包括外部存储设备。所述存储器11不仅可以用于存储安装于电子设备1的应用软件及各类数据,例如文本多标签分析程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
所述处理器10在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述处理器10是所述电子设备的控制核心(Control Unit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在所述存储器11内的程序或者模块(例如文本多标签分析程序等),以及调用存储在所述存储器11内的数据,以执行电子设备1的各种功能和处理数据。
所述总线可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。所述总线被设置为实现所述存储器11以及至少一个处理器10等之间的连接通信。
图4仅示出了具有部件的电子设备,本领域技术人员可以理解的是,图4示出的结构并不构成对所述电子设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
例如,尽管未示出,所述电子设备1还可以包括给各个部件供电的电源(比如电池),可选的,电源可以通过电源管理装置与所述至少一个处理器10逻辑相连,从而通过电源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备1还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
进一步地,所述电子设备1还可以包括网络接口,可选地,所述网络接口可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该电子设备1与其他电子设备之间建立通信连接。
可选地,该电子设备1还可以包括用户接口,用户接口可以是显示器(Display)、输入单元(比如键盘(Keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备1中处理的信息以及用于显示可视化的用户界面。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
所述电子设备1中的所述存储器11存储的文本多标签分析程序12是多个指令的组合,在所述处理器10中运行时,可以实现:
S1,获取训练文本数据,所述训练文本数据包括多篇文本,对所述训练文本数据进行分词;
S2,使用N-gram对分词进行建模,形成包含多个词语序列集合的文本集合,作为语料库,所述词语序列集合中包含多个由N个词组成的词语序列;
S3,利用所述语料库对LDA模型进行训练,并对训练结果进行评分验证,选取分值高的LDA模型进行持久化,获得持久化的LDA模型;
S4,利用持久化的LDA模型提取测试文本数据的主题簇,结合词项半监督方式定义标签,确定所述主题簇的簇标签。
具体的运行流程如图1所示的文本多标签分析方法流程类型,具体可参见图1的文本多标签分析方法的描述,此处不再赘述。
进一步地,所述电子设备1集成的模块如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (10)
1.一种文本多标签分析方法,其特征在于,包括:
获取训练文本数据,所述训练文本数据包括多篇文本,对所述训练文本数据进行分词;
使用N-gram对分词进行建模,形成包含多个词语序列集合的文本集合,作为语料库,所述词语序列集合中包含多个由N个词组成的词语序列;
利用所述语料库对LDA模型进行训练,并对训练结果进行评分验证,选取分值高的LDA模型进行持久化,获得持久化的LDA模型;
利用持久化的LDA模型提取测试文本数据的主题簇,结合词项半监督方式选取标签,确定所述主题簇的簇标签。
2.根据权利要求1所述的文本多标签分析方法,其特征在于,
所述N-gram的N为2。
4.根据权利要求1所述的文本多标签分析方法,其特征在于,
所述词项半监督方式是指对每个主题簇对应的所述词语序列的相关性排序,选取排列在设定阈值前的词语序列,构成该主题簇的标签簇,所述词语序列的相关性排序的公式是:
relevance(w | θ) = λ * p(w | t) + (1 - λ) * p(w | t)/p(w),
其中relevance(w | θ)表示在主题θ下的词语序列w的相关性;
w表示一个词语序列;
p(w | t)对应该主题簇下的词语序列的分布概率;
p(w)对应该词语序列在整篇文本的分布概率;
λ是可调整参数。
5.根据权利要求1所述的文本多标签分析方法,其特征在于,
在所述对所述训练文本数据进行分词时,还去除停用词。
6.根据权利要求1所述的文本多标签分析方法,其特征在于,
在所述使用N-gram对分词进行建模,形成包含多个词语序列集合的文本集合后,还将所述文本集合与所述训练文本数据进行词语序列的分布统计,过滤掉在一篇文本中出现的频率低于最低频率阈值的词语序列,以及在多篇文本中出现的频率高于最高频率阈值的词语序列。
7.根据权利要求4所述的文本多标签分析方法,其特征在于,
在所述获得持久化的LDA模型后,还将持久化的LDA模型结合词项半监督方式进行脚本封装,形成在线文本多标签分析模型部署在服务端,并采用POST方式与客户端之间传输数据,获取客户端发送的文本数据,输出所述文本数据的标签簇给客户端。
8.一种文本多标签分析装置,其特征在于,包括:
分词模块,用于获取训练文本数据,所述训练文本数据包括多篇文本,对所述训练文本数据进行分词;
语料库构建模块,用于使用N-gram对分词进行建模,形成包含多个词语序列集合的文本集合,作为语料库,所述词语序列集合中包含多个由N个词组成的词语序列;
LDA模型训练模块,用于利用所述语料库对LDA模型进行训练,并对训练结果进行评分验证,选取分值高的LDA模型进行持久化,获得持久化的LDA模型;
主题簇提取模块,用于利用持久化的LDA模型提取测试文本数据的主题簇,结合词项半监督方式选取标签,确定所述主题簇的簇标签。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至7中任一所述的文本多标签分析方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一所述的文本多标签分析方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011251557.4A CN112069322B (zh) | 2020-11-11 | 2020-11-11 | 文本多标签分析方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011251557.4A CN112069322B (zh) | 2020-11-11 | 2020-11-11 | 文本多标签分析方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112069322A true CN112069322A (zh) | 2020-12-11 |
CN112069322B CN112069322B (zh) | 2021-03-02 |
Family
ID=73655168
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011251557.4A Active CN112069322B (zh) | 2020-11-11 | 2020-11-11 | 文本多标签分析方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112069322B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115687577A (zh) * | 2023-01-04 | 2023-02-03 | 交通运输部公路科学研究所 | 一种道路运输常态化问题诉求发现方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140379719A1 (en) * | 2013-06-24 | 2014-12-25 | Tencent Technology (Shenzhen) Company Limited | System and method for tagging and searching documents |
CN107784112A (zh) * | 2017-11-06 | 2018-03-09 | 广州赛宝认证中心服务有限公司 | 短文本数据增强方法、系统及检测认证服务平台 |
CN110059312A (zh) * | 2019-03-27 | 2019-07-26 | 阿里巴巴集团控股有限公司 | 短语挖掘方法、装置和电子设备 |
CN110134951A (zh) * | 2019-04-29 | 2019-08-16 | 淮阴工学院 | 一种分析文本数据潜在主题短语的方法及系统 |
CN111026866A (zh) * | 2019-10-24 | 2020-04-17 | 北京中科闻歌科技股份有限公司 | 一种面向领域的文本信息抽取聚类方法、设备和存储介质 |
-
2020
- 2020-11-11 CN CN202011251557.4A patent/CN112069322B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140379719A1 (en) * | 2013-06-24 | 2014-12-25 | Tencent Technology (Shenzhen) Company Limited | System and method for tagging and searching documents |
CN107784112A (zh) * | 2017-11-06 | 2018-03-09 | 广州赛宝认证中心服务有限公司 | 短文本数据增强方法、系统及检测认证服务平台 |
CN110059312A (zh) * | 2019-03-27 | 2019-07-26 | 阿里巴巴集团控股有限公司 | 短语挖掘方法、装置和电子设备 |
CN110134951A (zh) * | 2019-04-29 | 2019-08-16 | 淮阴工学院 | 一种分析文本数据潜在主题短语的方法及系统 |
CN111026866A (zh) * | 2019-10-24 | 2020-04-17 | 北京中科闻歌科技股份有限公司 | 一种面向领域的文本信息抽取聚类方法、设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
DMITRIY SELIVANOV: "Topic Modeling", 《HTTP://TEXT2VEC.ORG/TOPIC_MODELING.HTML》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115687577A (zh) * | 2023-01-04 | 2023-02-03 | 交通运输部公路科学研究所 | 一种道路运输常态化问题诉求发现方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112069322B (zh) | 2021-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111177569B (zh) | 基于人工智能的推荐处理方法、装置及设备 | |
CN111428488A (zh) | 简历数据信息解析及匹配方法、装置、电子设备及介质 | |
CN111914558A (zh) | 基于句袋注意力远程监督的课程知识关系抽取方法及系统 | |
CN108363790A (zh) | 用于对评论进行评估的方法、装置、设备和存储介质 | |
CN111539197B (zh) | 文本匹配方法和装置以及计算机系统和可读存储介质 | |
CN108984530A (zh) | 一种网络敏感内容的检测方法及检测系统 | |
CN104881458B (zh) | 一种网页主题的标注方法和装置 | |
CN109492105B (zh) | 一种基于多特征集成学习的文本情感分类方法 | |
US20120030206A1 (en) | Employing Topic Models for Semantic Class Mining | |
CN104850617B (zh) | 短文本处理方法及装置 | |
US11170169B2 (en) | System and method for language-independent contextual embedding | |
CN113704429A (zh) | 基于半监督学习的意图识别方法、装置、设备及介质 | |
CN112052356A (zh) | 多媒体分类方法、装置和计算机可读存储介质 | |
CN114387061A (zh) | 产品推送方法、装置、电子设备及可读存储介质 | |
CN113722483A (zh) | 话题分类方法、装置、设备及存储介质 | |
CN115392237B (zh) | 情感分析模型训练方法、装置、设备及存储介质 | |
Patel et al. | Dynamic lexicon generation for natural scene images | |
CN112287656A (zh) | 文本比对方法、装置、设备和存储介质 | |
CN114662477A (zh) | 基于中医对话的停用词表生成方法、装置及存储介质 | |
CN112069322B (zh) | 文本多标签分析方法、装置、电子设备及存储介质 | |
CN110019821A (zh) | 文本类标训练方法和识别方法、相关装置及存储介质 | |
CN112988962A (zh) | 文本纠错方法、装置、电子设备及存储介质 | |
CN112632264A (zh) | 智能问答方法、装置、电子设备及存储介质 | |
CN111681731A (zh) | 一种对检查报告进行自动颜色标注的方法 | |
CN115221323A (zh) | 基于意图识别模型的冷启动处理方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |