一种文档标签确定方法、装置、电子设备及存储介质与流程

allin2024-05-31  98

1.本技术涉及计算机领域,尤其涉及一种文档标签确定方法、装置、电子设备及存储介质。
背景技术
::2.随着互联网和移动互联网的深入发展,以及知识工程、人工智能的兴起和快速发展,文本数据出现爆发式的增长。同时,很多企业也都有大量的文档文本数据,例如:商业合同、产品介绍手册、解决方案、部署安装文档等专业行很强的文档。为了便于统一管理,以及使用时能够更方便找到所需的文档数据,需要把这些文档数据集中管理起来,并且提供查询、推荐等智能化服务。为了方便查询、推荐等智能化服务,通常需要利用文档名或者文档标题来代表文档,但是文档名或文档标题中的信息是有限的,很多文档的一些重要信息并没有在文档名或文档标题中体现出来,或者体现的不完整,这就给查询、推荐等服务准确性带来了困难。可以对文档打标签实现对文档的标签化,利用文档的标签信息可以使查询、推荐等服务更加智能化,提高准确率,从而提升查询效率,相关技术中,通过人工对文档进行打标签,打标签速度慢,效率低下。3.因此,如何确定文档的标签成了亟需解决的问题。技术实现要素:4.本技术提供了一种文档标签确定方法、装置、电子设备及存储介质,以解决相关技术中,通过人工打标签速度慢、效率低下的问题。5.第一方面,本技术提供了一种文档标签确定方法,所述文档标签确定方法,包括:获取待确定标签文档的关键词,通过所述关键词对所述待确定标签文档进行标签识别,所述关键词为根据所述待确定标签文档的文本内容和/或关联信息确定的;当通过所述关键词对所述文档进行标签识别失败时,对所述待确定标签文档进行标签提取,以提取所述待确定标签文档对应的临时标签;根据确定指令将所述临时标签中的至少一个标签,作为所述待确定标签文档的正式标签。6.可选地,获取待确定标签文档的关键词,通过所述关键词对所述待确定标签文档进行标签识别,包括:获取所述待确定标签文档的文档内容,对所述文档内容进行分词,以获得所述文档内容的高频词,将所述高频词作为所述关键词;在标签词典中查找与所述关键词对应的标签,所述标签词典中设置有关键词和标签的映射关系;当在所述标签词典中未查找到所述关键词对应的标签时,确定通过所述关键词对所述文档进行标签识别失败。7.可选地,获取待确定标签文档的关键词,通过所述关键词对所述待确定标签文档进行标签识别,包括:获取所述待确定标签文档的所述关联信息,所述关联信息包括:文档作者信息、文档上传者信息、文档下载者信息,将所述关联信息作为所述关键词;根据所述关键词在目标图谱数据库中查找所述关联信息对应的目标信息,所述目标信息包括:行业信息和/或领域信息;当在在目标图谱数据库中未查找到所述关联信息对应的目标信息时,确定通过所述关键词对所述文档进行标签识别失败。8.可选地,对所述待确定标签文档进行标签提取,以提取所述待确定标签文档对应的临时标签,包括:获取所述待确定标签文档的文档内容,对所述文档内容进行新词识别,以确定所述待确定标签文档的新词集,所述新词集中包括多个新词;通过主题提取模型对所述待确定标签文档进行主题提取,以确定所述待确定标签文档的主题集,所述主题集中包括多个主题;确定所述新词集和所述主题集的交集,根据所述新词集和所述主题集的交集确定所述待确定标签文档对应的所述临时标签。9.可选地,根据所述新词集和所述主题集的交集,确定所述待确定标签文档对应的所述临时标签,包括:当所述新词集和所述主题集的交集不为空时,将所述新词集和所述主题集的交集词语作为所述待确定标签文档的临时标签。10.可选地,根据所述新词集和所述主题集的交集,确定所述待确定标签文档对应的所述临时标签,包括:当所述新词集和所述主题集的交集为空时,获取所述主题集中每个主题对应的目标词语;将每个主题的对应的所述目标词语作为所述待确定标签文档的临时标签。11.可选地,根据确定指令将所述临时标签中的至少一个所述临时标签,作为所述待确定标签文档的正式标签,包括:将确定的所述临时标签展示在交互界面上;接收用于确定所述正式标签的所述确定指令,根据所述确定指令将所述临时标签中的至少一个,作为所述待确定标签文档的正式标签;根据确定指令将所述临时标签中的至少一个所述临时标签,作为所述待确定标签文档的正式标签之后,所述方法还包括:将所述正式标签与和所述正式标签存在关联关系的词语添加到标签词典中。12.第二方面,本技术提供了一种文档标签确定装置,所述文档标签确定装置,包括:标签识别模块,所述标签识别模块用于获取待确定标签文档的关键词,通过所述关键词对所述待确定标签文档进行标签识别,所述关键词为根据所述待确定标签文档的文本内容和/或关联信息确定的;标签提取模块,所述标签提取模块用于当通过所述关键词对所述文档进行标签识别失败时,对所述待确定标签文档进行标签提取,以提取所述待确定标签文档对应的临时标签;标签确定模块,所述标签确定模块用于根据确定指令将所述临时标签中的至少一个所述临时标签,作为所述待确定标签文档的正式标签。13.第三方面,提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;14.存储器,用于存放计算机程序;15.处理器,用于执行存储器上所存放的程序时,实现第一方面任一项实施例所述的文档标签确定方法的步骤。16.第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面任一项实施例所述的文档标签确定方法的步骤。17.本技术实施例提供的上述技术方案与现有技术相比具有如下优点:18.本方案可以应用于在信息检索
技术领域
:进行知识增强检索,本技术实施例提供的该方法,包括:获取待确定标签文档的关键词,通过所述关键词对所述待确定标签文档进行标签识别,所述关键词为根据所述待确定标签文档的文本内容和/或关联信息确定的;当通过所述关键词对所述文档进行标签识别失败时,对所述待确定标签文档进行标签提取,以提取所述待确定标签文档对应的临时标签;根据确定指令将所述临时标签中的至少一个标签,作为所述待确定标签文档的正式标签,其中,首先对待确定标签进行标签识别,在失败时进行标签提取,最后根据确定指令确定待确定标签文档的正式标签,也即通过多种方法来自动确定待确定标签文档的标签,避免了人工对待确定标签文档进行打标签,导致打标签速度慢,效率低下的问题,提升了确定待确定标签文档的标签的效率,同时,通过多种方法来确定待确定标签文档的标签,提升了确定标签的准确性,进而提升了用户体验。附图说明19.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。20.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。21.图1为本技术实施例提供的一种文档标签确定方法的流程示意图;22.图2为本技术实施例提供的一种文档标签确定装置的基本结构示意图;23.图3为本技术实施例提供的一种电子设备的结构示意图。具体实施方式24.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。25.图1为本技术实施例提供的一种文档标签确定方法的流程示意图,如图1所示,所述文档标签确定方法包括但不限于:26.s101、获取待确定标签文档的关键词,通过所述关键词对所述待确定标签文档进行标签识别,所述关键词为根据所述待确定标签文档的文本内容和/或关联信息确定的;27.s102、当通过所述关键词对所述文档进行标签识别失败时,对所述待确定标签文档进行标签提取,以提取所述待确定标签文档对应的临时标签;28.s103、根据确定指令将所述临时标签中的至少一个标签,作为所述待确定标签文档的正式标签。29.应当理解的是,本实施例提供的文档标签确定方法可以应用在终端和/或服务器,也即,该文档标签确定方法中的各个步骤可以是由终端或是服务器单独执行,也可以是由终端和服务器组合完成;其中,终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(personaldigitalassistant,pda)、便捷式媒体播放器(portablemediaplayer,pmp)、导航装置、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字tv、台式计算机等固定终端。后续描述中将以服务器单独执行该文档标签确定方法为例进行说明。30.应当理解的是,获取待确定标签文档的关键词之前,所述方法还包括:获取待确定标签文档;其中,获取待确定标签文档的方式包括但不限于:通过可交互界面接收输入指令,所述输入指令用于确定待确定标签文档;或是,通过任一传输方式获取相关人员传输的待确定标签文档,其中传输方式包括但不限于:无线网络、有线网络、存储介质、近场通信中的至少一种,例如,通过无线网络的方式从互联网上获取待确定标签文档。31.在本实施例的一些示例中,获取待确定标签文档的关键词,通过所述关键词对所述待确定标签文档进行标签识别,包括:获取所述待确定标签文档的文档内容,对所述文档内容进行分词,以获得所述文档内容的高频词,将所述高频词作为所述关键词;在标签词典中查找与所述关键词对应的标签,所述标签词典中设置有关键词和标签的映射关系;当在所述标签词典中未查找到所述关键词对应的标签时,确定通过所述关键词对所述文档进行标签识别失败。应当理解的是,在获取待确定标签文档之后,还需要获取标签词典,在获取标签词典后,通过对获取到的标签词典体系建立倒排索引,即把标签类别对应到关键词的映射转换为关键词到标签类别的映射,每个关键词都对应着一个或多个文档标签;得到的倒排索引结构如下:“关键词1”:“文档标签1”,“文档标签2”,例如:关键词{产品介绍}对应的标签:平台介绍、系统介绍、产品文档、产品说明、产品简介、产品能力介绍、产品功能介绍、产品说明书、产品规格、产品白皮书等;可以理解的是,建立倒排索引的目的是加快匹配检索,能够快速的根据关键词查找到文档标签例。32.承接上例,获取所述待确定标签文档的文档内容,对所述文档内容进行分词,以获得所述文档内容的高频词,将所述高频词作为所述关键词;其中,获取待确定标签文档的文档内容,包括但不限于:获取待确定标签文档的全部文档的内容、获取待确定标签文档的首页文档的内容、获取待确定标签文档的尾页文档的内容、获取待确定标签文档的除首页和尾页外的文档的内容中的至少一个;可以理解的是,获取待确定标签文档后,对待确定标签文档的内容信息按页码和每页内容进行处理,在一些示例中,首页内容可以概括全文内容,因此可以仅获取待确定标签文档的首页文档的内容,以获取文档内容的高频词,若首页是目录,则需要对目录页进行过滤,只选取非目录首页的内容。33.可以理解的是,以获取待确定标签文档的首页文档内容为例,首先对首页内容按'?','?','。','!','!',';',';',',',',','\n'进行分句,然后获取分词工具,对各个分句进行分词,分词后用停用词词典进行过滤,并进行词频统计,按词频频率从大到小排序,词频频率超过阈值的分词则为高频词,例如,词频频率在前20%的分词为高频词。应当理解的是,上述阈值还可以根据待确定标签文档内容的大小来确定;具体的,例如,以获取待确定标签文档的首页文档的内容,且设置文档阈值为50字符为例,首先,判断文档首页内容字符的数量是否大于阈值,如果大于阈值,则取已排序词频的前n个作为高频词,n可以根据场景需求进行灵活配置;如果小于阈值,则取已排序词频的前m个作为高频词,m也可以根据场景需求进行灵活配置,其中m小于n。在一些示例中,若文档首页内容字符的数量大于阈值,但是获取的分词数量小于n,则按词频频率取前m个词,最后根据选取的前n或m个关键词,在上述建立的倒排索引的标签词典中进行匹配查找;可以理解的是,本实施例并不对分句方式进行限制,可以由相关人员灵活确定;同时,本实施例也并不对分词的方式进行限制,可以由相关人员灵活设置,例如,采用分词工具包jieba进行分词,jieba是python的一个中文分词库,具有高性能、准确率、可扩展性等特点。34.承接上例,在标签词典中查找与所述关键词对应的标签时,若标签词典中存在查找的关键词,且该关键词对应至少一个标签时,则判定在所述标签词典中查找到所述关键词对应的标签,确定通过所述关键词对所述文档进行标签识别成功;若标签词典中不存在查找的关键词,或查找的关键词没有对应的标签时,则判定在所述标签词典中未查找到所述关键词对应的标签,确定通过所述关键词对所述文档进行标签识别失败。35.在本实施例的一些示例中,获取待确定标签文档的关键词,通过所述关键词对所述待确定标签文档进行标签识别,包括:获取所述待确定标签文档的所述关联信息,所述关联信息包括:文档作者信息、文档上传者信息、文档下载者信息,将所述关联信息作为所述关键词;根据所述关键词在目标图谱数据库中查找所述关联信息对应的目标信息,所述目标信息包括:行业信息和/或领域信息;当在在目标图谱数据库中为查找到所述关联信息对应的目标信息时,确定通过所述关键词对所述文档进行标签识别失败。可以理解的是,其中目标图谱数据库中为企业图谱数据库,能够查看关联信息对应人员所属的标签以及属性信息。36.应当理解的是,在获取到待确定标签文档后,将待确定标签文档存入预定的搜索引擎,该搜索引擎中包含所有上传的文档,以及每个文档的文件名、标题、内容、页码、作者、上传者、下载量以及下载者信息;也即,通过该搜索引擎可以直接获取文档的{文档作者信息、文档上传者信息、文档下载者信息},然后执行以下步骤中的至少一个步骤:37.使用文档作者信息去目标图谱数据库中查找作者所属的行业信息标签或是其他标签;38.使用文档上传者信息去目标图谱数据库中查找上传者所属的行业信息标签或是其他标签;39.使用文档下载者信息去目标图谱数据库中查找下载者所属的行业信息标签或是其他标签;40.承接上例,如果查找成功,则给文档打上相关的行业信息标签或者是查找到的其他标签。在一些示例中,除了直接使用文档下载者信息去目标图谱数据库中查找下载者所属的行业信息标签或是其他标签之外,还可以对文档下载次数设置阈值,仅当下载次数大于阈值时,用下载者的信息去企业图谱数据库中查找下载者所属的行业信息和别的关键信息,如果查找成功,则给文档打上下载者所属行业的标签和别的关键标签,同时更新文档标签信息。41.可以理解的是,本实施例并不限制使用的搜索引擎,在一些示例中,可以使用elasticsearch搜索引擎,该搜索引擎包括所有上传的文档,以及每个文档的文件名、标题、内容、页码、作者、上传者、下载量以及下载者信息。42.应当理解的是,根据上述记载可知,获取待确定标签文档的关键词,通过所述关键词对所述待确定标签文档进行标签识别至少包括两种方式,第一种标签识别方式为:获取所述待确定标签文档的文档内容,对所述文档内容进行分词,以获得所述文档内容的高频词,将所述高频词作为所述关键词;在标签词典中查找与所述关键词对应的标签,所述标签词典中设置有关键词和标签的映射关系;当在所述标签词典中未查找到所述关键词对应的标签时,确定通过所述关键词对所述文档进行标签识别失败;第二种标签识别方式为:获取所述待确定标签文档的所述关联信息,所述关联信息包括:文档作者信息、文档上传者信息、文档下载者信息,将所述关联信息作为所述关键词;根据所述关键词在目标图谱数据库中查找所述关联信息对应的目标信息,所述目标信息包括:行业信息和/或领域信息;当在在目标图谱数据库中为查找到所述关联信息对应的目标信息时,确定通过所述关键词对所述文档进行标签识别失败。可以理解的是,上述两种标签识别方式可以单独实施,也可以一起实施,且实施是不分前后顺序。43.可以理解的是,当通过标签识别的方式无法为文档打上对应的标签时,说明文档标签词典体系没有覆盖全部文档或者文档是较前沿或者新型的文档。此时需要进行标签提取,来获得文档的标签,在本实施例的一些示例中,对所述待确定标签文档进行标签提取,以提取所述待确定标签文档对应的临时标签,包括:获取所述待确定标签文档的文档内容,对所述文档内容进行新词识别,以确定所述待确定标签文档的新词集,所述新词集中包括多个新词;通过主题提取模型对所述待确定标签文档进行主题提取,以确定所述待确定标签文档的主题集,所述主题集中包括多个主题;确定所述新词集和所述主题集的交集,根据所述新词集和所述主题集的交集确定所述待确定标签文档对应的所述临时标签。44.其中,在获取所述待确定标签文档的文档内容,对所述文档内容进行新词识别,以确定所述待确定标签文档的新词集这一步骤中,本示例并不限制新词识别方式,可以由相关人员灵活设置,例如,可以采用基于统计的无监督学习算法,基于待确定标签文档内容,枚举可能的所有新词,用自由度、凝固度进行过滤,得到新词集。45.承接上例,具体的,如采用n-gram算法进行新词识别,n-gram算法是一种基于统计语言模型的算法。n-gram是基于一个假设:第n个词出现与前n-1个词相关,而与其他任何词不相关。如果我们有一个由m个词组成的序列t(或者说一个句子),词序列为w1,w2,w3...wm,则n-gram语言模型公式为:46.p(t)=p(w1,w2,w3,...,wm)=p(w1)*p(w2|w1)*p(w3|w1w2)***p(wn|w1w2w3...)利用马尔科夫链当中的假设,即当前这个词仅仅跟前面几个有限的词相关。47.当n=2时,是一个二元模型(bigrammodel),即为[0048][0049]例如,中文:今天天气好吗?,它的bigram依次为:[0050]今天,天天,天气,气好,好吗[0051]从待确定标签文档内容中抽取连续的字的组合片段,这些字组合片段最多包含n个字,同时统计每个字组合的频率。[0052]然后进行凝固度计算,凝固度就是一个字组合片段里面字与字之间的紧密程度。有了上面词频统计,可以计算相邻字的凝固度。例如:三个字的字符串凝固度为:[0053][0054]其中p(abc)表示三个字一起出现的概率,p(ab)、p(bc)表示两个字一起出现个概率,p(a)、p(c)表示一个字单独出现的概率。也就是枚举所有可能的切法。[0055]设置凝固度的最小阈值,只有大于阈值的片段,才能构成一个集合m。[0056]最后进行左右信息熵计算,左右信息熵越大成词的可能性越大。信息熵的计算公式如下:[0057][0058]在该公式中,w是一个随机变量,表示左词或右词,a是所有左词(右词)去重后的集合,p(w)是该左词(右词)的概率分布。随机变量w在计算左熵时为左词,在计算右熵时为右词。分别计算左右熵,取左右信息熵中的最小值。[0059]给左右熵设定一个阈值,当最小值大于阈值时,从备选新词m中筛选出符合阈值的新词集合r。[0060]其中,在通过主题提取模型对所述待确定标签文档进行主题提取,以确定所述待确定标签文档的主题集这一步骤中,本示例并不限制使用的主题提取模型,可以由相关人员灵活设置;[0061]承接上例,例如,采用lda主体提取模型,lda模型可以将文档集中每篇待确定标签文档的主题以概率分布的形式给出,通过分析一些待确定标签文档抽取出它们的主题出来后,可以根据主题进行文档打标签。可以用生成模型来看文档和主题这两件事。所谓生成模型,就是一篇文章的每个词都是通过“以一定概率选择了某个主题,并从这个主题中以一定概率选择某个文档”这样一个过程得到的。那么,如果要生成一篇文档,它里面的每个词语出现的概率为:[0062][0063]其中p(词语|文档)表示每篇待确定标签文档中每个单词的词频,即出现的概率;p(词语|主题)表示每个主题中每个单词的出现概率;p(主题|文档)表示每篇待确定标签文档中每个主题出现的概率。[0064]在lda模型中,一篇待确定标签文档生成的方式如下:[0065]从狄利克雷分布中取样生成待确定标签文档i的主题分布;[0066]从主题的多项式分布中取样生成待确定标签文档i第j个词的主题;[0067]从狄利克雷分布中取样生成主题对应的词语分布;[0068]从词语的多项式分布中采样最终生成词语;[0069]可以理解的是,用开源库gensim做主题模型提取时,需要设定主题的个数。设定待确定标签文档大小阈值,当待确定标签文档字符的个数大于阈值时,主题个数可以设定大一点,例如:10,当待确定标签文档字符个数小于阈值时,主题个数可以设定小一点,例如:3。还可以设定每个主题排名靠前的主题词个数,这里统一设定为10个,也即,得到一个主题集,主题集里面包含多个主题。[0070]例如:topic0[0071][('system',0.07887071),[0072]('human',0.056233782),[0073]('interface',0.0562044),[0074]('eps',0.05613238),[0075]('trees',0.05582566),[0076]('generation',0.03381113),[0077]('random',0.033807028),[0078]('unordered',0.033805348),[0079]('computer',0.03380298),[0080]('binary',0.033802323)]。[0081]在本实施例的一些示例中,根据所述新词集和所述主题集的交集,确定所述待确定标签文档对应的所述临时标签,包括:当所述新词集和所述主题集的交集不为空时,将所述新词集和所述主题集的交集词语作为所述待确定标签文档的临时标签。在本实施例的一些示例中,根据所述新词集和所述主题集的交集,确定所述待确定标签文档对应的所述临时标签,包括:当所述新词集和所述主题集的交集为空时,获取所述主题集中每个主题对应的目标词语;将每个主题的对应的所述目标词语作为所述待确定标签文档的临时标签。[0082]承接上例,也即,分别获取新词集和主题集中包含的词语,取两者的交集(即包含在新词集中的词,又包含在主题集中的词),交集可以作为待确定标签的文档的临时标签。若存在交集为空的情况,则取每个主题集的前三个主题作为临时标签。[0083]在本实施例的一些示例中,根据确定指令将所述临时标签中的至少一个所述临时标签,作为所述待确定标签文档的正式标签,包括:将确定的所述临时标签展示在交互界面上;接收用于确定所述正式标签的所述确定指令,根据所述确定指令将所述临时标签中的至少一个,作为所述待确定标签文档的正式标签;然后将确定的临时标签通过可交互界面展示出来,以使得相关人员获悉临时标签,然后接收相关人员的确定指令,将至少一个或多个临时标签做为文档的正式标签。[0084]在本实施例的一些示例中。根据确定指令将所述临时标签中的至少一个所述临时标签,作为所述待确定标签文档的正式标签之后,所述方法还包括:将所述正式标签与和所述正式标签存在关联关系的词语添加到标签词典中。[0085]本实施例提供的方法包括:获取待确定标签文档的关键词,通过所述关键词对所述待确定标签文档进行标签识别,所述关键词为根据所述待确定标签文档的文本内容和/或关联信息确定的;当通过所述关键词对所述文档进行标签识别失败时,对所述待确定标签文档进行标签提取,以提取所述待确定标签文档对应的临时标签;根据确定指令将所述临时标签中的至少一个标签,作为所述待确定标签文档的正式标签,其中,首先对待确定标签进行标签识别,在失败时进行标签提取,最后根据确定指令确定待确定标签文档的正式标签,也即通过多种方法来自动确定待确定标签文档的标签,避免了人工对待确定标签文档进行打标签,导致打标签速度慢,效率低下的问题,提升了确定待确定标签文档的标签的效率,同时,通过多种方法来确定待确定标签文档的标签,提升了确定标签的准确性,进而提升了用户体验。[0086]为了更好的理解本发明,本实施例提供一种更为具体的示例对本发明进行说明,其包括以下步骤:[0087]步骤1、数据准备[0088]1)获取标签词典,标签词典包括标签以及标签对应的关键词,例如:产品介绍:平台介绍、系统介绍、产品文档、产品说明、产品简介、产品能力介绍、产品功能介绍、产品说明书、产品规格、产品白皮书。[0089]2)分词工具包jieba,jieba是python的一个中文分词库,具有高性能、准确率、可扩展性等特点。[0090]3)elasticsearch搜索引擎,所有上传的文档都存在其中,包括文档的文件名、标题、内容、页码、上传者、下载量及下载者等信息。[0091]4)redis数据库,缓存标签词典和文档相关信息。[0092]5)企业图谱数据库,可以查看人物所属的标签以及属性信息。[0093]6)gensim,一个用于从文档中自动提取语义主题的python库,可以处理原生,非结构化的数值化文本(纯文本)。[0094]7)最新的停用词词典。[0095]步骤2、方法实现[0096]方法流程:首先分词工具加载标签词典,从elasticsearch(搜索服务器)中读取上传的待确定标签文档的标题、内容等字段信息,用分词工具对标题、内容进行分词,根据文件大小提取不同的高频词。[0097]对标签词典建立倒排索引,用高频词去倒排索引中搜索,确定待确定标签文档所对应的标签。[0098]根据从elasticsearch中读取上传文档的上传者、下载者等信息,确定待确定标签文档所属的标签。[0099]如果无法通过分词或者elasticsearch中的相关字段对待确定标签文档进行打标签,则需要根据新词发现算法和主题发现算法提取新的标签,并接收确定指令,从而为待确定标签文档打上新标签,并添加到标签词典体系中。[0100]步骤2.1、获取标签词典,并作为分词工具的自定义分词词典[0101]从elasticsearch中获取标签词典,将获取到的标签词典整理成列表的形式,列表不仅要包括标签对应的关键词,还有包括标签。[0102]可以灵活自定义标签,对一篇待确定标签文档,如果缺少一类标签,可以通过配置文件增加标签;如果已有的标签已经过时或者错误,可以通过配置文件删除或修改标签。因此每次从elasticsearch中获取标签词典,处理成列表,都要与前一次的标签词典列表进行对比,获取与前一次对比标签词典的变化,是否有增加、删除、修改标签及关键词。[0103]分词工具jieba可以直接向其分词词典中加载新词,但是要加载的新词全部起作用,加载新词的词频必须设置为较大的数字,这里设置为107。分词工具初次加载标签词典时,全部加载,后续每一次只需要加载新增、修改的标签词典,删除删掉的标签词典,这样不需要每次都全部加载,只需要加载、删除、修改标签变化的部分,能够加快处理速度,提升整体待确定标签文档打标性能。[0104]步骤2.2、获取标签词典,建立倒排索引[0105]从elasticsearch中获取标签词典,对获取到的标签词典建立倒排索引,即把标签类别对应到关键词的映射转换为关键词到标签的映射,每个关键词都对应着一个或多个文档标签。得到的倒排索引结构如下:[0106]“关键词1”:“文档标签1”,“文档标签2”……[0107]建立倒排索引的目的是加快匹配检索,能够快速的查找到文档标签。[0108]步骤2.3获取文档标题和内容信息[0109]获取待确定标签文档的标题和内容信息,对内容信息按页码和每页内容进行处理,获取首页内容,大部分首页内容可以概括全文内容。如果首页是目录,则需要对目录页进行过滤,只选取非目录首页的内容。[0110]通过配置文件,可以灵活配置处理的内容信息包括:处理全部文档内容,处理首页内容,处理尾页内容或者处理首页、尾页内容,默认处理首页内容信息。[0111]对首页内容按'?','?','。','!','!',';',';',',',',','\n'进行分句,使用步骤2.1加载词典后的分词工具进行分词,也就是先用标签词典进行分词,再使用分词工具进行分词,分词后用停用词词典进行过滤,并进行词频统计,按词频频率从大到小排序。[0112]设置文档内容大小阈值为50字符,判断待确定标签文档首页内容字符是否大于阈值50字符,如果大于阈值,则取已排序词频的前n个,n可以根据场景需求进行灵活配置;如果小于阈值,则取已排序词频的前m个,m也可以根据场景需求进行灵活配置。如果大于阈值,但是词频频率的最大值小于n,则按词频频率取前m个词。[0113]根据选取的前n或m个词,在步骤2.2建立的倒排索引中进行匹配查找,找到关键词对应的文档标签。[0114]步骤2.4处理待确定标签文档关联信息[0115]上传一篇待确定标签文档,针对待确定标签文档进行解析的处理,包括解析出作者、上传者、标题、内容等,然后将解析处理得到的所有相关信息存入elasticsearch,从elasticsearch中获取待确定标签文档作者信息、上传者的身份信息和下载者信息,用作者信息、上传者信息去企业图谱数据库中查找作者、上传者所属的行业信息以及别的关键信息,如果查找成功,则给待确定标签文档打上相关的行业信息标签或者别的类别标签。[0116]对下载次数设置阈值,当下载待确定标签文档的次数大于阈值时,用下载者的信息去企业图谱数据库中查找下载者所属的行业信息和别的关键信息,如果查找成功,则给待确定标签文档打上下载者所属行业的标签和别的关键标签,同时更新文档标签信息。[0117]步骤2.5新词发现[0118]当通过标签词典和待确定标签文档的关联信息无法为文档打上相应的标签时,说明文档标签词典没有覆盖全部文档或者文档是较前沿或者新型的文档。此时需要通过新词发现来发现一些新词来作为文档的标签,从而扩充到文档标签体系词典里。[0119]这里采用基于统计的无监督学习算法,基于待确定标签文档内容,枚举可能的所有新词,用自由度、凝固度进行过滤。[0120]步骤2.5.1获取词频:[0121]本示例使用n-gram算法来获取词频,其中n-gram是一种基于统计语言模型的算法。n-gram是基于一个假设:第n个词出现与前n-1个词相关,而与其他任何词不相关。如果我们有一个由m个词组成的序列t(或者说一个句子),词序列为w1,w2,w3...wm,则n-gram语言模型公式为:[0122]p(t)=p(w1,w2,w3,...,wm)=p(w1)*p(w2|w1)*p(w3|w1w2)***p(wn|w1w2w3...)利用马尔科夫链当中的假设,即当前这个词仅仅跟前面几个有限的词相关。[0123]当n=2时,是一个二元模型(bigrammodel),即为[0124][0125]例如,中文:今天天气好吗?,它的bigram依次为:[0126]今天,天天,天气,气好,好吗[0127]从待确定标签文档内容中抽取连续的字的组合片段,这些字组合片段最多包含n个字,同时统计每个字组合的频率。[0128]步骤2.5.2凝固度计算[0129]凝固度就是一个字组合片段里面字与字之间的紧密程度。有了上面词频统计,可以计算相邻字的凝固度。例如:三个字的字符串凝固度为:[0130][0131]其中p(abc)表示三个字一起出现的概率,p(ab)、p(bc)表示两个字一起出现个概率,p(a)、p(c)表示一个字单独出现的概率。也就是枚举所有可能的切法。[0132]设置凝固度的最小阈值,只有大于阈值的片段,才能构成一个集合m。[0133]步骤2.5.3左右熵左右信息熵越大成词的可能性越大。信息熵的计算公式如下:[0134][0135]在该公式中,w是一个随机变量,表示左词或右词,a是所有左词(右词)去重后的集合,p(w)是该左词(右词)的概率分布。随机变量w在计算左熵时为左词,在计算右熵时为右词。分别计算左右熵,取左右信息熵中的最小值。[0136]给左右熵设定一个阈值,当最小值大于阈值时,从备选新词m中筛选出符合阈值的新词集合r。[0137]步骤2.6主题集获取[0138]本示例使用lda来进行主题集获取,其中lda是一种主题模型,它可以将待确定标签文档集中每篇待确定标签文档的主题以概率分布的形式给出,通过分析一些待确定标签文档抽取出它们的主题出来后,可以根据主题进行文档打标签。可以用生成模型来看待确定标签文档和主题这两件事。所谓生成模型,就是一篇文章的每个词都是通过“以一定概率选择了某个主题,并从这个主题中以一定概率选择某个文档”这样一个过程得到的。那么,如果要生成一篇文档,它里面的每个词语出现的概率为:[0139][0140]其中p(词语|文档)表示每篇待确定标签文档中每个单词的词频,即出现的概率;p(词语|主题)表示每个主题中每个单词的出现概率;p(主题|文档)表示每篇待确定标签文档中每个主题出现的概率。[0141]在lda模型中,一篇文档生成的方式如下:[0142]从狄利克雷分布中取样生成待确定标签文档i的主题分布[0143]从主题的多项式分布中取样生成待确定标签文档i第j个词的主题[0144]从狄利克雷分布中取样生成主题对应的词语分布[0145]从词语的多项式分布中采样最终生成词语[0146]用开源库gensim做主题模型提取时,需要设定主题的个数。设定待确定标签文档大小阈值,当文档字符的个数大于阈值时,主题个数可以设定大一点,例如:10,当待确定标签文档字符个数小于阈值时,主题个数可以设定小一点,例如:3。还可以设定每个主题排名靠前的主题词个数,这里统一设定为10个。[0147]例如:topic0[0148][('system',0.07887071),[0149]('human',0.056233782),[0150]('interface',0.0562044),[0151]('eps',0.05613238),[0152]('trees',0.05582566),[0153]('generation',0.03381113),[0154]('random',0.033807028),[0155]('unordered',0.033805348),[0156]('computer',0.03380298),[0157]('binary',0.033802323)][0158]步骤2.2.7、标签词提取与确认[0159]根据上述步骤2.5提取出的新词集和步骤2.6提取出的主题集,取两者的交集,交集可以作为文档的临时标签。如果交集为空,则取每个主题的前三个词作为临时标签。临时标签通过前端展示出来,经过人工核准后,做为文档的正式标签,并写入elasticsearch的标签词典体系中,一种方式中,将正式标签作为关键词,其他临时标签作为标签文档写入elasticsearch的标签词典体系中,将正式标签写入标签词典,key为正式标签,关键词为全部正式标签的集合。例如,正式标签有2个,分别为:[0160]产品介绍、安装手册,则写elasticsearch[0161]为2条信息:1、文档标签:产品介绍,关键词为:产品介绍、安装手册。2、文档标签:安装手册,关键词为:产品介绍、安装手册。[0162]本实施例提供的文档标签确定方法,充分利用标签词典与标签自动扩展来对待确定标签文档进行打标签。首先获取待确定标签文档的全部内容,然后用标签词典关键词去匹配文档内容相关的字段,如果匹配成功,则标签关键词对应的标签即为待确定标签文档的标签。并且充分利用了作者、上传者、下载者等信息进行标签的关联扩展,对待确定标签文档进行打标签。如果标签词典无法匹配待确定标签文档相关内容,则说明标签词典没有覆盖待确定标签文档的标签,此时需要标签自动扩展,通过新词发现和主题发现提取新的标签,经过相关人员确定后,从而为待确定标签文档打上新标签,并添加到标签词典中。利用标签词典与标签自动扩展来对文档进行打标签,可以使文档标签更加精确和丰富,从而使文档的查询、推荐等服务更加智能化,提高准确率,从而提升查询效率。[0163]基于相同的构思,本实施例提供一种文档标签确定装置,如图2所示,所述文档标签确定装置,包括:[0164]标签识别模块1,所述标签识别模块1用于获取待确定标签文档的关键词,通过所述关键词对所述待确定标签文档进行标签识别,所述关键词为根据所述待确定标签文档的文本内容和/或关联信息确定的;[0165]标签提取模块2,所述标签提取模块2用于当通过所述关键词对所述文档进行标签识别失败时,对所述待确定标签文档进行标签提取,以提取所述待确定标签文档对应的临时标签;[0166]标签确定模块3,所述标签确定模块3用于根据确定指令将所述临时标签中的至少一个所述临时标签,作为所述待确定标签文档的正式标签。[0167]应当理解的是,本实施例提供的文档标签确定装置的各个模块能够组合实现上述文档标签确定方法的各个步骤,达到与上述文档标签确定方法相同的技术效果,在此不在赘述。[0168]如图3所示,本技术实施例提供了一种电子设备,包括处理器111、通信接口112、存储器113和通信总线114,其中,处理器111,通信接口112,存储器113通过通信总线114完成相互间的通信,[0169]存储器113,用于存放计算机程序;[0170]在本技术一个实施例中,处理器111,用于执行存储器113上所存放的程序时,实现前述任意一个方法实施例提供的文档标签确定方法,包括:[0171]获取待确定标签文档的关键词,通过所述关键词对所述待确定标签文档进行标签识别,所述关键词为根据所述待确定标签文档的文本内容和/或关联信息确定的;[0172]当通过所述关键词对所述文档进行标签识别失败时,对所述待确定标签文档进行标签提取,以提取所述待确定标签文档对应的临时标签;[0173]根据确定指令将所述临时标签中的至少一个标签,作为所述待确定标签文档的正式标签。[0174]本技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述任意一个方法实施例提供的文档标签确定方法的步骤。[0175]需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。[0176]以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。当前第1页12当前第1页12
技术特征:
1.一种文档标签确定方法,其特征在于,所述文档标签确定方法,包括:获取待确定标签文档的关键词,通过所述关键词对所述待确定标签文档进行标签识别,所述关键词为根据所述待确定标签文档的文本内容和/或关联信息确定的;当通过所述关键词对所述文档进行标签识别失败时,对所述待确定标签文档进行标签提取,以提取所述待确定标签文档对应的临时标签;根据确定指令将所述临时标签中的至少一个标签,作为所述待确定标签文档的正式标签。2.根据权利要求1所述的方法,其特征在于,获取待确定标签文档的关键词,通过所述关键词对所述待确定标签文档进行标签识别,包括:获取所述待确定标签文档的文档内容,对所述文档内容进行分词,以获得所述文档内容的高频词,将所述高频词作为所述关键词;在标签词典中查找与所述关键词对应的标签,所述标签词典中设置有关键词和标签的映射关系;当在所述标签词典中未查找到所述关键词对应的标签时,确定通过所述关键词对所述文档进行标签识别失败。3.根据权利要求1所述的方法,其特征在于,获取待确定标签文档的关键词,通过所述关键词对所述待确定标签文档进行标签识别,包括:获取所述待确定标签文档的所述关联信息,所述关联信息包括:文档作者信息、文档上传者信息、文档下载者信息,将所述关联信息作为所述关键词;根据所述关键词在目标图谱数据库中查找所述关联信息对应的目标信息,所述目标信息包括:行业信息和/或领域信息;当在在目标图谱数据库中未查找到所述关联信息对应的目标信息时,确定通过所述关键词对所述文档进行标签识别失败。4.根据权利要求1所述的方法,其特征在于,对所述待确定标签文档进行标签提取,以提取所述待确定标签文档对应的临时标签,包括:获取所述待确定标签文档的文档内容,对所述文档内容进行新词识别,以确定所述待确定标签文档的新词集,所述新词集中包括多个新词;通过主题提取模型对所述待确定标签文档进行主题提取,以确定所述待确定标签文档的主题集,所述主题集中包括多个主题;确定所述新词集和所述主题集的交集,根据所述新词集和所述主题集的交集确定所述待确定标签文档对应的所述临时标签。5.根据权利要求4所述的方法,其特征在于,根据所述新词集和所述主题集的交集,确定所述待确定标签文档对应的所述临时标签,包括:当所述新词集和所述主题集的交集不为空时,将所述新词集和所述主题集的交集词语作为所述待确定标签文档的临时标签。6.根据权利要求4所述的方法,其特征在于,根据所述新词集和所述主题集的交集,确定所述待确定标签文档对应的所述临时标签,包括:当所述新词集和所述主题集的交集为空时,获取所述主题集中每个主题对应的目标词语;
将每个主题的对应的所述目标词语作为所述待确定标签文档的临时标签。7.根据权利要求1-6任一项所述的方法,其特征在于,根据确定指令将所述临时标签中的至少一个所述临时标签,作为所述待确定标签文档的正式标签,包括:将确定的所述临时标签展示在交互界面上;接收用于确定所述正式标签的所述确定指令,根据所述确定指令将所述临时标签中的至少一个,作为所述待确定标签文档的正式标签;根据确定指令将所述临时标签中的至少一个所述临时标签,作为所述待确定标签文档的正式标签之后,所述方法还包括:将所述正式标签与和所述正式标签存在关联关系的词语添加到标签词典中。8.一种文档标签确定装置,其特征在于,所述文档标签确定装置,包括:标签识别模块,所述标签识别模块用于获取待确定标签文档的关键词,通过所述关键词对所述待确定标签文档进行标签识别,所述关键词为根据所述待确定标签文档的文本内容和/或关联信息确定的;标签提取模块,所述标签提取模块用于当通过所述关键词对所述文档进行标签识别失败时,对所述待确定标签文档进行标签提取,以提取所述待确定标签文档对应的临时标签;标签确定模块,所述标签确定模块用于根据确定指令将所述临时标签中的至少一个所述临时标签,作为所述待确定标签文档的正式标签。9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现权利要求1-7任一项所述的文档标签确定方法的步骤。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7任一项所述的文档标签确定方法的步骤。

技术总结
本申请涉及一种文档标签确定方法、装置、电子设备及存储介质,方法包括:获取待确定标签文档的关键词,通过关键词对所述待确定标签文档进行标签识别,所述关键词为根据所述待确定标签文档的文本内容和/或关联信息确定的;当通过所述关键词对所述文档进行标签识别失败时,对所述待确定标签文档进行标签提取,以提取所述待确定标签文档对应的临时标签;根据确定指令将所述临时标签中的至少一个标签,作为所述待确定标签文档的正式标签,其中,首先对待确定标签进行标签识别,在失败时进行标签提取,最后根据确定指令确定待确定标签文档的正式标签,也即通过多种方法来自动确定待确定标签文档的标签,与人工确定标签相比,提升了确定标签的速度。确定标签的速度。确定标签的速度。


技术研发人员:崔小波
受保护的技术使用者:北京明略昭辉科技有限公司
技术研发日:2022.03.28
技术公布日:2022/7/5
转载请注明原文地址: https://www.8miu.com/read-14077.html

最新回复(0)