用于动态自动化内容发现的技术的制作方法

文档序号:13350601阅读:109来源:国知局
用于动态自动化内容发现的技术的制作方法

相关申请的交叉引用

本申请要求2015年5月29日提交的题为“technologyfordynamicautomatedcontentdiscovery”的序列号为14/725,290的美国发明专利申请的优先权。



背景技术:

内容发现是许多计算设备的常见用户任务。例如,当用户正在进行研究或起草文档时,用户可能希望从外部网站或其他内容源参考相关信息。在典型的系统中,用户手动地向搜索引擎提供一个或多个搜索项,然后评估搜索结果。通常,用户还必须手动同步或以其他方式将搜索结果与相关文档内容相关联。此外,许多文字处理系统不包括搜索特征,因此用户通常使用外部应用,诸如web浏览器。

关键短语提取是用于将文本缩短为表示该文本的最重要部分的短语、句子或其他词序列的过程。典型的关键短语提取算法对文本进行语法分析以产生关键短语列表。例如,关键短语提取算法可以对输入文本进行标记,将语音的部分分配给标记,并且使用分配的部分语音标签将标记组合成关键短语。命名实体识别(ner)算法可以将附加权重分配给与已知名词短语的字典中的条目匹配的候选关键短语。textrank算法基于输入文本来构建和分析图形以提取关键短语。

附图说明

本文描述的概念在附图中通过示例而非限制的方式进行了示出。为了示出的简单和清楚,附图中所示的元件不一定按比例绘制。在适当的情况下,附图标记在图中重复,以指示相对应的或相似的元素。

图1是用于动态自动内容发现的系统的至少一个实施例的简化框图;

图2是可以由图1的计算设备建立的环境的至少一个实施例的简化框图;

图3是可以由图1和图2的计算设备执行的用于动态自动内容发现的方法的至少一个实施例的简化流程图;

图4是示出了可以由图1和图2的计算设备建立的用户界面的示意图;

图5是可由图1和图2的计算设备执行的用于关键词提取方法的至少一个实施例的简化流程图;且

图6是示出了可以由图1和图2的计算设备执行的语义数据库查询的伪代码。

具体实施方式

虽然本公开的概念易于进行各种修改和替代形式,但是其具体实施例已经在附图中通过示例的方式示出,并且将在本文中进行详细描述。然而,应当理解,不意图将本公开的概念限制为所公开的特定形式,而是相反,意图是覆盖与本公开和所附权利要求一致的所有修改、等同内容和替代方案。

说明书中对“一个实施例”,“实施例”,“说明性实施例”等的提及表示所描述的实施例可以包括特定的特征、结构或特性,但是每个实施例可以或可以不必然包括该特定的特征、结构或特性。此外,这样的短语不一定指代相同的实施例。此外,当结合实施例描述特定的特征、结构或特性时,认为结合其他实施例来实现这样的特征、结构或特性在本领域技术人员的知识范围内,无论是否明确描述。此外,应当意识到,以“a,b和c中的至少一个”的形式包括在列表中的项目可以意味着(a);(b);(c);(a和b);(a和c);(b和c);或(a、b和c)。类似地,以“a,b或c中的至少一个”的形式列出的项目可以是(a);(b);(c);(a和b);(a和c);(b和c);或(a、b和c)。

在一些情况下,可以以硬件、固件、软件或其任何组合实现所公开的实施例。所公开的实施例还可以被实现为由一个或多个暂时的或非暂时的机器可读(例如,计算机可读)存储介质承载或存储的指令,其可由一个或多个处理器读取和执行。机器可读存储介质可以被实现为用于以机器可读的形式存储或发送信息的任何存储设备、机制或其他物理结构(例如,易失性或非易失性存储器、介质盘或其他介质设备)。

在附图中,可以以具体的布置和/或顺序示出一些结构或方法特征。然而,应当意识到,可能不需要这种具体的布置和/或顺序。相反,在一些实施例中,这些特征可以以与说明性图中所示的不同的方式和/或顺序来进行布置。另外,在特定附图中包括结构或方法特征并不意味着在所有实施例中都需要这样的特征,并且在一些实施例中可以不包括这些特征或者可以将其与其它特征组合。

现在参考图1,在说明性的实施例中,用于动态自动内容发现的系统100包括通过网络112进行通信的计算设备102、搜索引擎104和知识库服务器108。在使用中,如下面更详细描述的,计算设备102显示由用户选择的文档,例如在web浏览器、文字处理器或其他生产力应用中。计算设备102基于用户的上下文来识别文档的上下文部分,并从文档的上下文部分中提取一个或多个关键词。计算设备102可以使用模糊度得分来提取关键词,所述模糊度得分是通过查询可由知识库服务器108维护的语义数据库110计算的。计算设备102使用关键词来执行一个或多个内容搜索,例如通过将关键词提交给搜索引擎104。计算设备102将搜索结果呈现给用户,并且可以将每个搜索结果与文档中的相对应的关键词交互地相关联(例如,使用视觉突出显示)。因此,系统100提供自动内容搜索,其动态地调整到用户的当前上下文。因此,可以自动向用户提供上下文相关的搜索结果,而不会中断与文档进行的用户的主要交互,并且这些搜索结果可以随文档内容的改变而动态地更新。此外,通过使用基于语义数据库上的自动推理的模糊度得分来提取关键词,系统100可以比通过单独使用语法关键短语提取算法或字典查找提取关键词提供更好的更相关的结果。

计算设备102可以被实现为能够执行本文所描述的功能的任何类型的计算或计算机设备,包括但不限于计算机、台式计算机、工作站、膝上型计算机、笔记本计算机、平板计算机、移动计算设备、可穿戴计算设备、网络工具、web工具、分布式计算系统、基于处理器的系统和/或消费者电子设备。如图1所示,计算设备102示例性地包括处理器120、输入/输出子系统122、存储器124、数据存储装置126和通信电路128。当然,在其它实施例中,计算设备102可以包括其他或附加组件,例如在台式计算机中常见的那些(例如,各种输入/输出设备)。另外,在一些实施例中,说明性组件中的一个或多个可以并入另一组件或以其他方式形成另一组件的一部分。例如,在一些实施例中,存储器124或其部分可以并入处理器120中。

处理器120可以被实现为能够执行本文所描述的功能的任何类型的处理器。处理器120可以被实现为单核或多核处理器、数字信号处理器、微控制器或其他处理器或处理/控制电路。类似地,存储器124可以被实现为能够执行本文所描述的功能的任何类型的易失性或非易失性存储器或数据存储。在操作中,存储器124可以存储在计算设备102的操作期间使用的各种数据和软件,诸如操作系统、应用、程序、库和驱动器。存储器124经由i/o子系统122通信地耦合到处理器120,i/o子系统122可被实现为促进与处理器120、存储器124和计算设备102的其他组件的输入/输出操作的电路和/或组件。例如,i/o子系统122可以实现为或以其它方式包括存储器控制器集线器、输入/输出控制集线器、固件设备、通信链路(即,点对点链路、总线链路、电线、电缆、光导、印刷电路板迹线等)和/或促进输入/输出操作的其他组件和子系统。在一些实施例中,i/o子系统122可以形成片上系统(soc)的一部分,并且与处理器120、存储器124和计算设备102的其他组件一起被并入单个集成电路芯片上。

数据存储装置126可以被实现为被配置用于数据的短期或长期存储的任何类型的一个设备或多个设备,诸如例如存储器设备和电路、存储卡、硬盘驱动器、固态驱动器或其他数据存储设备。数据存储装置126可以存储一个或多个文档或其他用户可访问的内容。此外,在一些实施例中,数据存储装置126可以存储可用于自动内容发现的其他数据,例如内容数据、内容索引和/或语义数据。

计算设备102的通信电路128可以被实现为能够通过网络112实现计算设备102、搜索引擎104、知识库服务器108和/或其它远程设备之间的通信的任何通信电路、设备或其集合。通信电路128可以被配置为使用任何一种或多种通信技术(例如,有线或无线通信)和相关联的协议(例如,以太网、wi-wimax等)以实施这样的通信。

另外,计算设备102还可以包括显示器130。显示器130可以被实现为能够显示数字信息的任何类型的显示器,例如液晶显示器(lcd)、发光二极管(led)、等离子体显示器、阴极射线管(crt)或其他类型的显示设备。如下所述,显示器130可以用于向计算设备102的用户显示图形用户界面或其他信息。

搜索引擎104被配置为搜索内容的主体并返回一组搜索结果。例如,在一些实施例中,搜索引擎104可被实现为web搜索引擎、文件搜索引擎、专用域搜索引擎或任何其他搜索引擎。搜索引擎104可以存储、维护或以其它方式访问内容索引106以提供搜索结果。搜索引擎104可以被实现为能够执行本文描述的功能的任何类型的计算或计算机设备,包括但不限于计算机、多处理器系统、服务器、机架式服务器、刀片服务器、膝上型计算机、笔记本电脑、平板计算机、可穿戴计算设备、网络工具、web工具、分布式计算系统、基于处理器的系统和/或消费者电子设备。因此,搜索引擎104包括通常在服务器或类似计算设备中常见的组件和设备,诸如处理器、i/o子系统、存储器、数据存储设备和/或通信电路。搜索引擎104的这些各个组件可以类似于计算设备102的相对应的组件,其描述适用于搜索引擎104的相对应的组件,并且在本文中不重复,以免使本公开内容变得模糊。另外,在一些实施例中,搜索引擎104可以体现为由分布在网络112上并在公共或私有云中运行的多个计算设备形成的“虚拟服务器”。因此,虽然图1中示出了搜索引擎104实现为单个服务器计算设备,应当意识到,搜索引擎104可以实现为多个设备协同工作以促进下面描述的功能。

知识库服务器108被配置为允许客户端查询语义数据库110。语义数据库110维护特定知识领域的本体或其他结构化表示。例如,在一些实施例中,语义数据库110可以被体现为一般知识百科全书例如dbpedia的本体表示。当然,在一些实施例中,语义数据库110可以是专业化的或以其他方式配置用于特定的知识领域。知识库服务器108可以体现为能够执行本文描述的功能的任何类型的计算或计算机设备,包括但不限于计算机、多处理器系统、服务器、机架式服务器、刀片服务器、膝上型计算机、笔记本电脑、平板计算机、可穿戴计算设备、网络工具、web工具、分布式计算系统、基于处理器的系统和/或消费电子设备。因此,知识库服务器108包括通常在服务器或类似计算设备中常见的组件和设备,诸如处理器、i/o子系统、存储器、数据存储设备和/或通信电路。知识库服务器108的这些各个组件可以类似于计算设备102的相对应的组件,其描述适用于知识库服务器108的相对应的组件,并且在本文中不重复,以便不使本公开内容模糊。另外,在一些实施例中,知识库服务器108可以体现为由分布在网络112上并在公共或私有云中运行的多个计算设备形成的“虚拟服务器”。因此,虽然图1中示出了知识库服务器108被实现为单个服务器计算设备,但是应当意识到,知识库服务器108可以实现为多个设备协同工作以促进下面描述的功能。

如下面更详细地讨论的,计算设备102、搜索引擎104和知识库服务器108可以被配置为通过网络112彼此和/或与系统100的其他设备发送和接收数据。网络112可以被实现为任何数量的各种有线和/或无线网络。例如,网络112可以被实现为或以其它方式包括有线或无线局域网(lan)、有线或无线广域网(wan)、蜂窝网络和/或可公共访问的全球网络,如因特网。因此,网络112可以包括任何数量的附加设备,例如附加计算机、路由器和交换机,以促进系统100的设备之间的通信。

另外,虽然系统100被示为包括计算设备102、搜索引擎104和知识库服务器108,但是应当理解,这些设备的一些或全部功能可以组合成单个设备。例如,单个服务器设备可以维护内容索引106和语义数据库110。另外或者可替代地,在一些实施例中,计算设备102可以在本地维护内容索引106和/或语义数据库110。

现在参考图2,在说明性实施例中,计算设备102在操作期间建立环境200。说明性环境200包括文档上下文模块202、关键短语提取模块204、模糊度排序模块206、内容搜索模块208和用户界面模块210。环境200的各种模块可以被实现为硬件、固件、软件或其组合。例如,环境200的各种模块、逻辑和其他组件可以形成计算设备102的处理器120或其他硬件组件的一部分,或以其他方式由其建立。这样,在一些实施例中,环境200的模块中的任何一个或多个可以被实现为电路或电气设备的集合(例如,文档上下文电路、关键短语提取电路等)。

文档上下文模块202被配置为基于当前用户的上下文来确定文档的上下文部分。例如,文档上下文模块202可以被配置为识别文档中的在计算设备102的应用视口中可见的一部分或者文档中的用户最近访问的一部分。该文档包括文本信息,并且由用户选择,例如使用web浏览器、文字处理器或其他生产力应用。

关键短语提取模块204被配置为使用自动关键短语提取算法从文档或文档的上下文部分中提取一个或多个关键词。关键短语提取算法将重要性值分配给文档的词语。重要性值提供了文档的每个词语表示文档的内容或者被认为对文档的主题、含义或其他内容来说重要的良好程度的相对指示。每个关键词可以体现为从文档内容中选择的字词或短语。关键短语提取算法可以体现为语法文本分析算法、textrank算法或命名实体识别算法。关键短语提取模块204可以被配置为使用自动关键短语提取算法对文档的词语进行排序,以生成排序的词语列表。

模糊度排序模块206被配置为通过查询语义数据库110来计算排序的词语列表中每个词语的模糊度得分。每个词语的模糊度得分表示候选关键词的频率相对于知识库中的类和对象出现的频率。为了确定模糊度得分,模糊度排序模块206可以被配置为向知识库服务器108提交查询。模糊度排序模块206还被配置为基于排序的词语列表中的每个词语的相对应的模糊度得分来对排序的词语列表进行重新排序,以产生调整后的排序的词语列表。模糊度排序模块206还被配置为从调整后的排序的词语列表中选择关键词。例如,对语义数据库110的查询可以确定语义数据库110的任何概念是否包括特定词语。作为另一示例,语义数据库110的查询可以确定包括排序的词语列表中的每个词语的语义数据库110的概念的相对应的数量或相对应的类型的概念。

内容搜索模块208被配置为基于所提取的关键词执行自动内容搜索以生成一个或多个相对应的搜索结果。内容搜索模块208可以使用内容索引106来搜索,例如通过向搜索引擎104提交搜索请求。用户界面模块210被配置为向用户呈现一个或多个搜索结果,例如通过将搜索结果显示在显示器130上的图形用户界面中。用户界面模块210可以进一步被配置为将一个或多个搜索结果中的每一个与文档的上下文部分的相对应的关键词相关联。例如,用户界面模块210可以被配置为响应于对相对应的搜索结果的用户选择,以可视方式突出显示文档的上下文部分的相对应的关键词。

现在参考图3,在使用中,计算设备102可以执行用于动态自动内容发现的方法300。方法300从框302开始,其中计算设备102基于用户的上下文识别文档的上下文部分。该文档可以被实现为包括文本内容的任何网页、文本文件、办公室生产力文档或其他文档。文档的上下文部分可以体现为文档中的当前正在被用户查看、编辑或以其他方式访问的任何部分或子部分。例如,文档的上下文部分可以被体现为文档中的当前在由计算设备102建立的应用视口或其他可滚动视图中可见的一部分。作为另一示例,文档的上下文部分可以被实现文档中的作为用户最近访问的一部分,例如使用语音阅读器或其他辅助技术读给用户的最后20秒的音频。在一些实施例中,文档的上下文部分可以包括整个文档;换句话说,在一些实施例中,方法300可以分析整个文档。

在框304中,计算设备102从文档的上下文部分中提取一个或多个关键词。关键词包括从文档中提取的表示文档内容或者被认为对文档的主题、含义或其他内容重要的字词和/或短语。在一些实施例中,关键词可以是名词短语,即包括名词和与名词相关的例如冠词、介词、形容词和其他修饰语的其它字词的字词序列。计算设备102可以使用任何适当的关键短语提取算法或算法的组合来提取关键词。计算设备102可以提取任何数量的关键词;然而,在一些实施例中,提取的关键词的数量可以与文档的上下文部分的长度成比例。在一些实施例中,在框306中,计算设备102执行自动自然语言处理(nlp)算法来提取关键词。例如,计算设备102可以执行语法算法、textrank算法、命名实体识别(ner)算法或另一个nlp算法。计算设备102可以根据由nlp算法确定的重要性值对文档的词语进行排序。如上所述,重要性值提供了文档的每个词语表示文档的内容或者被认为对文档的主题、含义或其他内容重要的良好程度的相对指示。在一些实施例中,在框308中,计算设备102可以通过使用语义数据库110计算每个关键词的模糊度来对关键词进行排序。具有较高模糊度量度的词语(即,更模糊的词语)可以被排序为比具有较低模糊度的词语(即,不太模糊的词语)更低。下面结合图5进一步描述用于提取关键词包括计算模糊度量度的方法的一个实施例。

在框310中,计算设备102基于所提取的关键词来执行一个或多个内容搜索。例如,计算设备102可以执行针对所有关键词的单次搜索、执行针对关键词中的每个的单独的搜索,或执行任何其他适当的搜索策略。为了执行搜索,计算设备102可以将关键词提交到搜索引擎104或以其他方式查询内容索引106。响应于执行搜索,计算设备102接收一个或多个搜索结果,其可以体现为包括或描述内容搜索的结果的文本、图形或其他内容。

在框312中,计算设备102向用户呈现内容搜索结果。计算设备102可以使用任何适当的技术呈现结果。例如,计算设备102可以在文档的上下文部分旁边的侧边栏中、在结果窗口中或在另一图形用户界面元素中可视地呈现搜索结果。作为另一示例,计算设备102可以使用语音阅读器或使用任何其他用户界面模式将搜索结果呈现为音频。在一些实施例中,在框314中,计算设备102可将搜索结果中的一个或多个与文档的上下文部分中的相对应的关键词相关联。例如,当用户选择搜索结果(例如,通过点击搜索结果、轻敲搜索结果、用指针悬停在搜索结果上、或执行另一选择动作)时,计算设备102可以在视觉上突出显示、加下划线,或以其他方式强调文档内容的上下文部分中的相对应的关键词。在向用户呈现搜索结果之后,方法300循环回到框302,以继续识别文档的上下文部分,从而动态地更新搜索结果。

现在参考图4,示意图400示出了在方法300的执行期间由计算设备102呈现的用户界面的一个潜在实施例。图400示出文档402,其示例性地是网页。图400还示出了应用视口404,其示例性地是web浏览器的内容窗口。应用视口404的内容可以呈现在计算设备102的显示器130上。文档402的上下文部分406相对应的于文档402中的通过应用视口404可见的一部分。因此,上下文部分406的内容随着用户滚动文档402而改变。

说明的文档402是关于英文历史的网页,并且包括若干关键词408。如图所示,关键词408a、408b、408c包括在上下文部分406中,并且关键词408d不包括在上下文部分406中(即,关键词408d在应用视口404中不可见)。如图所示,应用视口404还包括与上下文部分406内的关键词408相相对应的搜索结果410。例如,搜索结果410a相对应的于关键词408a(“诺曼入侵(normaninvasion)”),搜索结果410b相对应的关键词408b(“samford桥(samfordbridge)”),并且搜索结果410c相对应的于关键词408c(“richardiii”)。在说明的图400中,使用箭头和边界框可视地描绘搜索结果410和相对应的关键词408之间的关系。在一些实施例中,搜索结果410和相对应的关键词408之间的关系的视觉指示可以被隐藏,直到用户选择特定搜索结果410。例如,响应于对搜索结果410a的用户选择,计算设备102可呈现突出显示关键词408a的视觉指示。此外,如图所示,由于关键词408d在上下文部分406之外,因此针对关键词408d没有搜索结果410被显示。随着用户滚动文档402,关键词408d可能被包含在上下文部分406中并且搜索结果410可以相对应的地更新。

现在参考图5,在使用中,计算设备102可以执行用于关键词提取的方法500。方法500可以例如作为如上文结合图3的框304所述的方法300的一部分来执行。另外或替代地,方法500可以独立地执行以从文档中提取关键词。方法500开始于框502,其中计算设备102使用自然语言处理关键短语提取算法从文档生成候选关键词的排序列表。如上面结合图3所述,文档可以被体现为文档或文档中的当前被用户编辑、查看或以其他方式访问的一部分。计算设备102可以使用任何适当的关键短语提取算法来生成候选关键词的排序列表。例如,计算设备102可以执行语法算法、textrank算法、命名实体识别(ner)算法或另一nlp算法。计算设备102可以根据由nlp算法确定的重要性值或其他得分来对文档的词语进行排序。如上所述,重要性值提供了文档的每个词语表示文档的内容或者被认为对文档的主题、含义或其他内容重要的良好程度的相对指示。在一些实施例中,在框504中,计算设备102可以对每个候选关键词项的初始得分进行归一化。例如,每个初始得分可以被归一化为零和一之间的数字。

在框506中,计算设备102通过查询语义数据库110来计算每个候选关键词的一个或多个模糊度量度。模糊度量度可被体现为指示候选关键词相对于知识库中的类和对象出现的频率的任何度量。可以通过在逻辑语句上对语义数据库110执行查询来推断模糊度量度。直观地,模糊度量度表明,给定文档包含候选关键词,可以推断有关文档主题的信息的量。模糊度量度可以体现为定性二进制值(例如,真/假)、定量值(例如,零和一之间的数字)或任何其它适当的值。计算设备102可以针对语义数据库110执行多个查询以确定多个模糊度量度,并且可以通过平均和/或以其他方式组合由这些查询产生的模糊度量度来确定复合模糊度得分,如下面进一步描述的。

在一些实施例中,在框508中,计算设备102可以通过确定语义数据库110中的任何概念是否包括候选关键词来确定模糊度量度。语义数据库110中的概念可以包括在语义数据库110中标识的类、对象或任何其他“事物”。如果语义数据库110中的概念不包括候选关键词,则候选关键词的模糊度量度相对高(例如,“真”、数字1、或其他高值)。相反,如果语义数据库110中的至少一个概念包括候选关键词,则候选关键词的模糊度量度相对较低(例如,“假”、数字零或其它低值)。

现在参考图6,伪代码600示出了查询的一个潜在实施例,用于确定语义数据库110是否包括候选关键词的概念。在说明性实施例中,语义数据库110是一般知识百科全书的本体映射。特别地,在说明性实施例中,语义数据库110是dbpedia,它是维基百科、自由百科全书中包含的文章的结构化分类。dbpedia维护关于维基百科的内容的逻辑语句的rdf数据库,可以使用sparql协议和rdf查询语言(sparql)来查询rdf数据库以提供对内容和维基百科文章之间的关系的洞察。示例性伪代码600包括针对dbpedia的sparql查询,如果具有相关联的维基百科页面的任何“事物”(即,任何类别或对象)也具有等于候选关键词的标签,则该sparql查询返回真(true),候选关键词示例性地是“battleofhastings”。说明性查询的结果可以在逻辑上被否定以产生模糊度量度。因此,如果说明性查询返回“真”(表示维基百科包括标记为“battleofhastings”的文章),则相关联的模糊度量度可以被设置为零(即,不模糊)。另外或替代地,计算设备102可以针对dbpedia进行其他查询,例如查询关于人、地点或组织的任何文章是否具有包括候选关键词的标签(命名实体查询)。在一些实施例中,计算设备102可以进行更专门的查询。例如,用户交互可以指定用户有兴趣寻找在特定电影中担任主角的演员。在该示例中,计算设备102可以形成以下查询:向与演员有关的关键词和/或指向与该特定电影直接相关的角色的关键词给予额外权重。

返回参考图5,在一些实施例中,在框510中,计算设备102可以通过确定语义数据库110中的包括候选关键词的概念或概念类型的数量来确定模糊度量度。包括候选关键词在内的概念或概念类型的数量可以表示相对模糊量。例如,相对较高数量的概念可被解释为高模糊度量度,并且相对较低(但非零)数量的概念可被解释为低模糊度量度。作为说明,如果语义数据库110被体现为如上所述的dbpedia,则适当的查询可以包括维基百科中有多少个文章具有包括候选关键词的标签,维基百科中有多少类型的文章具有包括候选关键词的标签,和/或维基百科中有多少篇文章具有包含候选关键词的正文。针对每个候选关键词的概念和/或概念类型的数量可以被归一化以产生模糊度量度。例如,概念的数量和/或类型的数量可以通过对所有候选关键词的那些值进行求和并且然后将每个值除以该和来归一化。

在框512中,计算设备102针对候选关键词中的每个确定归一化的模糊度得分。在归一化之后,候选关键词中的每个具有单个模糊度得分,其可以体现为在零和一之间的数字。计算设备102可以使用任何平均、加权平均或其他算法来对先前确定的模糊度量度进行归一化。例如,在说明性实施例中,每个候选关键词可以与由对语义数据库110的五个不同查询(例如,确切的标签、命名的实体、文章标签的数量、文章类型的数量和文章正文的数量)产生的五个不同的模糊度量度相关联。在该说明性的实施例中,模糊度得分可以被计算为这五个模糊度量度的平均值。

在框514中,计算设备102使用与候选关键词相关联的归一化模糊度得分来调整候选关键词的排序。计算设备102可以使用任何平均、加权平均或其他算法来调整每个候选关键词的排序。例如,计算设备102可以使用等式1重新计算每个候选关键词的排序得分:

如等式1所示,变量initial_scorei是通过上文结合框502描述的nlp关键词提取算法分配给候选关键词i的归一化初始得分。变量vaguenessi是如上文结合框506、512所述的分配给关键词i的模糊度得分。变量new_scorei是分配给候选关键词i的调整后的得分。在确定每个候选关键词的调整后的得分之后,计算设备102对候选关键词进行重新排序。在对候选关键词进行重新排序之后,方法500完成。如上文结合图3所述,计算设备102可以选择排序最高的候选关键词中的一个或多个作为文档的代表性关键词。示例

本文公开的技术的说明性的示例在下文中提供。技术的实施例可以包括以下描述的示例中的任何一个或多个,以及任何组合。

示例1包括用于自动内容发现的计算设备,所述计算设备包括关键短语提取模块,用于基于与通过自动关键短语提取算法确定的关键词相关联的重要性值从文档中提取关键词,其中所述文档包括由所述计算设备的用户选择的文档;内容搜索模块,用于基于所述关键词执行自动内容搜索以生成一个或多个搜索结果;以及用户界面模块,用于向用户呈现一个或多个搜索结果。

示例2包括示例1的主题,并且其中关键短语提取算法包括textrank算法或命名实体识别算法。

示例3包括示例1和2中任一项的主题,并且其中从文档中提取关键词包括使用自动关键短语提取算法来对文档的多个词语进行排序,以生成排序的词语列表;并从排序的词语列表中选择关键词。

示例4包括示例1-3中任一项的主题,并且还包括文档上下文模块,用于确定文档的上下文部分,其中文档的上下文部分当前可由用户访问;其中从文档中提取关键词包括从文档的上下文部分提取关键词。

示例5包括示例1-4中任一项的主题,并且其中确定文档的上下文部分包括识别文档中的在计算设备的应用视口中可见的一部分。

示例6包括示例1-5中任一项的主题,并且其中确定文档的上下文部分包括识别文档中的由用户最近访问的一部分。

示例7包括示例1-6中任一项的主题,并且其中用户界面模块进一步用于将一个或多个搜索结果中的每一个与文档的上下文部分的相对应的关键词相关联。

示例8包括示例1-7中任一项的主题,并且其中将所述一个或多个搜索结果中的每一个与相对应的关键词相关联包括响应于对相对应的搜索结果的用户选择而在视觉上突出显示文档的上下文部分的相对应的关键词。

实施例9包括示例1-8中任一项的主题,并且其中从文档中提取关键词包括使用自动关键短语提取算法对文档的多个词语进行排序以生成排序的词语列表;并且所述计算设备还包括模糊度排序模块,用于通过对语义数据库的查询来计算排序的词语列表中每个词语的模糊度得分;基于排序的词语列表中的每个词语的相对应的模糊度得分来对排序的词语列表进行重新排序,以生成调整后的排序的词语列表;并从调整后的排序的词语列表中选择关键词。

示例10包括示例1-9中任一项的主题,并且其中计算排序的词语列表中每个词语的模糊度得分包括确定语义数据库的任何概念是否包括相对应的词语。

示例11包括示例1-10中任一项的主题,并且其中确定语义数据库的任何概念是否包括该词语包括查询百科全书的本体映射以确定百科全书的任何文章或文章标签是否包括该词语。

示例12包括示例1-11中任一项的主题,并且其中计算排序的词语列表中每个词语的模糊度得分包括确定语义数据库中的包括排序的词语列表中的每个词语的概念的相对应的数量;并且对针对排序的词语列表中的每个词语的概念的相对应的数量进行归一化。

示例13包括示例1-12中任一项的主题,并且其中计算排序的词语列表中每个词语的模糊度得分包括确定语义数据库中的包括排序的词语列表中的每个词语的概念类型的相对应的数量;并且对针对排序的词语列表中的每个词语的概念类型的相对应的数量进行归一化。

示例14包括用于关键短语提取的计算设备,所述计算设备包括:关键短语提取模块,用于基于与由自动关键短语提取算法确定的词语中的每个相关联的相对应的重要性值来对文档的多个词语进行排序以生成排序的词语列表;以及模糊度排序模块,用于通过语义数据库的查询来计算排序的词语列表中每个词语的模糊度得分;基于排序的词语列表中的每个词语的相对应的模糊度得分来对排序的词语列表进行重新排序,以生成调整后的排序的词语列表;以及从调整后的排序的词语列表中选择关键词。

示例15包括示例14的主题,并且其中计算排序的词语列表中每个词语的模糊度得分包括确定语义数据库的任何概念是否包括相对应的词语。

示例16包括示例14和15中任一项的主题,并且其中确定语义数据库的任何概念是否包括该词语包括查询百科全书的本体映射以确定百科全书的任何文章或文章标签是否包括该词语。

示例17包括示例14-16中任一项的主题,并且其中计算排序的词语列表中每个词语的模糊度得分包括确定语义数据库中的包括排序的词语列表中的每个词语的概念的相对应的数量;并且对针对排序的词语列表中的每个词语的概念的相对应的数量进行归一化。

示例18包括示例14-17中任一项的主题,并且其中计算排序的词语列表中每个词语的模糊度得分包括确定语义数据库中的包括排序的词语列表中的每个词语的概念类型的相对应的数量;并且对针对排序的词语列表中的每个词语的概念类型的相对应的数量进行归一化。

示例19包括一种用于自动内容发现的方法,该方法包括:由计算设备基于与由自动关键短语提取算法确定的关键词相关联的重要性值从文档中提取关键词,其中文档包括由计算设备的用户选择的文档;通过计算设备基于关键词执行自动内容搜索以生成一个或多个搜索结果;以及通过所述计算设备向所述用户呈现所述一个或多个搜索结果。

示例20包括示例19的主题,并且其中关键短语提取算法包括textrank算法或命名实体识别算法。

示例21包括示例19和20中任一项的主题,并且其中从文档中提取关键词包括使用自动关键短语提取算法对文档的多个词语进行排序以生成排序的词语列表;并从排序的词语列表中选择关键词。

示例22包括示例19-21中任一项的主题,并且还包括由计算设备确定文档的上下文部分,其中文档的上下文部分当前可由用户访问;其中从所述文档中提取所述关键词包括从所述文档的上下文部分提取所述关键词。

示例23包括示例19-22中任一项的主题,并且其中确定文档的上下文部分包括识别文档中的在计算设备的应用视口中可见的一部分。

示例24包括示例19-23中任一项的主题,并且其中确定文档的上下文部分包括识别文档中的由用户最近访问的一部分。

示例25包括示例19-24中任一项的主题,并且还包括由计算设备将一个或多个搜索结果中的每一个与文档的上下文部分的相对应的关键词相关联。

示例26包括示例19-25中任一项的主题,并且其中将所述一个或多个搜索结果中的每一个与相对应的关键词相关联包括响应于用户选择相对应的搜索结果而在视觉上突出显示文档的上下文部分的相对应的关键词。

示例27包括示例19-26中任一项的主题,并且其中从文档中提取关键词包括使用自动关键短语提取算法对文档的多个词语进行排序以生成排序的词语列表;通过查询语义数据库来计算排序的词语列表中每个词语的模糊度得分;基于排序的词语列表中的每个词语的相对应的模糊度得分来对排序的词语列表进行重新排序,以生成调整后的排序的词语列表;并从调整后的排序的词语列表中选择关键词。

示例28包括示例19-27中任一项的主题,并且其中计算排序的词语列表中每个词语的模糊度得分包括确定语义数据库的任何概念是否包括相对应的词语。

示例29包括示例19-28中任一项的主题,并且其中确定语义数据库的任何概念是否包括该词语包括查询百科全书的本体映射以确定百科全书中的任何文章或文章标签是否包括该词语。

示例30包括示例19-29中任一项的主题,并且其中计算排序的词语列表中每个词语的模糊度得分包括确定语义数据库中的包括排序的词语列表中的每个词语的概念的相对应的数量;以及对针对排序的词语列表中的每个词语的概念的相对应的数量进行归一化。

示例31包括示例19-30中任一项的主题,并且其中计算排序的词语列表中每个词语的模糊度得分包括确定包括排序的词语列表中的每个词语的语义数据库的概念的类型的相对应的数量;以及对针对排序的词语列表中的每个词语的概念类型的相对应的数量进行归一化。

示例32包括用于关键短语提取的方法,该方法包括:通过计算设备基于与由自动关键短语提取算法确定的词语中的每个相关联的相对应的重要性值来对文档的多个词语进行排序以生成排序的词语列表;由计算设备通过查询语义数据库来计算排序的词语列表中每个词语的模糊度得分;由计算设备基于排序的词语列表中的每个词语的相对应的模糊度得分对排序的词语列表进行重新排序,以生成调整后的排序的词语列表;以及由所述计算设备从所述调整后的排序的词语列表中选择关键词。

示例33包括示例32的主题,并且其中计算排序的词语列表中每个词语的模糊度得分包括确定语义数据库的任何概念是否包括该词语。

示例34包括示例32和33中任一项的主题,并且其中确定语义数据库的任何概念是否包括该词语包括查询百科全书的本体映射以确定百科全书的任何文章或文章标签是否包括相对应的词语。

示例35包括示例32-34中任一项的主题,并且其中计算排序的词语列表中每个词语的模糊度得分包括确定语义数据库中的包括排序的词语列表中的每个词语的概念的相对应的数量;以及对针对排序的词语列表中的每个词语的概念的相对应的数量进行归一化。

示例36包括示例32-35中任一项的主题,并且其中计算排序的词语列表中每个词语的模糊度得分包括确定语义数据库中的包括排序的词语列表中的每个词语的概念的类型的相对应的数量;以及对针对排序的词语列表中的每个词语的概念的相对应的数量进行归一化。

示例37包括一种计算设备,包括:处理器;以及存储器,其中存储有多个指令,所述指令当由处理器执行时,使得计算设备执行示例19-36中任一项的方法。

示例38包括一个或多个机器可读存储介质,其包括存储在其上的多个指令,所述指令响应于被执行而使得计算设备执行示例19-36中任一项的方法。

示例39包括计算设备,其包括用于执行示例19-36中任一项的方法的单元。

示例40包括用于自动内容发现的计算设备,所述计算设备包括用于基于与通过自动关键短语提取算法确定的关键词相关联的重要性值从文档中提取关键词的单元,其中所述文档包括由所述计算设备的用户选择的文档;用于基于所述关键词执行自动内容搜索以生成一个或多个搜索结果的单元;以及用于将一个或多个搜索结果呈现给用户的单元。

示例41包括示例40的主题,并且其中关键短语提取算法包括textrank算法或命名实体识别算法。

示例42包括示例40和41中任一项的主题,并且其中用于从文档中提取关键词的单元包括用于使用自动关键短语提取算法对文档的多个词语进行排序以生成排序的词语列表的单元;以及用于从排序的词语列表中选择关键词的单元。

示例43包括示例40-42中任一项的主题,并且还包括用于确定文档的上下文部分的单元,其中文档的上下文部分当前可由用户访问;其中用于从所述文档中提取所述关键词的单元包括用于从所述文档的上下文部分中提取所述关键词的单元。

示例44包括示例40-43中任一项的主题,并且其中用于确定文档的上下文部分的单元包括用于识别文档中的在计算设备的应用视口中可见的一部分的单元。

示例45包括示例40-44中任一项的主题,并且其中用于确定文档的上下文部分的单元包括用于识别文档中的由用户最近访问的一部分的单元。

示例46包括示例40-45中任一项的主题,并且还包括用于将一个或多个搜索结果中的每一个与文档的上下文部分的相对应的关键词相关联的单元。

示例47包括示例40-46中任一项的主题,并且其中用于将一个或多个搜索结果中的每一个与相对应的关键词相关联的单元包括用于响应于所述用户选择相对应的搜索结果而在视觉上突出显示所述文档的上下文部分的相对应的关键词的单元。

示例48包括示例40-47中任一项的主题,并且其中用于从文档中提取关键词的单元包括:用于使用自动关键短语提取算法对文档的多个词语进行排序以生成排序的词语列表的单元;用于通过查询语义数据库来计算排序的词语列表中每个词语的模糊度得分的单元;用于基于排序的词语列表中的每个词语的相对应的模糊度得分对排序的词语列表进行重新排序以生成调整后的排序的词语列表的单元;以及用于从调整后的排序的词语列表中选择关键词的单元。

示例49包括示例40-48中任一项的主题,并且其中用于计算排序的词语列表中每个词语的模糊度得分的单元包括用于确定语义数据库的任何概念是否包括相对应的词语的单元。

示例50包括示例40-49中任一项的主题,并且其中用于确定语义数据库的任何概念是否包括该词语的单元包括用于查询百科全书的本体映射以确定百科全书的任何文章或文章标签是否包括该词语的单元。

示例51包括示例40-50中任一项的主题,并且其中用于计算排序的词语列表中每个词语的模糊度得分的单元包括用于确定语义数据库中的包括排序的词语列表中的每个词语的概念的相对应的数量的单元;以及用于对针对排序的词语列表中的每个词语的概念的相对应的数量进行归一化的单元。

示例52包括示例40-51中任一项的主题,并且其中用于计算排序的词语列表中每个词语的模糊度得分的单元包括用于确定语义数据库中的包括排序的词语列表中的每个词语的概念的类型的相对应的数量的单元;以及用于对针对排序的词语列表中的每个词语的概念的类型的相对应的数量进行归一化的单元。

示例53包括用于关键短语提取的计算设备,所述计算设备包括:用于基于与由自动关键短语提取算法确定的词语中的每个相关联的相对应的重要性值对文档的多个条目进行排序以生成排序的词语列表的单元;用于通过查询语义数据库来计算排序的词语列表中每个词语的模糊度得分的单元;用于基于排序的词语列表中的每个词语的相对应的模糊度得分对排序的词语列表进行重新排序以生成调整后的排序的词语列表的单元;以及用于从调整后的排序的词语列表中选择关键词的单元。

示例54包括示例53的主题,并且其中用于计算排序的词语列表中每个词语的模糊度得分的单元包括用于确定语义数据库的任何概念是否包括该词语的单元。

示例55包括示例53和54中任一项的主题,并且其中用于确定语义数据库的任何概念是否包括该词语的单元包括用于查询百科全书的本体映射以确定百科全书的任何文章或文章标签是否包括相对应的词语的单元。

示例56包括示例53-55中任一项的主题,并且其中用于计算排序的词语列表中每个词语的模糊度得分的单元包括:用于确定语义数据库中的包括排序的词语列表中的每个词语的的概念的相对应的数量的单元;以及用于对针对排序的词语列表中的每个词语的概念的相对应的数量进行归一化的单元。

示例57包括示例53-56中任一项的主题,并且其中用于计算排序的词语列表中每个词语的模糊度得分的单元包括:用于确定语义数据库中的包括排序的词语列表中的每个词语的概念的类型的相对应的数量的单元;以及用于对针对排序的词语列表中的每个词语的概念的类型的相对应的数量进行归一化的单元。

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