发明内容
基于此,有必要针对上述技术问题,提供一种能够反映文本意图、准确性较高的文本关键词提取方法、装置、计算机设备和存储介质。
一种文本关键词提取方法,所述方法包括:
获取待提取文本的候选关键词;
对所述候选关键词进行词向量编码,得到第一特征向量,以及,对所述候选关键词进行词频逆文本频率编码,得到第二特征向量;
根据所述第一特征向量和所述第二特征向量,得到所述候选关键词对应的关键词向量;
根据所述关键词向量,在所述候选关键词中选取所述待提取文本的目标关键词。
在其中一个实施例中,所述根据所述关键词向量,在所述候选关键词中选取所述待提取文本的目标关键词,包括:
根据所述关键词向量对所述候选关键词进行聚类,得到关键词聚类簇;
通过选取所述关键词聚类簇内的候选关键词,得到簇内关键词;
通过对所述簇内关键词进行排序,得到关键词排序结果;
根据所述关键词排序结果,得到所述待提取文本的目标关键词。
在其中一个实施例中,所述通过对所述簇内关键词进行排序,得到关键词排序结果,包括:
对所述簇内关键词进行词频逆文本频率编码,得到簇内特征向量;
根据所述簇内特征向量,得到所述簇内关键词对应的关键词分值;
根据所述关键词分值对所述簇内关键词进行排序,得到所述关键词排序结果。
在其中一个实施例中,所述根据所述关键词向量对所述候选关键词进行聚类,得到关键词聚类簇,包括:
根据预设的聚类簇数,在所述关键词向量中选取聚类中心初始向量;
根据所述关键词向量与所述聚类中心初始向量的向量距离,对所述关键词向量进行聚类,得到向量聚类结果;
根据所述向量聚类结果,得到聚类中心更新向量;
计算所述聚类中心更新向量与所述聚类中心初始向量之间的向量差值;
判断所述向量差值是否超过预设的差值阈值;
若是,则以所述聚类中心更新向量为所述聚类中心初始向量,返回所述根据所述关键词向量与所述聚类中心初始向量的向量距离,对所述关键词向量进行聚类,得到向量聚类结果的步骤;
若否,则根据所述向量聚类结果对所述候选关键词进行聚类,得到所述关键词聚类簇。
在其中一个实施例中,所述根据所述关键词向量与所述聚类中心初始向量的向量距离,对所述关键词向量进行聚类,得到向量聚类结果,包括:
计算所述关键词向量与所述聚类中心初始向量之间的向量距离;
判断所述向量距离是否超过预设的距离阈值;
若是,则剔除所述向量距离对应的关键词向量,得到去噪后关键词向量,并根据所述去噪后关键词向量与所述聚类中心初始向量的向量距离,对所述去噪后关键词向量进行聚类,得到所述向量聚类结果。
在其中一个实施例中,所述获取待提取文本的候选关键词,包括:
对所述待提取文本进行停用词过滤处理,得到过滤文本;
对所述过滤文本进行分词处理,得到所述候选关键词。
在其中一个实施例中,所述对所述候选关键词进行词频逆文本频率编码,得到第二特征向量,包括:
对所述候选关键词进行词频逆文本频率编码,得到编码矩阵;
通过约束所述编码矩阵的维度,得到所述第二特征向量;
所述根据所述第一特征向量和所述第二特征向量,得到所述候选关键词对应的关键词向量,包括:
通过将所述第二特征向量与所述第一特征向量相拼接,得到所述关键词向量。
一种文本关键词提取装置,所述装置包括:
获取模块,用于获取待提取文本的候选关键词;
编码模块,用于对所述候选关键词进行词向量编码,得到第一特征向量,以及,对所述候选关键词进行词频逆文本频率编码,得到第二特征向量;
向量聚合模块,用于根据所述第一特征向量和所述第二特征向量,得到所述候选关键词对应的关键词向量;
提取模块,用于根据所述关键词向量,在所述候选关键词中选取所述待提取文本的目标关键词。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取待提取文本的候选关键词;
对所述候选关键词进行词向量编码,得到第一特征向量,以及,对所述候选关键词进行词频逆文本频率编码,得到第二特征向量;
根据所述第一特征向量和所述第二特征向量,得到所述候选关键词对应的关键词向量;
根据所述关键词向量,在所述候选关键词中选取所述待提取文本的目标关键词。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取待提取文本的候选关键词;
对所述候选关键词进行词向量编码,得到第一特征向量,以及,对所述候选关键词进行词频逆文本频率编码,得到第二特征向量;
根据所述第一特征向量和所述第二特征向量,得到所述候选关键词对应的关键词向量;
根据所述关键词向量,在所述候选关键词中选取所述待提取文本的目标关键词。
上述文本关键词提取方法、装置、计算机设备和存储介质,通过获取待提取文本的候选关键词,对候选关键词进行词向量编码,得到第一特征向量,以及,对候选关键词进行词频逆文本频率编码,得到第二特征向量,可以得到体现文本上下文特征的第一特征向量和体现文本全局特征的第二特征向量;根据第一特征向量和第二特征向量,得到候选关键词对应的关键词向量,根据关键词向量,在候选关键词中选取待提取文本的目标关键词,可以结合文本上下文特征和全局特征进行关键词提取,提取出的目标关键词可以更准确地反映文本意图,关键词提取准确性较高。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的文本关键词提取方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种文本关键词提取方法,以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:
步骤S210,获取待提取文本的候选关键词。
其中,待提取文本为一段包含文字、数字、标点符号、表情文本或超链接的文本。
其中,候选关键词为对文本进行去停用词、分词等处理后得到的分词词汇。
具体实现中,用户可以向终端102输入一段文本或录入一段语音,终端102将语音或文本传输至服务器104,服务器104对于接收到的文本,可以直接作为待提取文本,对于接收到的语音,可以将其转化为文本后作为待提取文本。在获取到待提取文本后,服务器104可以对其进行停用词过滤处理,包括去掉待提取文本中的标点符号、HTML(超文本标记语言)链接、表情文本和语气词,停用词过滤后得到过滤文本,服务器104可以对过滤文本进行分词处理,得到用于进行关键词提取的候选关键词,实际应用中,服务器104可以通过Python(蟒蛇)第三方中文分词库jieba(结巴)来对过滤文本进行分词处理,得到待提取文本的若干个分词,将分词作为候选关键词。
步骤S220,对候选关键词进行词向量编码,得到第一特征向量,以及,对候选关键词进行词频逆文本频率编码,得到第二特征向量。
其中,词向量编码为将词转换为向量的编码算法,词频逆文本频率编码为根据词频对词进行编码的算法。
具体实现中,服务器104可以对候选关键词进行词编码,通过数据变换或映射将文本转化为数值矩阵,在后续的建模过程中,可以以该数值矩阵作为文本表示,参与训练和计算。其中,词向量编码可以使用Word2vec(word to vector,词转向量)算法,词频逆文本频率编码可以使用TF-IDF(Term Frequency–Inverse Document Frequency,词频-逆文本频率)算法,其中,Word2vec是一群用来产生词向量的相关模型,这些模型为浅而双层的神经网络,用来训练以重新建构语言学之词文本;TF-IDF是一种用于信息检索与数据挖掘的加权技术,用以评估某个词对于一个文件集或一个语料库中的其中一份文件的重要程度。服务器104可以使用Word2vec算法对候选关键词进行编码,得到第一特征向量,第一特征向量的维度(dim1)可以是固定长度的,句子编码就是对该句子所有候选关键词进行编码,得到的词汇向量的平均值结果。服务器104还可以使用TF-IDF算法对每条文本分词词汇进行统计,每个句子的每一个词会根据TF-IDF得到的词库映射而得到稀疏数值矩阵,可以将稀疏数值矩阵作为第二特征向量,通过控制第二特征向量的最大维度(dim2),可以限定不同长短的句子具有相同的维度。
需要说明的是,上述文本编码还可以用基于大规模文本训练的预训练模型(例如,BERT(Bidirectional Encoder Representation from Transformers,双向编码器))、稀疏编码(例如,one-hot(独热编码))等其他方法替代。
步骤S230,根据第一特征向量和第二特征向量,得到候选关键词对应的关键词向量。
具体实现中,服务器104可以联合第一特征向量和第二特征向量,得到候选关键词的关键词向量,包括但不限于对第一特征向量和第二特征向量进行拼接、合并处理。例如,可以对第一特征向量和第二特征向量进行列合并,得到维度为dim1+dim2的数值矩阵,该数值矩阵可以作为关键词向量。
步骤S240,根据关键词向量,在候选关键词中选取待提取文本的目标关键词。
其中,目标关键词为关键词提取方法的输出结果,即从待提取文本中提取出的关键词。
具体实现中,由于关键词向量是候选关键词的编码结果,关键词向量与候选关键词一一对应,可以通过对关键词向量进行聚类,实现对候选关键词的聚类,服务器104可以通过聚类算法对关键词向量进行聚类,得到若干个关键词向量聚类簇,对于其中任意一个关键词向量聚类簇,可以获取簇内各个关键词向量对应的候选关键词,组成一个关键词聚类簇,属于该关键词聚类簇的候选关键词可以标记为簇内关键词,通过对簇内关键词进行TF-IDF处理,可以得到每个簇内关键词的分值,根据分值对簇内关键词进行排序,根据排序结果提取目标关键词,例如,可以将分值最高的簇内关键词标记为目标关键词,还可以根据预设的关键词数量,提取分值较高的指定数量个目标关键词。
实际应用中,可以通过Kmeans算法(k-means clustering algorithm,k均值聚类算法)对关键词向量进行聚类,通过随机选取K个关键词向量标记为初始的聚类中心,计算各个关键词向量与K个聚类中心之间的距离,将关键词向量分配给距离最近的聚类中心,最终得到的聚类中心以及分配给该聚类中心的关键词向量可以为一个聚类。在聚类过程中,每分配一个关键词向量,服务器104可以根据当前聚类结果重新计算聚类中心,对聚类中心进行更新,重复上述过程直至满足预设的终止条件(例如,误差平方和局部最小)时,得到最终的聚类结果。为减少聚类过程中噪声样本的出现,可以利用每个簇的聚类中心,计算各个关键词向量与聚类中心之间的欧式距离,剔除距离聚类中心较远的关键词向量,在剩下的关键词向量中进行关键词提取。在关键词提取过程中,服务器104可以针对一个指定聚类簇,获取簇内每个关键词向量对应的关键词,得到一个簇关键词词库,对词库中的词分别进行TF-IDF处理,得到词对应的TF-IDF分值,根据分值对词进行排序,通过选取该排序下分值最高的词,可以得到该聚类簇的目标关键词。
需要说明的是,上述Kmeans聚类算法还可以用层次聚类(例如,分裂层次聚类方法Divisive)、密度聚类(例如,DBSCAN(Density-Based Spatial Clustering ofApplications with Noise,考虑噪声的密度聚类方法)、OPTICS(Ordering Points ToIdentify the Clustering Structure,确定聚类结构的排序点))、稀疏矩阵聚类(例如,谱聚类)等其他方法替代。
上述文本关键词提取方法,通过获取待提取文本的候选关键词,对候选关键词进行词向量编码,得到第一特征向量,以及,对候选关键词进行词频逆文本频率编码,得到第二特征向量,可以得到体现文本上下文特征的第一特征向量和体现文本全局特征的第二特征向量;根据第一特征向量和第二特征向量,得到候选关键词对应的关键词向量,根据关键词向量,在候选关键词中选取待提取文本的目标关键词,可以结合文本上下文特征和全局特征进行关键词提取,提取出的目标关键词可以更准确地反映文本意图,关键词提取准确性较高。
在一个实施例中,上述步骤S240,可以具体包括以下步骤:
步骤S241,根据关键词向量对候选关键词进行聚类,得到关键词聚类簇;
步骤S242,通过选取关键词聚类簇内的候选关键词,得到簇内关键词;
步骤S243,通过对簇内关键词进行排序,得到关键词排序结果;
步骤S244,根据关键词排序结果,得到待提取文本的目标关键词。
具体实现中,由于关键词向量是候选关键词的编码结果,关键词向量与候选关键词一一对应,可以通过对关键词向量进行聚类,实现对候选关键词的聚类,服务器可以通过聚类算法对关键词向量进行聚类,得到若干个关键词向量聚类簇,对于其中任意一个关键词向量聚类簇,可以获取簇内各个关键词向量对应的候选关键词,组成一个关键词聚类簇,属于该关键词聚类簇的候选关键词可以标记为簇内关键词,通过对簇内关键词进行TF-IDF处理,可以得到每个簇内关键词的分值,根据分值对簇内关键词进行排序,根据排序结果提取目标关键词,例如,可以将分值最高的簇内关键词标记为目标关键词,还可以根据预设的关键词数量,提取分值较高的指定数量个目标关键词。
本实施例中,通过根据关键词向量对候选关键词进行聚类,得到关键词聚类簇,可以综合文本上下文特征和全局特征对关键词进行聚类;通过选取关键词聚类簇内的候选关键词,得到簇内关键词,可以得到特征相近的候选关键词;通过对簇内关键词进行排序,得到关键词排序结果,可以对一组文本上下文特征和全局特征相近的候选关键词进行排序;根据关键词排序结果,得到待提取文本的目标关键词,可以提取出能够准确反映文本意图的目标关键词。
在一个实施例中,上述步骤S243,可以具体包括:通过对簇内关键词进行词频逆文本频率编码,得到簇内关键词对应的关键词分值;根据关键词分值对簇内关键词进行排序,得到关键词排序结果。
具体实现中,在对簇内关键词进行排序的过程中,可以对簇内关键词进行TF-IDF编码,得到每个簇内关键词所对应的关键词分值,按照关键词分值的分值高低对簇内关键词进行排序,可以得到关键词排序结果。
例如,在得到簇内关键词“文本”、“特征”、“向量”后,通过TF-IDF编码,得到簇内关键词对应的关键词分值分别为0.05,0.12,0.2,可以按照关键词分值由大到小的顺序对簇内关键词进行排序,得到关键词排序结果依次为“向量”、“特征”、“文本”,可以将排在前面的“向量”作为目标关键词。
本实施例中,通过对簇内关键词进行词频逆文本频率编码,得到簇内关键词对应的关键词分值,根据关键词分值对簇内关键词进行排序,得到关键词排序结果,可以根据分值对关键词词频进行排序,进而根据排序结果提取出能够准确反映文本意图的目标关键词,提高关键词提取的准确性,进一步地,词频逆文本频率编码可以减少高频词的权重,减少出现频繁但信息量低的词汇的权重,使该方法无需自建停用词库,可以提升关键词提取过程的自动化程度。
在一个实施例中,上述步骤S241,可以具体包括:根据预设的聚类簇数,在关键词向量中选取聚类中心初始向量;根据关键词向量与聚类中心初始向量的向量距离,对关键词向量进行聚类,得到向量聚类结果;根据向量聚类结果,得到聚类中心更新向量;计算聚类中心更新向量与聚类中心初始向量之间的向量差值;判断向量差值是否超过预设的差值阈值;若是,则以聚类中心更新向量为聚类中心初始向量,返回根据关键词向量与聚类中心初始向量的向量距离,对关键词向量进行聚类,得到向量聚类结果的步骤;若否,则根据向量聚类结果对候选关键词进行聚类,得到关键词聚类簇。
具体实现中,服务器可以预先设置聚类簇数为K,在关键词向量中随机选取K个向量作为聚类中心,这K个向量即为聚类中心初始向量,计算各个关键词向量与K个聚类中心之间的向量距离(例如,欧式距离),将关键词向量分配给距离最近的聚类中心,最终得到的聚类中心以及分配给该聚类中心的关键词向量可以为一个聚类,从而得到向量聚类结果。在聚类过程中,每分配一个关键词向量,服务器可以根据当前聚类结果重新计算聚类中心,新的聚类中心即为聚类中心更新向量,计算聚类中心初始向量与聚类中心更新向量之间的向量差,将向量差与预设的差值阈值相比较,当超过差值阈值时,表示聚类中心的更新不收敛,需要重新获得聚类中心,并对重新获得的聚类中心进行收敛性判断,当不超过差值阈值时,表示聚类中心收敛,可以将当前的聚类结果作为最终的聚类结果。其中,计算聚类中心初始向量与聚类中心更新向量之间的向量差还可以为计算聚类中心初始向量与聚类中心更新向量之间的误差平方和,当误差平方和局部最小时,表示聚类收敛,可以得到最终的聚类结果。
本实施例中,通过根据预设的聚类簇数,在关键词向量中选取聚类中心初始向量;根据关键词向量与聚类中心初始向量的向量距离,对关键词向量进行聚类,得到向量聚类结果;根据向量聚类结果,得到聚类中心更新向量;计算聚类中心更新向量与聚类中心初始向量之间的向量差值;判断向量差值是否超过预设的差值阈值;若是,则以聚类中心更新向量为聚类中心初始向量,返回根据关键词向量与聚类中心初始向量的向量距离,对关键词向量进行聚类,得到向量聚类结果的步骤;若否,则根据向量聚类结果对候选关键词进行聚类,得到关键词聚类簇,可以根据文本上下文特征和全局特征对关键词进行聚类,进而可以综合上下文特征和全局特征进行关键词提取,提高关键词提取的准确性。
在一个实施例中,上述步骤S241,具体还可以包括:计算关键词向量与聚类中心初始向量之间的向量距离;判断向量距离是否超过预设的距离阈值;若是,则剔除向量距离对应的关键词向量,得到去噪后关键词向量,并根据去噪后关键词向量与聚类中心初始向量的向量距离,对去噪后关键词向量进行聚类,得到向量聚类结果。
具体实现中,为减少聚类过程中噪声样本的出现,可以在每个簇内计算关键词向量与聚类中心初始向量之间的向量距离(例如,欧式距离),根据向量距离是否超过预设的距离阈值,可以判断当前关键词向量是否为噪声样本,若向量距离超过距离阈值,则可以判定为噪声样本,剔除当前的关键词向量,剩余的关键词向量可以标记为去噪后关键词向量,根据去噪后关键词向量与聚类中心初始向量之间的向量距离,可以对去噪后关键词向量进行聚类,得到向量聚类结果。
本实施例中,通过计算关键词向量与聚类中心初始向量之间的向量距离;判断向量距离是否超过预设的距离阈值;若是,则剔除向量距离对应的关键词向量,得到去噪后关键词向量,并根据去噪后关键词向量与聚类中心初始向量的向量距离,对去噪后关键词向量进行聚类,得到向量聚类结果,可以剔除聚类过程中的噪声样本,进一步提高关键词提取的准确性。
在一个实施例中,上述步骤S210,可以具体包括:对待提取文本进行停用词过滤处理,得到过滤文本;对过滤文本进行分词处理,得到候选关键词。
具体实现中,服务器可以在获取到一段待提取文本后,对文本进行停用词过滤处理,去除待提取文本中的标点符号、超文本链接、表情文本等停用词,得到过滤文本,之后可以对过滤文本进行分词处理,得到的分词结果可以作为候选关键词。
本实施例中,通过对待提取文本进行停用词过滤处理,得到过滤文本,可以去掉待提取文本中的停用词;对过滤文本进行分词处理,得到候选关键词,可以针对候选关键词进行关键词提取,降低关键词提取的复杂度。
在一个实施例中,上述步骤S220,可以具体包括:对候选关键词进行词频逆文本频率编码,得到编码矩阵;通过约束编码矩阵的维度,得到第二特征向量;上述步骤S230,可以具体包括:通过将第二特征向量与第一特征向量相拼接,得到关键词向量。
具体实现中,服务器可以通过TF-IDF算法对文本中的候选关键词进行统计,得到TF-IDF编码矩阵,通过控制编码矩阵的最大维度(dim2)限定不同长短的句子具有相同的维度,可以得到第二特征向量,通过将第二特征向量与Word2vec编码得到的第一特征向量相拼接,例如,对第一特征向量和第二特征向量进行列合并,得到关键词向量,关键词向量可以作为聚类算法的输入。
本实施例中,通过对候选关键词进行词频逆文本频率编码,得到编码矩阵,可以得到体现文本全局特征的编码矩阵;通过约束编码矩阵的维度,得到第二特征向量,可以使第二特征向量维度一致,便于进行后续的拼接等处理;通过将第二特征向量与第一特征向量相拼接,得到关键词向量,可以对文本特征进行多维度提取,使关键词向量综合反映文本上下文特征和全局特征,提高关键词提取的准确性。
为便于本领域技术人员理解,在一个实施例中,如图3所示,提供了另一个文本关键词提取方法的流程示意图,该方法可以实现基于无监督聚类的主观意图关键词提取,具体包括以下步骤:
步骤S310,对待聚类文本进行停用词过滤,主要包括过滤一些标点符号、html链接、表情文本、以及“啊”、“嗯”、“哦”等语气词;
步骤S320,用jieba进行分词处理;
步骤S330,进行文本转序列编码,包括使用Word2vec算法对分词后的文本进行编码,每个词编码后的维度(dim1)是固定长度的,句子编码就是该句子所有词汇向量的平均值结果,还包括使用TF-IDF算法对每条文本分词词汇进行统计,每个句子的每一个词会根据TF-IDF得到的词库映射而得到稀疏数值矩阵,通过控制最大维度(dim2),限定不同长短的句子有相同的维度,将两种编码方式进行列合并得到维度为dim1+dim2的数值矩阵,即Concatenate(向量1,向量2),该矩阵为聚类算法的输入;
步骤S340,进行文本聚类,基于词编码完成后的文本结果,利用kmeans算法对其进行训练,通过计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类,每分配一个样本,聚类的聚类中心会根据聚类中现有的对象被重新计算,这个过程将不断重复直到满足误差平方和局部最小,即可得到聚类后的结果;
步骤S350,由于聚类过程中会有噪声样本出现,利用每个簇的聚类中心,计算每个样本距离中心的欧氏距离,剔除距离中心较远的噪声样本,剩下文本进行关键词提取操作;
步骤S360,对每个簇的样本分别进行TF-IDF算法处理,每个簇都得到带有TF-IDF分值排序的词库。取该排序下分值最高的词汇作为该簇的关键词。
本实施例中,通过在词编码阶段运用不同的文本词向量编码算法组合表征文本在向量空间的映射,多维度对文本向量编码进行表示,可以提高聚类效果;通过两次TF-IDF的耦合处理,实现了文本的聚类以及自动生成类别关键词的功能,该过程无需自建停用词库,输入文本数据集,模型即可输出聚类结果以及对应每个类别的关键词概要,可以减少人工操作,提升自动化处理程度;将TF-IDF的全局统计优势与Word2vec的上下文预测优势相结合,可以有效增加文本的特征维度,提高文本间的编码差异性,有利于后续的聚类算法处理;上述方法可以实现所有参数的自适应,使用时无需手动调整参数设定,输出的结果稳定、鲁棒性较高。
在一个实施例中,如图4所示,提供了另一个文本关键词提取方法的流程示意图,具体包括以下步骤:
步骤S410,对待提取文本进行停用词过滤处理,得到过滤文本;
步骤S420,对过滤文本进行分词处理,得到候选关键词;
步骤S431,对候选关键词进行词向量编码,得到第一特征向量;
步骤S432,对候选关键词进行词频逆文本频率编码,得到编码矩阵;通过约束编码矩阵的维度,得到第二特征向量;
步骤S440,通过将第二特征向量与第一特征向量相拼接,得到关键词向量;
步骤S450,根据关键词向量对候选关键词进行聚类,得到关键词聚类簇;
步骤S460,通过选取关键词聚类簇内的候选关键词,得到簇内关键词;
步骤S470,对簇内关键词进行词频逆文本频率编码,得到簇内特征向量;根据簇内特征向量,得到簇内关键词对应的关键词分值;根据关键词分值对簇内关键词进行排序,得到关键词排序结果;
步骤S480,根据关键词排序结果,得到待提取文本的目标关键词。
应该理解的是,虽然图2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种文本关键词提取装置500,包括:获取模块510、编码模块520、向量聚合模块530、提取模块540,其中:
获取模块510,用于获取待提取文本的候选关键词;
编码模块520,用于对候选关键词进行词向量编码,得到第一特征向量,以及,对候选关键词进行词频逆文本频率编码,得到第二特征向量;
向量聚合模块530,用于根据第一特征向量和第二特征向量,得到候选关键词对应的关键词向量;
提取模块540,用于根据关键词向量,在候选关键词中选取待提取文本的目标关键词。
在一个实施例中,上述提取模块540,还包括:
聚类模块542,用于根据关键词向量对候选关键词进行聚类,得到关键词聚类簇;
选取模块544,用于通过选取关键词聚类簇内的候选关键词,得到簇内关键词;
排序模块546,用于通过对簇内关键词进行排序,得到关键词排序结果;
提取模块548,用于根据关键词排序结果,得到待提取文本的目标关键词。
在一个实施例中,上述排序模块546,还用于通过对簇内关键词进行词频逆文本频率编码,得到簇内关键词对应的关键词分值;根据关键词分值对簇内关键词进行排序,得到关键词排序结果。
在一个实施例中,上述聚类模块542,还用于根据预设的聚类簇数,在关键词向量中选取聚类中心初始向量;根据关键词向量与聚类中心初始向量的向量距离,对关键词向量进行聚类,得到向量聚类结果;根据向量聚类结果,得到聚类中心更新向量;计算聚类中心更新向量与聚类中心初始向量之间的向量差值;判断向量差值是否超过预设的差值阈值;若是,则以聚类中心更新向量为聚类中心初始向量,返回根据关键词向量与聚类中心初始向量的向量距离,对关键词向量进行聚类,得到向量聚类结果的步骤;若否,则根据向量聚类结果对候选关键词进行聚类,得到关键词聚类簇。
在一个实施例中,上述聚类模块542,还用于计算关键词向量与聚类中心初始向量之间的向量距离;判断向量距离是否超过预设的距离阈值;若是,则剔除向量距离对应的关键词向量,得到去噪后关键词向量,并根据去噪后关键词向量与聚类中心初始向量的向量距离,对去噪后关键词向量进行聚类,得到向量聚类结果。
在一个实施例中,上述获取模块510,还用于对待提取文本进行停用词过滤处理,得到过滤文本;对过滤文本进行分词处理,得到候选关键词。
在一个实施例中,上述编码模块520,还用于对候选关键词进行词频逆文本频率编码,得到编码矩阵;通过约束编码矩阵的维度,得到第二特征向量;上述向量聚合模块530,还用于通过将第二特征向量与第一特征向量相拼接,得到关键词向量。
关于文本关键词提取装置的具体限定可以参见上文中对于文本关键词提取方法的限定,在此不再赘述。上述文本关键词提取装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储文本关键词提取数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种文本关键词提取方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:获取待提取文本的候选关键词;对候选关键词进行词向量编码,得到第一特征向量,以及,对候选关键词进行词频逆文本频率编码,得到第二特征向量;根据第一特征向量和第二特征向量,得到候选关键词对应的关键词向量;根据关键词向量,在候选关键词中选取待提取文本的目标关键词。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据关键词向量对候选关键词进行聚类,得到关键词聚类簇;通过选取关键词聚类簇内的候选关键词,得到簇内关键词;通过对簇内关键词进行排序,得到关键词排序结果;根据关键词排序结果,得到待提取文本的目标关键词。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:通过对簇内关键词进行词频逆文本频率编码,得到簇内关键词对应的关键词分值;根据关键词分值对簇内关键词进行排序,得到关键词排序结果。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据预设的聚类簇数,在关键词向量中选取聚类中心初始向量;根据关键词向量与聚类中心初始向量的向量距离,对关键词向量进行聚类,得到向量聚类结果;根据向量聚类结果,得到聚类中心更新向量;计算聚类中心更新向量与聚类中心初始向量之间的向量差值;判断向量差值是否超过预设的差值阈值;若是,则以聚类中心更新向量为聚类中心初始向量,返回根据关键词向量与聚类中心初始向量的向量距离,对关键词向量进行聚类,得到向量聚类结果的步骤;若否,则根据向量聚类结果对候选关键词进行聚类,得到关键词聚类簇。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:计算关键词向量与聚类中心初始向量之间的向量距离;判断向量距离是否超过预设的距离阈值;若是,则剔除向量距离对应的关键词向量,得到去噪后关键词向量,并根据去噪后关键词向量与聚类中心初始向量的向量距离,对去噪后关键词向量进行聚类,得到向量聚类结果。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:对待提取文本进行停用词过滤处理,得到过滤文本;对过滤文本进行分词处理,得到候选关键词。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:对候选关键词进行词频逆文本频率编码,得到编码矩阵;通过约束编码矩阵的维度,得到第二特征向量;通过将第二特征向量与第一特征向量相拼接,得到关键词向量。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取待提取文本的候选关键词;对候选关键词进行词向量编码,得到第一特征向量,以及,对候选关键词进行词频逆文本频率编码,得到第二特征向量;根据第一特征向量和第二特征向量,得到候选关键词对应的关键词向量;根据关键词向量,在候选关键词中选取待提取文本的目标关键词。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据关键词向量对候选关键词进行聚类,得到关键词聚类簇;通过选取关键词聚类簇内的候选关键词,得到簇内关键词;通过对簇内关键词进行排序,得到关键词排序结果;根据关键词排序结果,得到待提取文本的目标关键词。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:通过对簇内关键词进行词频逆文本频率编码,得到簇内关键词对应的关键词分值;根据关键词分值对簇内关键词进行排序,得到关键词排序结果。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据预设的聚类簇数,在关键词向量中选取聚类中心初始向量;根据关键词向量与聚类中心初始向量的向量距离,对关键词向量进行聚类,得到向量聚类结果;根据向量聚类结果,得到聚类中心更新向量;计算聚类中心更新向量与聚类中心初始向量之间的向量差值;判断向量差值是否超过预设的差值阈值;若是,则以聚类中心更新向量为聚类中心初始向量,返回根据关键词向量与聚类中心初始向量的向量距离,对关键词向量进行聚类,得到向量聚类结果的步骤;若否,则根据向量聚类结果对候选关键词进行聚类,得到关键词聚类簇。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:计算关键词向量与聚类中心初始向量之间的向量距离;判断向量距离是否超过预设的距离阈值;若是,则剔除向量距离对应的关键词向量,得到去噪后关键词向量,并根据去噪后关键词向量与聚类中心初始向量的向量距离,对去噪后关键词向量进行聚类,得到向量聚类结果。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:对待提取文本进行停用词过滤处理,得到过滤文本;对过滤文本进行分词处理,得到候选关键词。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:对候选关键词进行词频逆文本频率编码,得到编码矩阵;通过约束编码矩阵的维度,得到第二特征向量;通过将第二特征向量与第一特征向量相拼接,得到关键词向量。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。