掌桥专利:专业的专利平台
掌桥专利
首页

一种关键词提取方法、装置、存储介质及设备

文献发布时间:2023-06-19 09:38:30


一种关键词提取方法、装置、存储介质及设备

技术领域

本申请涉及人工智能技术领域,尤其涉及一种关键词提取方法、装置、存储介质及设备。

背景技术

随着移动互联网、物联网和人工智能(artificial intelligence,AI)技术的快速发展,每时每刻都在产生大量的文档信息,导致需要处理的文档信息量呈现几何级别的增长。由此,为了便于人们能够快速、准确的获取到有效的文档信息,通常会提取出文档的关键词,作为文档主要内容的提要,用以进行网页索引和为用户进行信息推荐等,以提高文档推荐结果和网页中文档检索结果的准确性。

目前,对于文档中关键词的提取方法通常有两种:一种是采用无监督的方式来提取关键词,例如,可以利用词频-逆文档频率(term frequency–inverse documentfrequency,TF-IDF)对预先生成的候选关键词进行打分,以根据打分结果提取出文档中的关键词。但这种提取方式需要统计大规模的语料,否则逆文档频率(IDF)的统计结果不够准确。且由于这种提取方式仅考虑了词语的统计属性,而并没有考虑对词语词义的真正理解,导致提取出的关键词的准确度不够高,不能准确地表征文档的关键内容。而另一种常用的关键词提取方法是采用有监督的方式进行提取,其核心思想是将关键词提取过程转化为一个有监督的机器学习问题,例如,可以将关键词提取转化为多标签文本分类问题,先利用双向长短期记忆网络(bidirectional long short-term memory,Bi-LSTM)对文档进行编码,并利用注意力(attention)机制获取文档对于每个候选关键词的表示,然后再利用一个多层全连接神经网络对每个候选关键词的表示进行二分类,以得到每个候选关键词的置信度得分,进而可以根据该置信度得分提取出文档中的关键词。但这种提取方式需要大量高质量的关键词标注语料作为训练数据进行模型训练,否则将无法训练出高精度的神经网络模型,然而实际业务中往往缺乏关键词标注数据,需要利用人工来标注大量的关键词,主观性强、难以量化,不仅标注效率低,而且还需要花费大量的人力资源,导致获取关键词标注语料的成本较高。

发明内容

本申请实施例提供了一种关键词提取方法、装置、存储介质及设备,有助于克服现有关键词提取方法的缺点,提高了关键词提取结果的准确性,并降低了提取成本。

第一方面,本申请提供了一种关键词提取方法,该方法包括:在进行关键词提取时,首先获取目标文档的文档属性,其中,文档属性用于表征目标文档的主题和语义信息,且目标文档包括多个候选关键词;然后,利用文档属性,计算候选关键词的第一得分,其中,第一得分用于表征候选关键词与文档属性的相关度,进而可以根据各个候选关键词的第一得分,从多个候选关键词中确定出目标关键词。

与传统技术相比,由于本申请实施例在提取目标文档的关键词时,考虑了目标文档中表征其主题和语义信息的文档属性,从而可以提高关键词提取结果的准确性,并且由于无需人工标注关键词的训练数据,进而也降低了关键词的提取成本,得到成本更低、准确性更高的提取结果。

一种可能的实现方式中,该方法还包括:利用无监督方法,计算候选关键词的第二得分;则根据第一得分,从多个候选关键词中确定目标关键词,包括:根据第一得分和第二得分,从多个候选关键词中确定目标关键词。这样,能够在充分考虑了利用无监督方法计算的候选关键词的得分的情况下,进一步提高关键词提取结果的准确性。

一种可能的实现方式中,利用文档属性,计算候选关键词的第一得分,包括:从预先构建的关键词-属性相关度字典中获取文档属性和候选关键词之间的相关度值,关键词-属性相关度字典中存储了关键词与文档属性之间的相关度值;根据文档属性和候选关键词之间的相关度值,计算候选关键词的第一得分。这样,能够利用预先构建的关键词-属性相关度字典,更加快速、准确的计算出候选关键词的第一得分。

一种可能的实现方式中,该方法还包括:利用预先构建的文档库和关键词词典,构建关键词-属性相关度字典;其中,文档库中存储了多个领域的多个文档、以及每个文档对应的文档属性;关键词词典中存储了多个领域的多个关键词。以保证关键词-属性相关度字典中文档属性和候选关键词之间的相关度值的准确性和完整性。

一种可能的实现方式中,利用预先构建的文档库和关键词词典,构建关键词-属性相关度字典,包括:提取文档库中各个文档的文档属性;计算关键词词典中每一关键词与文档库中每一文档属性之间的相关度;由每一关键词与每一文档属性,以及每一关键词与每一文档属性之间的相关度,形成关键词-属性相关度字典。从而能够构建一个准确性更高、覆盖范围更广的关键词-属性相关度字典。

一种可能的实现方式中,该方法还包括:对目标文档进行分词处理,得到多个分词词语,并从多个分词词语中选取满足预设条件的分词词语,作为候选关键词。这样,能够更加准确、快速的确定出目标文档包含的关键词。

一种可能的实现方式中,该方法还包括:对目标文档进行去噪预处理,得到预处理后的目标文档;则对目标文档进行分词处理,得到多个分词词语,并从多个分词词语中选取满足预设条件的分词词语,作为候选关键词,包括:对预处理后的目标文档进行分词处理,得到多个分词词语,并从多个分词词语中选取满足预设条件的分词词语,作为候选关键词。从而进一步保证了目标文档数据的准确性。

第二方面,本申请还提供了一种关键词提取装置,该装置包括:获取单元,用于获取目标文档的文档属性;其中,文档属性用于表征目标文档的主题和语义信息;目标文档包括多个候选关键词;第一计算单元,用于利用文档属性,计算候选关键词的第一得分;其中,第一得分用于表征候选关键词与文档属性的相关度;确定单元,用于根据第一得分,从多个候选关键词中确定目标关键词。

一种可能的实现方式中,该装置还包括:第二计算单元,用于利用无监督方法,计算候选关键词的第二得分;则确定单元具体用于:根据第一得分和所述第二得分,从多个候选关键词中确定目标关键词。

一种可能的实现方式中,第一计算单元具体用于:从预先构建的关键词-属性相关度字典中获取文档属性和候选关键词之间的相关度值,其中,关键词-属性相关度字典中存储了关键词与文档属性之间的相关度值;和根据文档属性和候选关键词之间的相关度值,计算候选关键词的第一得分。

一种可能的实现方式中,该装置还包括:构建单元,用于利用预先构建的文档库和关键词词典,构建关键词-属性相关度字典;其中,文档库中存储了多个领域的多个文档、以及每个文档对应的文档属性;关键词词典中存储了多个领域的多个关键词。

一种可能的实现方式中,构建单元具体用于:提取文档库中各个文档的文档属性;计算关键词词典中每一关键词与文档库中每一文档属性之间的相关度;和由每一关键词与每一文档属性,以及每一关键词与每一文档属性之间的相关度,形成关键词-属性相关度字典。

一种可能的实现方式中,该装置还包括:选取单元,用于对目标文档进行分词处理,得到多个分词词语,并从多个分词词语中选取满足预设条件的分词词语,作为候选关键词。

一种可能的实现方式中,该装置还包括:预处理单元,用于对目标文档进行去噪预处理,得到预处理后的目标文档;则选取单元具体用于:对预处理后的目标文档进行分词处理,得到多个分词词语,并从多个分词词语中选取满足预设条件的分词词语,作为候选关键词。

第三方面,本申请还提供了一种关键词提取设备,该关键词提取设备包括:存储器、处理器;

存储器,用于存储指令;处理器,用于执行存储器中的指令,执行上述第一方面及其任意一种可能的实现方式中的方法。

第四方面,本申请还提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述第一方面及其任意一种可能的实现方式中的方法。

从以上技术方案可以看出,本申请实施例具有以下优点:

本申请实施例在进行关键词提取时,首先获取目标文档的文档属性,其中,文档属性用于表征目标文档的主题和语义信息,且目标文档包括多个候选关键词;然后,利用文档属性,计算候选关键词的第一得分,其中,第一得分用于表征候选关键词与文档属性的相关度,进而可以根据各个候选关键词的第一得分,从多个候选关键词中确定出目标关键词。可见,由于本申请实施例在提取目标文档的关键词时,考虑了目标文档中表征其主题和语义信息的文档属性,从而可以提高关键词提取结果的准确性,并且由于无需人工标注关键词的训练数据,进而也降低了关键词的提取成本,得到成本更低、准确性更高的提取结果。

附图说明

图1为本申请实施例提供的人工智能主体框架的一种结构示意图;

图2为本申请实施例的应用场景示意图;

图3为本申请实施例提供的一种关键词提取方法的流程图;

图4为本申请实施例提供的一种关键词提取装置的结构框图;

图5为本申请实施例提供的一种关键词提取设备的结构示意图。

具体实施方式

本申请实施例提供了一种关键词提取方法、装置、存储介质及设备,提高了关键词提取结果的准确性,并降低了提取成本。

下面结合附图,对本申请的实施例进行描述。本领域普通技术人员可知,随着技术的发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。

首先对人工智能系统总体工作流程进行描述,请参见图1,图1示出的为人工智能主体框架的一种结构示意图,下面从“智能信息链”(水平轴)和“IT价值链”(垂直轴)两个维度对上述人工智能主题框架进行阐述。其中,“智能信息链”反映从数据的获取到处理的一列过程。举例来说,可以是智能信息感知、智能信息表示与形成、智能推理、智能决策、智能执行与输出的一般过程。在这个过程中,数据经历了“数据—信息—知识—智慧”的凝练过程。“IT价值链”从人智能的底层基础设施、信息(提供和处理技术实现)到系统的产业生态过程,反映人工智能为信息技术产业带来的价值。

(1)基础设施

基础设施为人工智能系统提供计算能力支持,实现与外部世界的沟通,并通过基础平台实现支撑。通过传感器与外部沟通;计算能力由智能芯片(CPU、NPU、GPU、ASIC、FPGA等硬件加速芯片)提供;基础平台包括分布式计算框架及网络等相关的平台保障和支持,可以包括云存储和计算、互联互通网络等。举例来说,传感器和外部沟通获取数据,这些数据提供给基础平台提供的分布式计算系统中的智能芯片进行计算。

(2)数据

基础设施的上一层的数据用于表示人工智能领域的数据来源。数据涉及到图形、图像、语音、文本,还涉及到传统设备的物联网数据,包括已有系统的业务数据以及力、位移、液位、温度、湿度等感知数据。

(3)数据处理

数据处理通常包括数据训练,机器学习,深度学习,搜索,推理,决策等方式。

其中,机器学习和深度学习可以对数据进行符号化和形式化的智能信息建模、抽取、预处理、训练等。

推理是指在计算机或智能系统中,模拟人类的智能推理方式,依据推理控制策略,利用形式化的信息进行机器思维和求解问题的过程,典型的功能是搜索与匹配。

决策是指智能信息经过推理后进行决策的过程,通常提供分类、排序、预测等功能。

(4)通用能力

对数据经过上面提到的数据处理后,进一步基于数据处理的结果可以形成一些通用的能力,比如可以是算法或者一个通用系统,例如,翻译,文本的分析,计算机视觉的处理,语音识别,图像的识别等等。

(5)智能产品及行业应用

智能产品及行业应用指人工智能系统在各领域的产品和应用,是对人工智能整体解决方案的封装,将智能信息决策产品化、实现落地应用,其应用领域主要包括:智能终端、智能交通、智能医疗、自动驾驶、平安城市等。

本申请可以应用于人工智能领域的自然语言处理领域中,下面将对落地到产品的应用场景进行介绍。

本申请实施例提供的关键词提取方法可以应用于包括终端设备和服务器设备的硬件场景中。参见图2,图2为本申请实施例的应用场景示意图,如图2所示,终端设备201作为数据收集设备,可以通过各种途径(如可以是人工输入、网络爬虫等方式)获取到采用本申请实施例实现关键词提取的文档(此处将其定义为目标文档),并将其输入至服务器设备202,以便服务器设备202中实现关键词提取功能的AI系统提取出目标文档的文档属性,其中,文档属性指的是从某一个方面来刻画目标文档的性质,如目标文档的分类、作者、来源等,其能够表征出目标文档的整个文档主题和整个文档的语义信息。同时,服务器设备202还可以通过对目标文档进行去噪、分词等数据处理操作,以确定出目标文档包含的候选关键词,从而可以利用目标文档的文档属性,计算出每一候选关键词的第一得分,其中,第一得分用于表征其对应的候选关键词与目标文档的文档属性的相关度,进而可以根据各个候选关键词的第一得分以及预设的选取规则,从多个候选关键词中确定出第一得分符合预设规则的、更为准确的目标关键词,用以作为目标文档的关键词。进一步的,服务器设备202在提取出目标文档的关键词后,还可以将该关键词提取结果发送至终端设备203(或终端设备201),用以进行后续的网页索引或信息推荐等处理。

其中,作为一种示例,终端设备201和终端设备203可以是同一终端设备,也可以是不同的终端设备,二者均可以为手机、平板、笔记本电脑、智能穿戴设备等,终端设备201可以通过多种途径获取文档、词典、字典等数据信息,并将其发送至服务器设备202进行后续处理。而服务器设备202是指能够与终端设备201和终端设备203进行通信的设备,并对终端设备201提供数据进行处理以及将处理结果发送至终端设备203的服务设备。应当理解,本申请实施例还可以应用于其他需要进行文档关键词提取的场景中,此处不再对其他应用场景进行一一列举。

基于以上应用场景,本申请实施例提供了一种关键词提取方法,该方法可应用于服务器设备202。如图3所示,该方法包括:

S301:获取目标文档的文档属性;其中,文档属性用于表征目标文档的主题和语义信息;目标文档包括多个候选关键词。

在本实施例中,将采用本实施例实现关键词提取的任一文档定义为目标文档。并且,本实施例不限制目标文档的语种类型,比如,目标文档可以是中文文档、或英文文档等;本实施例也不限制目标文档的长度,比如,目标文档可以是句子文档、也可以是篇章文档;本实施例也不限制目标文档的来源,比如,目标文档可以是来自于语音识别的结果,也可以是从网络的各个网站中收集到的网页文档数据;本实施例也不限制目标文档的类型,比如,目标文档可以是人们日常对话中的某句话,也可以是演讲稿、杂志文章、体育新闻、文学作品等中的部分文档。

需要说明的是,句子文档指的是一个句子,是各个词语的集合,篇章文档指的是一连串句子的集合。在获取句子文档或篇章文档作为待提取关键词的目标文档后,进一步可以根据文档属性的具体取值,采用相应的提取方法,提取出目标文档的文档属性,比如,可以利用朴素贝叶斯模型、最大熵模型或决策树等文档分类模型确定出目标文档的分类这一文档属性;还可以利用文档主题生成模型(latent dirichlet allocation,LDA)或潜在语义分析(latent semantic analysis,LSA)等模型提取出目标文档的主题这一文档属性,等等。并确定出目标文档包含的各个候选关键词,再按照后续步骤,根据文档属性,从这些候选关键词中确定出目标文档的关键词。

其中,目标文档的文档属性能够从某一个方面来刻画目标文档的性质,如目标文档的主题内容的分类(如体育类、娱乐类、军事类等)、情感(如积极、中性、消极等)、来源(如来自某网站、某报刊等)和文档的作者等,利用这些文档属性来表征目标文档的整个文档的主题和整个文档的语义信息。

具体来讲,目标文档的文档属性可以包括属性名和属性值,且每一属性名对应至少一个属性值,属性名描述了目标文档在某一方面的属性,而属性值则描述了目标文档在该方面的具体取值,例如,属性名“分类”可以用来描述目标文档的主题内容的归属类型,该属性名“分类”对应的属性值可以是“娱乐”、“体育”或“军事”等,对应描述了目标文档的主题内容的归属类型可以是娱乐类、体育类或军事类等,即,该目标文档可以是娱乐类的文档(如娱乐新闻文档)、体育类的文档(如体育新闻文档)或者是军事类的文档(如军事报道文档)等。基于此,可见,目标文档的文档属性对于目标文档中关键词的确定有着很强的指示作用。例如,假设目标文档的分类为体育类(如目标文档为一篇体育新闻文档),则目标文档中的表示体育比赛的名称和运动员的名字的词语很可能就是目标文档的关键词。

在本实施例中,一种可选的实现方式是,在获取到目标文档后,为了能够更加准确、快速的确定出其包含的关键词,首先需要对目标文档进行分词处理,以获取目标文档中包含的多个分词词语,并进一步从这多个分词词语中选取出满足预设条件的分词词语,作为候选关键词,进一步缩小关键词的确定范围。

并且,在一些实现方式中,在对目标文档进行分词处理之前,为了保证目标文档数据的准确性,还可以先对目标文档进行去噪等预处理操作,得到预处理后的目标文档。具体来讲,可以先将目标文档中的特殊符号或表情符号等无效数据过滤掉,再对过滤后的目标文档中英文大小写进行统一化、以及对中文繁简体进行统一化等归一化的预处理操作,并在得到预处理后的目标文档后,再对其进行分词处理,以得到各个准备的分词词语。接着,可以对各个分词词语进行词性标注,以确定各个词语各自对应的词性(如名称、动词、形容词等)。

进一步的,为了减少目标文档中关键词的冗余度,得到言简意赅且准确性更高的关键词,可以先确定出预处理后的目标文档中包含的命名实体词,这是因为命名实体词作为关键词的可能性更高。比如可以利用双向长短期记忆(bi-directional long short-term memory,biLSTM)网络或条件随机场(conditional random field,CRF)对预处理后的目标文档进行命名实体词识别,以确定出预处理后的目标文档包含的命名实体词,具体实现过程与相关方法一致,在此不再赘述。

基于此,可以根据预处理后的目标文档中各个分词词语的词性以及命名实体词的识别结果,从所有分词词语中选取满足预设条件的目标分词词语,作为候选关键词。其中,预设条件指的是预先设定的用于区分分词词语是否可以作为候选关键词的判定条件,具体条件内容可根据实际情况进行设定,本申请在此不进行限制。比如,可以将所有分词词语中出现频率高于预设阈值的词语作为候选关键词;或者是将词性为名词的词语以及由形容词和名词构成的名词短语作为候选关键词;或者是直接将识别出的命名实体词作为候选关键词;再或者,也可以直接利用预先构建的关键词词典,从所有分词词语中过滤出候选关键词,其中,需要说明的是,关键词词典指的是有人工预先整理出的所有其他各个领域多个文档中关键词的集合,如果预处理后的目标文档中的任何分词词语,出现在了关键词词典中,则可以将其作为候选关键词,用以进行后续处理。

这样,服务器设备在获取到目标文档的文档属性及目标文档包括的多个候选关键词后,可以利用部署在其上的实现关键词提取功能的AI系统,通过后续步骤S302-S303对后续关键词和文档属性的相关度进行计算,以根据计算结果,确定目标文档的关键词。

S302:利用文档属性,计算候选关键词的第一得分;其中,第一得分用于表征候选关键词与文档属性的相关度。

在本实施例中,通过步骤S301获取到目标文档的文档属性及目标文档包括的多个候选关键词后,进一步可以计算出表征候选关键词与文档属性之间的相关度的第一得分。具体计算公式如下:

其中,w表示目标文档中的候选关键词;P(v

在本实施例的一种可能的实现方式中,本步骤S302的具体实现过程可以包括下述步骤A-B:

步骤A:从预先构建的关键词-属性相关度字典中获取文档属性和候选关键词之间的相关度值,其中,关键词-属性相关度字典中存储了关键词与文档属性之间的相关度值。

在本实现方式中,为了快速、准确的确定出候选关键词与各个文档属性对应的各个属性值之间的相关度,用以代入上述公式(1),计算候选关键词的第一得分,首先可以从预先构建的关键词-属性相关度字典中获取与目标文档的文档属性相匹配的属性(即从预先构建的关键词-属性相关度字典中查询出目标文档的文档属性),同时从中获取与目标文档的候选关键词相匹配的关键词(即从预先构建的关键词-属性相关度字典中查询出目标文档的候选关键词),进一步可以从关键词-属性相关度字典中获取到二者之前相关度值。

需要说明的是,关键词-属性相关度字典中存储了大量的不同的文档属性对应的不同属性值与各个不同的关键词之间的相关度。在一些实现方式中,关键词-属性相关度字典是利用预先构建的文档库和关键词词典构建的,其中,文档库中存储了多个领域的多个文档、以及每个文档对应的文档属性,关键词词典中存储了多个领域的多个关键词,可以采用网络爬虫或其他形式从网页或其他自媒体渠道获取到各个领域的文档、文档属性以及关键词等数据来构建文档库和关键词词典。

具体来讲,一种可选的实现方式是,关键词-属性相关度字典的构建过程可以包括下述步骤A1-A3:

步骤A1:提取文档库中各个文档的文档属性。

在本实现方式中,在构建了包含多个领域的多个文档的文档库后,进一步可以提取出各个文档对应的各个文档属性,并且,针对不同的文档属性,可以采用不同的提取方式。接下来,本实施例将以确定文档的“分类”和“主题”这两个文档属性为例进行简单介绍,而其他文档属性的提取过程可参照相关技术的实现方案,在此不再一一赘述。

(1)确定文档的分类的实现过程如下:

需要说明的是,文档的分类通常是由人工定义的,也是从文档的主题内容的角度对文档的一种划分方式。为了从不同的粒度来刻画文档的主题内容,可以设计层次化的分类体系,比如,可以利用一级类、二级类、三级类等多级逐层向下细化文档的具体分类。其中,一级类含义通常比较抽象,二级类和三级类等的含义逐渐向下具体化,例如,对于各个信息流文档来说,可以将这些文档划分为娱乐、体育、军事、社会等一级类,进一步的,还可以在体育分类下,继续将文档分为篮球、足球等二级类,再进一步的,还可以在篮球分类下可以继续分为职业篮球联赛、大学生篮球联赛等三级类。并且,在利用分类模型确定文档的分类时,通常是需要人工预先标注大量的“文档-分类”数据作为训练数据,然后利用这些训练数据对初始的文档分类模型进行训练,进而可以利用训练好的文档分类模型对文档进行分类。其中,初始的文档分类模型可以是朴素贝叶斯模型、最大熵模型、决策树等常用的文档分类模型,也可以是其他基于深度学习的文本分类模型,如利用卷积神经网络对文文档进行分类的算法(textcnn)等。

(2)确定文档的主题的实现过程如下:

需要说明的是,文档的主题通常是通过采用常见的主题模型(topic model)对文档进行处理后得到的。其中,主题模型指的是以非监督学习的方式对文档的隐含语义结构进行聚类的统计模型。常见的主题模型有LDA,LSA等。

还需要说明的,在提取出文档库中各个文档的所有文档属性的同时,也可以确定出每一文档属性各自对应的各个属性值(即不同文档属性对应了不同的属性值),且属性值可以是固定值,也可以是一个文档属性的概率分布情况,例如,对于一篇文档的“分类”这一文档属性来说,其对应的属性值可以是娱乐或体育等一个固定值,也可以是属于娱乐和体育的概率值,如该篇文档属于娱乐类的概率可以是0.9,属于体育类的概率可以是0.1。

进一步的,在提取出各个文档的文档属性和对应的属性值后,可将其与对应的各个文档一并存储在文档库中,用以进行后续步骤的计算。

步骤A2:计算关键词词典中每一关键词与文档库中每一文档属性之间的相关度。

在本实现方式中,通过步骤A1提取出文档库中各个文档的所有文档属性和对应的属性值后,进一步可以计算出关键词词典中每一关键词与文档库中每一文档属性的属性值之间的相关度。

具体来讲,当文档属性对应的属性值为固定值时,关键词词典中的关键词与文档库中的属性值之间的相关度的计算公式如下:

其中,R

举例说明:假设文档库D中共有3篇文档,分别为d1、d2和d3,且d1和d2属于体育类,d3属于娱乐类,而关键词“郭某”在文档库D的各个文档中出现的总次数为10次,其中,在文档d1中出现了3次、在文档d2中出现了5次、在文档d3中出现了2次,那么对于“分类”这个文档属性来说,可以通过上述公式(2)计算出关键词“郭某”与属性值“体育”之间的相关度为0.8,即,(3+5)/10=0.8;同理,可以计算出关键词“郭某”与属性值“娱乐”之间的相关度为0.2,即,2/10=0.2。

此外,当文档属性对应的属性值为概率分布值时,关键词词典中的关键词与文档库中的属性值之间的相关度的计算公式如下:

其中,R

举例说明:仍假设文档库D中共有3篇文档,分别为d1、d2和d3。其中,d1属于体育类的概率为0.9,属于娱乐类的概率为0.1。d2属于体育类的概率为0.7,属于娱乐类的概率为0.3。d3属于体育类的概率为0.2,属于娱乐类的概率为0.8,而关键词“郭某”在文档库D的各个文档中出现的总次数仍为10次,具体的,在文档d1中出现了3次、在文档d2中出现了5次、在文档d3中出现了2次,那么对于“分类”这个文档属性来说,可以通过上述公式(3)计算出关键词“郭某”与属性值“体育”之间的相关度为0.66,即,(3*0.9+5*0.7+2*0.2)/10=0.66;同理,可以计算出关键词“郭某”与属性值“娱乐”之间的相关度为0.34,即,(3*0.1+5*0.3+2*0.8)/10=0.34。

步骤A3:由每一关键词与每一文档属性,以及每一关键词与每一文档属性之间的相关度,形成关键词-属性相关度字典。

在本实现方式中,通过步骤A2计算出关键词词典中每一关键词与文档库中每一文档属性的属性值之间的相关度后,进一步的,可以利用每一关键词与每一文档属性,以及每一关键词与每一文档属性的属性值之间的相关度,形成关键词-属性相关度字典,用以进行后续计算。

需要说明的是,为了便于进行相关度查询,也可以对于每一文档属性均构建一个关键词-属性相关度字典,且该字典中存储了该文档属性对应的各个属性值、各个关键词,以及其中每一属性值与每一关键词之间的相关度。

步骤B:根据文档属性和候选关键词之间的相关度值,计算候选关键词的第一得分。

在本实现方式中,在通过上述步骤A从预先构建的关键词-属性相关度字典中文档属性和候选关键词之间的相关度值(即R

S303:根据第一得分,从多个候选关键词中确定目标关键词。

在本实施例中,通过步骤S302计算出每一候选关键词的第一得分后,进一步可以通过判断各个候选关键词的第一得分是否满足预设的选取规则,来选取最终的目标关键词。其中,预设的选取规则可根据实际情况和经验值进行设定,本申请实施例对其具体的取值不进行限制,比如,可以将预设的选取规则设定为选择第一得分较高的前m(可取值为任意整数)个候选关键词作为目标关键词,或者,可以将预设的选取规则设定为选择第一得分高于n分(可取值为任意非负数)的所有候选关键词均作为目标关键词,再或者,可以将预设的选取规则设定为选择第一得分高于n分的前m个关键词作为目标关键词等等。

在本实施例的一种可能的实现方式中,为了进一步提高关键词提取结果的准确性,还可以利用无监督方法,计算候选关键词的第二得分,然后再根据第一得分和第二得分的综合结果,从多个候选关键词中确定出目标关键词。

具体来讲,在本实现方式中,由于无监督的方法实现较为简单,可以将其对应的提取结果与上述提取结果相结合,以确定出更为准确的目标关键词。具体的,在通过上述步骤S301获取到目标文档的多个候选关键词后,进一步可以利用常见的无监督方法计算出这些候选关键词能够作为目标关键词的得分(此处将其定义为第二得分),以TF-IDF这一无监督方法为例,候选关键词的第二得分的计算公式如下:

S

其中,S

需要说明的是,为了进一步提高候选关键词的第二得分的准确性,还可以利用多种常见的无监督方法分别计算候选关键词的第二得分,再将得到的所有第二得分进行加权平均计算,以得到最终的准确性更高的第二得分。

进一步的,在确定出候选关键词的第一得分和第二得分后,可以对二者进行综合处理,以计算出候选关键词的最终得分,用以确定出目标关键词。最终得分的具体计算公式如下:

S=S

其中,S表示候选关键词w的最终得分;S

在此基础上,在计算出每一候选关键词的最终得分后,进一步可以通过判断各个候选关键词的最终得分是否满足预设的确定规则,来确定出目标关键词。其中,与预设的选取规则同理,预设的确定规则也是根据实际情况和经验值进行设定的,本申请实施例对其具体的取值不进行限制,比如,可以将预设的确定规则设定为将最终得分较高的前t(可取值为任意整数)个候选关键词作为目标关键词,或者,可以将预设的确定规则设定为将最终得分高于f分(可取值为任意非负数)的所有候选关键词均作为目标关键词,再或者,可以将预设的确定规则设定为将第一得分高于f分的前t个关键词作为目标关键词等等。

举例说明:假设目标文档的标题为:“重温《步履不停》,悟日本导演是枝裕和电影中的父子人生哲思”,目标文档的文档内容为:“说起家庭,每一个男人都绕不开一个话题,那就是父子关系。在父子相处的一生中,或有作为儿子的叛逆,或有作为父亲的无奈,这都是所有男人终其一生都在探索的命题。《步履不停》中对于父子相处生活的书写和细节刻画,温暖又不温情,平实中蕴含着矛盾和冲突的暗流,戳中了我内心的痛点,唤起了我对于家庭关系和生活的反思。这部电影也是日本导演是枝裕和最满意的一部,可以说是他的巅峰佳作。影片获第3届亚洲电影大奖,是枝裕和也因此获得最佳导演,豆瓣评分8.8分。这是被冠以“电影诗人”的是枝裕和导演第一次从内心的体验和感悟进行电影叙事的冒险,灵感来自母亲临终前的陪伴与回忆,讲述的是一个普通家庭长子忌日相聚的普通两天一夜。《步履不停》大部分影评都从家庭与时间主题入手,解读其中的爱与隔阂。但是,最触动我的还是其中父与子的刻画,不仅是导演人生经历的反映,更是社会时代化的表现。今天怡非就换个角度,从父子关系的叙事艺术、主题呈现、符号解读三方面进行分析,并结合导演是枝裕和电影风格谈谈此部电影带来的思考”。

首先,在对上述目标文档进行预处理及分词操作后,可以得到该目标文档的候选关键词为:是枝裕和、步履不停、电影、父子、日本导演、两天一夜、父与子、影片、影评、诗人、家庭、豆瓣评分、家庭关系、导演、冒险、父子关系。然后,对该目标文档进行分类,可以得到该目标文档属于娱乐类的概率为0.9913635849952698,属于影视类的概率为0.007857623510062695,属于影视类的概率为0.00040638275095261633。接着,再利用上述公式(1)、(4)和(5)可以计算出总得分靠前的10个候选关键词为:是枝裕和、电影、步履不停、日本导演、影评、父子关系、父子、两天一夜、父与子、影片,这10个候选关键词的得分分别是0.8491847591106054、0.3180766030204272、0.20264372364551553、0.11128570889518727、0.06614821126009365、0.060119279952710186、0.04562916513726069、0.042790203045320656、0.03430414511557347、0.030885619601073038。

而如果仅利用目前常见的无监督方法提取该目标文档的关键词时,确定出的总得分靠前的10个候选关键词为:是枝裕和、步履不停、电影、父子、日本导演、父子关系、两天一夜、父与子、影评、诗人,这10个候选关键词的得分分别是1.0510089395270272、0.6938648998986487、0.41465086270270274、0.15200450597972975、0.14041675554054053、0.1395570945945946、0.11790977972972974、0.09479145405405404、0.0913635554054054、0.07512666891891892。

可见,本申请提取的关键词更为准确,即,提取出的“影评”,“影片”等词语相对“父子”,“诗人”等词语来说,更能体现该目标文档的主题内容和语义信息,重要程度(关键性)也更高。

综上,本实施例提供的一种关键词提取方法,在对目标文档进行关键词提取时,首先获取目标文档的文档属性,其中,文档属性用于表征目标文档的主题和语义信息,且目标文档包括多个候选关键词;然后,利用文档属性,计算候选关键词的第一得分,其中,第一得分用于表征候选关键词与文档属性的相关度,进而可以根据各个候选关键词的第一得分,从多个候选关键词中确定出目标关键词。可见,由于本申请实施例在提取目标文档的关键词时,考虑了目标文档中表征其主题和语义信息的文档属性,从而可以提高关键词提取结果的准确性,并且由于无需人工标注关键词的训练数据,进而也降低了关键词的提取成本,得到成本更低、准确性更高的提取结果。

为便于更好的实施本申请实施例的上述方案,下面还提供用于实施上述方案的相关装置。请参见图4所示,本申请实施例提供了一种关键词提取装置400。该装置400可以包括:获取单元401、第一计算单元402和确定单元403。其中,获取单元401用于支持装置400执行图3所示实施例中的S301。第一计算单元402用于支持装置400执行图3所示实施例中的S302。确定单元403用于支持装置400执行图3所示实施例中的S303。具体的,

获取单元401,用于获取目标文档的文档属性;其中,文档属性用于表征目标文档的主题和语义信息;目标文档包括多个候选关键词;

第一计算单元402,用于利用文档属性,计算候选关键词的第一得分;其中,第一得分用于表征候选关键词与文档属性的相关度;

确定单元403,用于根据第一得分,从多个候选关键词中确定目标关键词。

在本实施例的一种实现方式中,该装置还包括:

第二计算单元,用于利用无监督方法,计算所述候选关键词的第二得分;

确定单元403具体用于:

根据第一得分和第二得分,从多个候选关键词中确定目标关键词。

在本实施例的一种实现方式中,第一计算单元402具体用于:

从预先构建的关键词-属性相关度字典中获取文档属性和候选关键词之间的相关度值,其中,关键词-属性相关度字典中存储了关键词与文档属性之间的相关度值;和根据文档属性和候选关键词之间的相关度值,计算候选关键词的第一得分。

在本实施例的一种实现方式中,该装置还包括:

构建单元,用于利用预先构建的文档库和关键词词典,构建关键词-属性相关度字典;

其中,文档库中存储了多个领域的多个文档、以及每个文档对应的文档属性;关键词词典中存储了多个领域的多个关键词。

在本实施例的一种实现方式中,构建单元具体用于:

提取文档库中各个文档的文档属性;

计算关键词词典中每一关键词与文档库中每一文档属性之间的相关度;和由每一关键词与每一文档属性,以及每一关键词与每一文档属性之间的相关度,形成关键词-属性相关度字典。

在本实施例的一种实现方式中,该装置还包括:

选取单元,用于对目标文档进行分词处理,得到多个分词词语,并从多个分词词语中选取满足预设条件的分词词语,作为候选关键词。

在本实施例的一种实现方式中,该装置还包括:

预处理单元,用于对目标文档进行去噪预处理,得到预处理后的目标文档;

选取单元具体用于:

对预处理后的目标文档进行分词处理,得到多个分词词语,并从多个分词词语中选取满足预设条件的分词词语,作为候选关键词。

综上,本实施例提供的一种关键词提取装置,在对目标文档进行关键词提取时,首先获取目标文档的文档属性,其中,文档属性用于表征目标文档的主题和语义信息,且目标文档包括多个候选关键词;然后,利用文档属性,计算候选关键词的第一得分,其中,第一得分用于表征候选关键词与文档属性的相关度,进而可以根据各个候选关键词的第一得分,从多个候选关键词中确定出目标关键词。可见,由于本申请实施例在提取目标文档的关键词时,考虑了目标文档中表征其主题和语义信息的文档属性,从而可以提高关键词提取结果的准确性,并且由于无需人工标注关键词的训练数据,进而也降低了关键词的提取成本,得到成本更低、准确性更高的提取结果。

参见图5,本申请实施例提供了一种关键词提取设备500,该设备包括存储器501、处理器502和通信接口503,

存储器501,用于存储指令;

处理器502,用于执行存储器501中的指令,执行上述应用于图3所示实施例中的关键词提取方法;

通信接口503,用于进行通信。

存储器501、处理器502和通信接口503通过总线504相互连接;总线504可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

在具体实施例中,处理器502用于在进行关键词提取时,首先获取目标文档的文档属性,其中,文档属性用于表征目标文档的主题和语义信息,且目标文档包括多个候选关键词;然后,利用文档属性,计算候选关键词的第一得分,其中,第一得分用于表征候选关键词与文档属性的相关度,进而可以根据各个候选关键词的第一得分,从多个候选关键词中确定出目标关键词。该处理器502的详细处理过程请参考上述图3所示实施例中S301、S302和S303的详细描述,这里不再赘述。

上述存储器501可以是随机存取存储器(random-access memory,RAM)、闪存(flash)、只读存储器(read only memory,ROM)、可擦写可编程只读存储器(erasableprogrammable read only memory,EPROM)、电可擦除可编程只读存储器(electricallyerasable programmable read only memory,EEPROM)、寄存器(register)、硬盘、移动硬盘、CD-ROM或者本领域技术人员知晓的任何其他形式的存储介质。

上述处理器502例如可以是中央处理器(central processing unit,CPU)、通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application-specific integrated circuit,ASIC)、现场可编程门阵列(field programmable gatearray,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请实施例公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。

上述通信接口503例如可以是接口卡等,可以为以太(ethernet)接口或异步传输模式(asynchronous transfer mode,ATM)接口。

本申请实施例还提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述关键词提取方法。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本申请的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。

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

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

相关技术
  • 关键词提取方法、关键词提取装置和计算机可读存储介质
  • 关键词提取方法、关键词提取装置和计算机可读存储介质
技术分类

06120112239863