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

动态生成的内容理解系统

文献发布时间:2023-06-19 12:02:28


动态生成的内容理解系统

背景技术

计算系统当前被广泛使用。一些这样的计算系统包括基于服务器的系统,这些系统托管或服务于与内容相关的功能。

这些类型的系统中的某些系统为不同的租户处置不同类型的内容。通过示例的方式,一些这样的系统可以包括生产力和电子邮件系统、文档管理系统、搜索引擎和数据挖掘系统、音乐和照片编目系统以及多种其他系统。由这些类型的系统处置和处理的内容项可以包括各种不同类型的内容。例如,这些内容可以是基于文本的文档、图像、视频、语音或其他声音记录、压缩的存档文件、业务线文档(例如,报价、机会记录等)。

为了使搜索功能和智能功能在这些内容项上正常工作,内容项通常由试图生成摘要和注释的内容理解系统处理。注释可以包括诸如与内容项相对应的特殊特性或格式之类的信息。生成与内容项相对应的摘要和注释的操作通常称为“解析”,并且这是由称为“解析器”的逻辑项执行的。

某些内容项也称为“复合项”或“复杂项”。在这些内容项中,单个项中可能有多种不同的内容类型。例如,文字处理文档可以包括嵌入式图像。在这些情况下,有时可能需要多个不同的解析器来生成与内容项相对应的可接受的摘要和注释。

上面的讨论仅是针对一般的背景信息而提供的,并且不旨在用于帮助确定要求保护的主题的范围。

发明内容

接收内容项,并且对其进行分析以标识可以用于基于先前所选择的解析器来解析内容项的任何不同类型的解析器。一个或多个解析器是基于内容项中的内容类型并且基于先前的用户选择的解析器被选择的。所选择的解析器在服务器环境中被构建,并且被控制以解析内容项。

提供本发明内容从而以简化形式介绍一些概念,这些概念将在下面的具体实施方式中进一步描述。本发明内容不旨在标识要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定要求保护的主题的范围。要求保护的主题不限于解决背景技术中指出的任何或所有缺点的实现方式。

附图说明

图1是计算系统架构的一个示例的框图,在该计算系统架构中,一个或多个内容理解系统处理内容项。

图2是示出动态构建系统的一个示例的框图。

图3是示出用于训练动态构建模型的检测和监视子系统的操作的一个示例的流程图。

图4A和图4B(在本文中统称为图4)示出了说明图2中示出的动态构建系统在动态地构建内容理解系统以解析接收到的内容项时的操作的一个示例的流程图。

图5是说明图1中示出的架构的一个示例的框图,该架构被部署在云计算架构中。

图6是示出可以在先前附图中示出的架构中使用的计算环境的一个示例的框图。

具体实施方式

图1是计算系统架构100的一个示例的框图,其示出了多个不同的内容服务器系统102-104,每个内容服务器系统服务于多个租户106、108、110和112。系统102和104可以通过网络114彼此连接(和/或连接到其对应的租户)。网络114可以是多种不同类型的网络(例如,局域网、广域网、蜂窝通信网络、近场通信网络)中的任一种或各种其他类型的网络中的任一种或网络的组合。

内容服务器系统102-104可以是各种不同类型的内容服务器系统(例如,电子邮件系统、生产力系统、文档共享和管理系统、搜索系统、数据挖掘系统、业务线系统、音乐和图像编目系统或多种其他系统)中的任一种。内容服务器系统102被示为具有一个或多个处理器或服务器116、内容理解系统118、数据储存库120,并且该内容服务器系统102可以具有多种其他系统功能122。类似地,内容服务器系统104被示为具有一个或多个处理器或服务器124、数据储存库126、内容理解系统128,并且该内容服务器系统104也可以具有多种其他服务器系统功能130。内容服务器系统102-104可以是相似的或不同的。为了本讨论的目的,假定内容服务器系统102-104是相似的,因此仅在下面更全面地描述内容服务器系统102。

在一个示例中,租户106-108访问由内容服务器系统102存储并处理的文档(或内容项)或与其交互。系统102也可以服务于或托管其他功能。由租户106-108访问或提供的内容项由内容理解系统118处理。内容理解系统118说明性地生成与每个内容项相对应的摘要和注释。在这样做时,内容理解系统118可以对内容项的二进制表示进行操作以生成全文摘要,以及可以标识内容类型、其格式等的注释。经解析的内容项(及其对应的摘要和注释)可以存储在数据储存库120中,以便可以通过诸如搜索引擎和/或其他数据或文档处理系统之类的系统来搜索或以其他方式智能地处理内容项。

因此,由内容理解系统118使用的解析功能的类型将基于其正在处理的内容项的类型而变化。例如,如果内容理解系统118正在处理相对大量的文本图像文件(例如,文字处理文档或PDF文件),则该内容理解系统118可以使用文本解析器来解析文档。另一方面,如果通过拼接来自扫描仪的图像来生成PDF文件,则该内容理解系统118可以使用光学字符识别解析器来生成文本摘要和注释。如果该内容理解系统118正在处理摄影图像,则其可以使用不同类型的解析器来生成文本摘要和注释。

在内容理解系统118中执行解析器时进行的处理在中央处理单元(CPU)使用情况、存储器和/或硬盘使用情况等方面可能涉及相对繁重的计算任务。而且,取决于内容理解系统118的特定的解析器能力,解析器解析内容项所使用的时间以及项被解析的准确度可以差别很大。

另外地,取决于不同的场景,不同的租户106-108期望的解析器的性能特性也可以变化。一些租户计算系统可能对用户延迟、存储器/CPU使用情况、租户对解析器类型的偏好等具有要求。租户106-108的用户还可以标识针对不同的解析器结果、解析器等的偏好。

因此,在一个示例中(并且也如图1中示出的),动态构建系统132被部署在架构100中。动态构建系统132在图1中示为与内容服务器系统102和内容服务器系统104两者是分开的。因此,该动态构建系统132可以是由系统102-104访问的单独托管的服务或系统。在另一示例中,动态构建系统132可以位于内容服务器系统上102并且由内容服务器系统104访问,或者该动态构建系统132可以位于内容服务器系统104上并且由内容服务器系统102访问。在又一示例中,单独的动态构建系统132可以位于内容服务器系统102-104中的每一个上。

简要地,通过概述的方式,动态构建系统132说明性地监视解析器使用情况、租户用户输入或反馈以及相对于由内容服务器系统102处理的不同的内容项的解析器使用特性,并且基于租户106-108使用解析功能的方式来标识应部署到内容理解系统118的不同的解析器功能等。在动态构建系统132还服务于内容服务系统104的情况下,该动态构建系统132可以进行与系统104相同的操作。该动态构建系统132还可以基于当前的、历史的和/或预测的解析器使用情况来将解析功能预部署到不同的系统102-104。

除了将解析器功能预部署到不同的内容理解系统之外,动态构建系统132还可以接收要被解析的内容项,并且在要在其中解析内容项的对应的内容理解系统118中动态地构建解析器。如下面更详细描述的,动态构建系统132说明性地处理接收到的内容项以标识可以用于解析内容项的一个或多个解析器。然后,动态构建系统132生成解析器图,该解析器图标识要使用的解析器的序列(其中要使用多于一个解析器,例如,在复杂的内容项的情况下),并且以适当的序列在要在其中执行解析功能的对应的内容理解系统118上构建或部署这些解析器。在这样做时,动态构建系统132可以考虑多种信息,例如:内容项中包含哪些内容类型;历史上用于这些内容类型的解析器;由用户标识的解析器;内容项(其类型是未知的)与其他内容项的相似程度;来自租户的关于解析器偏好、延迟或其他用户定义的性能偏好的反馈以及多种其他信息。以这种方式,当解析能力尚未被预部署到内容理解系统时,可以在运行时期间动态地构建解析能力。可以在运行时期间构建解析能力,从而考虑历史解析操作和用户反馈偏好,以便提供高度准确的摘要和对应的注释。

图2是更详细地示出动态构建系统132的一个示例的框图。图2示出,在一个示例中,动态构建系统132说明性地包括一个或多个处理器或服务器134、编排子系统136、数据储存库138、检测和监视子系统140、跟踪可用解析器143的解析器跟踪子系统142、模型生成逻辑单元144、动态构建模型146(其可以包括解析器图构建器子系统150)、部署子系统148,并且该动态构建系统132可以包括多种其他项152。在更详细地描述系统132的整体操作之前,将首先提供对系统132中的项中的一些及其操作的简要描述。

编排系统136说明性地确定哪个内容理解系统118-128将对接收到的内容项执行解析操作。检测和监视子系统140检测各种不同类型的信息,模型生成逻辑单元144可以使用这些信息来生成动态构建模型146。动态构建模型146可以包括子系统150(如下面描述的),并且说明性地基于接收到的内容项或基于针对输出的调用来生成输出,该输出标识应在某些系统中部署的解析功能。

检测和监视子系统140可以包括内容类型到位置标识符逻辑单元154、性能数据检测逻辑单元156、用户反馈检测逻辑单元158、用户选择标准检测逻辑单元160、数据聚合/相关逻辑单元161,并且该检测和监视子系统140可以包括其他项162。在一个示例中,各种解析器可以在其中部署报告逻辑单元,使得这些解析器可以报告回它们正在被调用以对其进行解析的内容项的类型、它们所在的地理位置、它们所在的数据中心、服务器ID(其标识解析器正在其上运行的服务器)、租户ID(其标识正在针对其解析内容项的租户)等等。

因此,内容类型到位置标识符逻辑单元154标识正在解析的内容的类型与其位置(关于其地理位置、数据中心、服务器、租户等)之间的关系。性能数据检测逻辑单元156检测与由不同的解析器执行的解析操作相对应的性能数据。例如,性能数据检测逻辑单元156可以检测针对不同的解析操作的延迟、CPU使用情况、存储器和硬盘使用情况等。

用户反馈检测逻辑单元158说明性地生成用户接口的表示,该用户接口可以被呈现给特定租户的用户以提供关于解析操作的反馈。例如,可以向用户提供两个不同的解析器对相同的内容项操作的结果,并且可以要求用户选择他们偏好的解析器。可以要求用户对解析器输出进行满意度评分。可以要求用户选择用于特定类型的内容的解析器,或者还可以以各种其他方式要求用户提供反馈。

用户选择标准检测逻辑单元160还可以说明性地提供用户输入机制,特定租户的用户可以通过该用户输入机制标识他或她希望在选择解析器以解析各种内容项时使用的选择标准。选择标准可以允许用户标识诸如延迟、准确度、性能(例如,CPU和存储器使用情况)等之类的内容。用户可以标识这些标准中的哪个标准是最重要的,使得动态构建模型146可以在标识要在用于解析内容项的内容理解系统中部署并使用的解析器时考虑这些标准。

数据聚合/相关逻辑单元161可以聚合由子系统140接收到的数据。该数据聚合/相关逻辑单元161可以通过解析操作或以其他方式聚合数据。然后,该数据聚合/相关逻辑单元161说明性地将聚合的数据与解析器、位置进行相关或以其他方式进行相关。

检测和监视子系统140可以检测和监视也可以使用的多种其他信息。这由框162指示。

解析器跟踪子系统142说明性地包括注册逻辑单元164、解析器访问逻辑单元166,并且该解析器跟踪子系统142可以包括多种其他项168。注册逻辑单元164允许开发人员注册或以其他方式提供解析器可用的指示。注册逻辑单元164可以提供它解析的内容类型,以及标识特定解析器的多种其他数据。解析器访问逻辑单元166说明性地访问解析器143的列表或针对可用解析器143(已经被标识到注册逻辑单元164的解析器)的标识数据,并且将该信息提供给动态构建模型146和解析器图构建器子系统150。

模型生成逻辑单元144从检测和监视系统140接收信息以及其他项,并且在一个示例中,模型生成逻辑单元144运行机器学习系统以生成和改进动态构建模型146。在另一示例中,还可以基于一组规则(例如,业务规则)和模型生成算法来生成动态构建模型146。动态构建模型146可以是任何类型的机器生成的模型,其用于标识要在不同的场景中使用的解析器。模型146可以生成指示要在运行时期间使用的一个或多个解析器的输出,或者模型146可以生成该输出以在执行解析之前或在系统118、128的操作期间间歇地将解析功能预部署到不同的位置。在这样做时,模型146可以使用解析器图构建器子系统150和/或其他逻辑单元151。

解析器图构建器子系统150说明性地在运行时期间接收来自子系统140的信息或要被解析的内容项并且分析该信息内容项。基于该分析,解析器图构建器子系统150通过解析器访问逻辑单元166访问可用解析器,并且标识应使用哪些特定的解析器,以及应以什么序列使用这些解析器来解析内容项(当内容项是包含两种或更多种类型的内容的复杂内容项时)。因此,子系统150说明性地包括内容报头/扩展处理器逻辑单元170、内容分类器逻辑单元172、历史使用情况逻辑单元174、复杂内容分析逻辑单元176、其他内容分析逻辑单元178、解析器选择逻辑单元180、图生成器逻辑单元181,并且该子系统150可以包括多种其他项182。内容报头/扩展处理器逻辑单元172分析针对内容项的报头信息和扩展信息,以便标识正在处理的内容的类型。复杂内容分析逻辑单元176标识内容项是否为复杂项,这意味着内容项中具有多于一种类型的内容(为此可能需要多于一种类型的解析器)。这样的示例可以包括具有附加或嵌入的图像的电子表格文档、具有嵌入的音频文件或图像的文字处理文档等等。

当内容的类型不能由逻辑单元170和176标识时,内容分类器逻辑单元172分析内容项的二进制表示并将其分类为与先前解析的内容项相对应的多个不同的预定义的类别中的一个。例如,当内容分类器逻辑单元172接收到未知的内容项时,该内容项的二进制表示可能具有与文字处理文档非常相似的特性。该内容项的二进制表示可能具有与光学图像或照片非常相似的特性。该内容项的二进制表示可能具有表示包括多种不同类型的内容的复杂文档的特性。在这种情况下,内容分类器逻辑单元172(其可以是机器学习分类器)将内容项分类为预定义的类别。每个预定义的类别可以具有与其相对应的一个或多个对应的解析器,使得一旦标识出类别,也将知道将用于解析内容项的对应的解析器或解析器的集合。

历史使用情况逻辑单元174可以标识过去已经用于解析这种类型的内容的解析器。该历史使用情况逻辑单元174可以标识用户选择的解析器或基于用户定义的选择标准或以其他方式选择的解析器。

一旦逻辑单元已经在内容项上执行,解析器选择逻辑单元180就选择一个或多个解析器,并且图生成器逻辑单元181以与解析器将对内容项进行操作的序列相对应的序列布置所选择的解析器。将指出的是,解析器选择逻辑单元180说明性地选择已经被标识为最适合内容的类型的解析器。例如,如果内容的类型是图像,则解析器选择逻辑单元180将要求处理和分析逻辑单元标识图像的类型(例如,是照片还是文本文档的图像(例如,PDF文件))。基于光学字符识别的解析器可能适合文本文件的图像,但不适合不同类型的视觉图像(例如,照片)。因此,解析器选择逻辑单元180将区分图像的类型,以便选择要在解析内容项时使用的解析器。

由逻辑单元181输出的图或由逻辑单元180输出的所选择的解析器可以提供给部署子系统148并由其使用。部署子系统148说明性地包括动态构建模型访问逻辑单元184、预部署逻辑单元186、运行时部署逻辑单元188、后处理部署逻辑单元190,并且该部署子系统148可以包括其他项192。逻辑单元184说明性地访问由解析器图构建器子系统150标识的解析器,以标识应被部署到不同的内容理解系统118-128的解析器。这可以在接收要被解析的项之前或在运行时完成。例如,逻辑单元184可以标识出特定租户正在表现出对某种类型的解析器功能的特别繁重的使用情况。当前,解析器功能也可能不位于与使用该功能的租户接近的地理位置或数据中心中。在这样的场景中,预部署逻辑单元186可以将标识出的解析器功能(或解析器143)部署到接近该租户的数据中心或地理位置,以便减少该租户的延迟。预部署逻辑单元186可以部署解析器功能,以适应不同的服务器环境中的工作负载,或者出于其他原因,预部署逻辑单元186也可以适应动态构建模型146的输出。

运行时部署逻辑单元188还可以基于已经接收到并且要对其进行解析的内容项使用来自动态构建模型146的输出(例如,由图生成器逻辑单元188输出的图)来执行解析器到内容理解系统118-128的运行时部署。后处理部署逻辑单元190也可以基于租户的特定需求、基于用户选择的解析器或用户定义的选择标准、基于历史观察到的处理或出于其他原因,在内容理解系统118-128处构建后处理逻辑单元。

图3是示出检测和监视子系统140在检测和监视可以由模型生成逻辑单元144、解析器图构建器子系统150和/或部署子系统148使用的信息时的操作的一个示例的流程图。

检测和监视子系统140检测在不同位置解析的内容的类型。这由图3的流程图中的框194指示。在一个示例中,内容理解系统118、128中的解析器检测并发送它们被要求对其进行解析的数据类型的指示。这由框196指示。该数据可以标识内容的类型198、使用的特定解析器(如由框200指示的)、执行解析的地理位置(如由框202指示的)、执行解析的数据中心的标识(如由框204指示的)、标识执行解析的服务器的服务器标识符(如由框206指示的)、标识针对其执行解析的租户的租户标识符(如由框208指示的),并且这也可以包括多种其他项。这些其他项由框210指示。

然后,性能数据检测器逻辑单元156检测用于各种解析操作的性能数据。这由框212指示。性能数据可以包括解析准确度的指示,如由框214指示的。性能数据可以包括CPU使用情况216、存储器使用情况218、磁盘使用情况220、网络容量222、网络传输延迟224,并且该性能数据可以包括多种其他项226。

用户反馈检测逻辑单元158可以检测提供的任何用户反馈228。该用户反馈228可以包括指示对一个解析器而不是其他解析器的用户偏好的偏好数据,该偏好数据由框230指示。该偏好数据可以包括用户评分,该用户评分对用户对解析结果或特定解析器的操作进行满意度评分,如由框232指示的。用户选择标准检测逻辑单元160可以检测由用户输入的并且要用于选择特定解析器的选择标准。选择标准可以包括性能数据或其他项。选择标准由框234指示。用户反馈也可以包括多种其他项,并且这由框236指示。

检测和监视子系统140说明性地检测数据随时间推移的改变。这由框238指示。例如,检测和监视子系统140可以检测循环或周期改变,例如,特定租户在一天中、一年中的不同时间更频繁地处理特定类型的内容等。这由框240指示。检测和监视子系统140可以检测趋势,这些趋势指示例如不同租户随时间推移更频繁地处理的内容的类型、在解析器随时间推移改变时的准确度或性能或多种其他趋势。框242指示检测随时间推移的趋势。系统140也可以以多种其他方式检测随时间推移的改变,并且这由框244指示。

然后,数据聚合和相关逻辑单元161可以对数据执行数据聚合和相关,并且控制数据储存库138以存储数据、聚合和相关以及其他相关信息。数据可以随时间推移被聚合、通过解析操作被聚合,或者可以以其他方式进行组合。数据可以与解析器、位置、用户等相关。框246指示执行数据聚合和相关,并且框248指示控制数据储存库138以存储该数据。

然后,模型生成逻辑单元144使用机器学习算法来访问存储在数据储存库138中的数据,并且基于数据、聚合、相关等来训练动态构建模型146。这由框250指示。然后,如由图3的流程图中的框252指示的,输出动态构建模型246。以这种方式,动态构建模型使用机器学习来标识应被预部署到不同环境(例如,图1中示出的不同的服务器系统)的解析功能。模型生成逻辑单元144还可以接收要被标识的文档(或该内容项的分析结果),并生成到部署系统148的输出,该输出指示应将哪些解析器部署到哪些位置以解析该内容项。

图4A和图4B(在本文中统称为图4)示出了流程图,该流程图示出了动态构建系统132在特定位置处动态地构建解析器或解析能力时的操作的一个示例。首先假定动态构建模型访问逻辑单元184访问动态构建模型146,并且预部署逻辑单元186使用模型146来执行将某些解析能力(或解析器)预部署到架构100中的不同的内容理解系统。这可以基于解析器的历史使用情况、各种租户最常使用的内容的类型、诸如解析器选择和选择标准输入之类的用户输入等等。图4的流程图中的框260指示访问动态构建模型以执行预部署,并且框262指示使用预部署逻辑单元186以基于模型146的输出将解析功能预部署到架构100中的内容理解系统。

在某一时刻,编排子系统126将接收要被解析的内容项。该编排子系统126将标识将用于解析该内容项的特定的内容理解系统。该编排子系统126还将内容项提供给动态构建模型146。框264指示接收要被解析的内容项。然后,模型146标识用于解析该内容项的一个或多个解析器。在这样做时,解析器图构建器子系统150处理内容项以获得与解析器相关数据,该数据将用于选择将用于解析内容项的一个或多个解析器。这由框266指示。它可以对内容项的二进制表示进行操作。该信息可以指示项中的内容的类型。这由框268指示。复杂内容分析逻辑单元176可以标识内容项是否是复杂内容项(意味着该内容项包括要被解析的多于一种类型的内容)。这由框270指示。内容报头/扩展处理器逻辑单元170说明性地分析关于内容项的报头和扩展信息。该信息可以指示项中的内容的类型。这由框272指示。历史使用情况逻辑单元174标识已经在历史上用于解析这种类型的内容的解析器。这由框274指示。内容分类器逻辑单元172可以基于内容项的二进制表示的特性来将内容项(例如,当该内容项不能由其他分析确定时)分类为多个预定义的类别中的一个。这由框276指示。

还可以以多种其他方式来处理内容。例如,其他内容分析逻辑单元178可以标识要被解析的复杂内容项中的最重要的内容类型。通过示例的方式,如果内容项是电子表格,但是其附有单个图像,则电子表格可能是最重要的内容类型,并且可以被这样标记。标识复杂内容项中的最重要的内容类型由图4的流程图中的框278指示。可以以多种其他方式处理内容项以标识与解析器相关的数据,并且这由框280指示。

然后,解析器选择逻辑单元180标识或选择要用于解析文档的一个或多个解析器。框282指示选择解析器。该解析器选择逻辑单元180可以基于针对不同类型的内容选择的先前的用户选择的解析器来选择解析器。这由框281指示。该解析器选择逻辑单元180可以基于用户优先考虑的选择标准进行选择。例如,用户可以指示速度比CPU使用情况具有更高的优先级。这仅是一个示例,并且由框283指示。它可以使用解析器访问逻辑单元166来访问可用解析器。这由框284指示。如框286指示的,它标识用于复杂项的多个解析器。它可以基于分类器逻辑单元172将内容项分类到的类别来标识解析器。这由框288指示。它可以在可能有多个解析器的情况下选择最佳解析器。在多个解析器可用于解析目标文件的情况下,可以标识该目标文件的特定内容,以便选择最佳解析器。这由框290指示。也可以以多种其他方式选择解析器,并且这由框292指示。

一旦解析器选择逻辑单元180已经选择了解析器的集合,图生成器逻辑单元181就标识要对复杂内容项进行操作的解析器的序列。框294指示标识是否已经选择了多于一个解析器,并且框296指示标识要应用的解析器的序列。在一个示例中,解析器序列将被布置为使得最重要的内容类型首先被解析。这由框298指示。而且,出于延迟、性能或其他原因,某些内容可以不被解析。通过示例的方式,可以仅解析最重要的内容类型,并且基于该内容类型生成摘要和注释,而对于该内容项,其余的内容类型不被解析。图4的流程图中的框300指示省略某些内容的解析。标识要应用的解析器的序列也可以通过其他方式完成,并且这由框302指示。

然后,运行时部署逻辑单元188在标识的解析器(其由图生成器逻辑单元181标识)要被构建的环境中动态地构建标识的解析器。这由图4的流程图中的框304指示。例如,如果编排子系统136已经标识内容理解系统118要执行解析,并且动态构建模型146和/或子系统150已经标识要用于该解析的解析器的集合,则运行时部署逻辑单元188将这些解析器部署到内容理解系统118(或在其上构建)。

然后,编排子系统136将接收到的内容项转发到构建的解析器以对其进行解析。然后,解析器输出解析的结果。框306指示将接收到的内容项发送到要对其进行解析的环境,并且框308指示对内容项进行解析并输出解析器结果。在一个示例中,解析器结果包括全文摘要310、一组注释312(上面已经描述了其中的一些示例),并且该解析器结果可以包括多种其他项314。

然后,正在运行或刚刚运行的解析器检测子系统140监视的监视数据并将其发送到子系统140。这由框316指示。

因此,可以看出,可以基于机器学习的模型输出来预部署解析功能,该模型输出考虑了历史解析操作、解析选择标准、用户选择的解析器或选择标准、延迟信息、性能信息以及在将解析能力预部署到不同的环境或服务器系统时的多种其他信息。而且,在运行时期间,特定的解析器被选择并用于以动态方式解析内容项,使得在运行时期间部署期望的解析功能,以执行对多种不同类型的内容项的高效解析。

将注意,以上讨论已经描述了各种不同的系统、组件和/或逻辑单元。将认识到的是,这样的系统、组件和/或逻辑单元可以由执行与那些系统、组件和/或逻辑单元相关联的功能的硬件项(例如,处理器和相关联的存储器或其他处理组件,其中一些在下面描述)构成。另外地,如下面所描述的,系统、组件和/或逻辑单元可以由加载到存储器中并随后由处理器或服务器或其他计算组件执行的软件构成。系统、组件和/或逻辑单元还可以由硬件、软件、固件等的不同组合构成,下面描述其一些示例。这些仅是可以用于形成上面描述的系统、组件和/或逻辑单元的不同结构的一些示例。也可以使用其他结构。

本讨论已经提到了处理器和服务器。在一个示例中,处理器和服务器包括具有关联存储器和定时电路(未单独示出)的计算机处理器。它们是它们所属并由其激活的系统或设备的功能部分,并促进这些系统中的其他组件或项的功能。

而且,已经讨论了许多用户接口显示。这些用户接口显示可以采取多种不同的形式,并且可以在其上设置有多种不同的用户可致动的输入机制。例如,用户可致动的输入机制可以是文本框、复选框、图标、链接、下拉菜单、搜索框等。也可以以多种不同的方式来致动它们。例如,可以使用点击设备(例如,跟踪球或鼠标)来致动它们。可以使用硬件按钮、开关、操纵杆或键盘、拇指开关或拇指垫等来致动它们。也可以使用虚拟键盘或其他虚拟致动器来致动它们。另外地,在其上显示它们的屏幕是触敏屏幕的情况下,可以使用触摸手势来致动它们。而且,在显示它们的设备具有语音识别组件的情况下,可以使用语音命令来致动它们。

也已经讨论了许多数据储存库。要注意的是,这些数据储存库各自可以分成多个数据储存库。它们全部可以在访问它们的系统的本地,它们全部可以是远程的,或者一些可以是本地的,而另一些是远程的。本文设想了所有这些配置。

而且,这些图示出了具有归因于每个块的功能的多个块。将注意的是,可以使用更少的块,因此功能由更少的组件来执行。而且,可以将更多的块与分布在更多组件之间的功能一起使用。

图5是图1中示出的架构100的框图,不同之处在于其元素被设置在云计算架构500中。云计算提供了计算、软件、数据访问和存储服务,这些服务不要求最终用户了解递送服务的系统的物理位置或配置。在各种实施例中,云计算使用适当的协议在诸如互联网之类的广域网上递送服务。例如,云计算提供商通过广域网递送应用,并且可以通过web浏览器或任何其他计算组件对其进行访问。架构100的软件或组件以及对应的数据可以存储在远程位置处的服务器上。云计算环境中的计算资源可以在远程数据中心位置处进行整合,或者它们也可以是分散的。云计算基础结构可以通过共享数据中心递送服务,即使它们对于用户表现为单个接入点。因此,可以使用云计算架构从远程位置处的服务提供商提供本文所描述的组件和功能。可替代地,可以从常规服务器提供这些组件和功能,或者这些组件和功能可以直接或以其他方式安装在客户端设备上。

该描述旨在包括公共云计算和私有云计算。云计算(公共和私有)都提供了实质上无缝的资源池化,并减少了管理和配置底层硬件基础结构的需要。

公共云由供应商管理,并且典型地使用同一基础结构来支持多个消费者。而且,与私有云相反,公共云可以使最终用户摆脱管理硬件的负担。私有云可以由组织本身管理,并且典型地不与其他组织共享基础结构。组织仍在某种程度上维护硬件,例如,安装和维修等。

在图5中示出的示例中,有些项与图1中示出的项相似,并且它们具有相似的附图标记。图5具体示出了系统102、104和132可以位于云502中(其可以是公共的、私有的,或者部分是公共的而其他部分是私有的组合)。因此,租户106、108、110、112使用用户设备通过云502访问这些系统。

图5还描绘了云架构的另一示例。图5示出了还可以设想架构100的一些元素可以被设置在云502中,而其他元素没有被设置在云502中。通过示例的方式,数据储存库120、126、138可以被设置在云502的外部,并且通过云502进行访问。在另一示例中,动态构建系统132(或其他项)可以在云502的外部。无论它们位于何处,都可以由租户106、108、110、112或系统102、104通过网络(广域网或局域网)直接访问它们,它们可以由服务托管在远程站点,或者可以通过云将它们作为服务提供,或者通过驻留在云中的连接服务对其进行访问。本文设想了所有这些架构。

还将注意到,架构100或其一部分可以设置在多种不同的设备上。这些设备中的一些包括服务器、台式计算机、膝上型计算机、平板计算机或其他移动设备,例如,掌上型计算机、手机、智能电话、多媒体播放器、个人数字助理等。

图6是计算环境的一个示例,在该计算环境中可以部署(例如)架构100或其一部分。参考图6,用于实现一些实施例的示例系统包括以计算机810的形式的通用计算设备。计算机810的组件可以包括但不限于处理单元820(其可以包括来自先前图中的处理器或服务器)、系统存储器830和系统总线821,该系统总线821将包括系统存储器的各种系统组件耦合到处理单元820。系统总线821可以是包括存储器总线或存储器控制器、外围总线和使用各种总线架构中的任一种总线架构的本地总线的若干类型的总线结构中的任一种。通过示例而非限制的方式,这样的架构包括行业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)本地总线和外围组件互连(PCI)总线(其也称为夹层总线)。关于图1描述的存储器和程序可以被部署在图6的对应部分中。

计算机810典型地包括各种计算机可读介质。计算机可读介质可以是可以由计算机810访问的任何可用介质,并且包括易失性介质和非易失性介质、可移除介质和不可移除介质。通过示例而非限制的方式,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质不同于(且不包括)调制数据信号或载波。计算机存储介质包括硬件存储介质,该硬件存储介质包括以任何方法或技术实现的易失性介质和非易失性介质、可移除介质和不可移除介质,其用于存储诸如计算机可读指令、数据结构、程序模块或其他数据之类的信息。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪速存储器或其他存储技术、CD-ROM、数字通用盘(DVD)或其他光盘存储装置、磁带盒、磁带、磁盘存储装置或其他磁存储设备,或者可以用于存储期望的信息并且可以由计算机810访问的任何其他介质。通信介质典型地在传输机制中体现计算机可读指令、数据结构、程序模块或其他数据,并且包括任何信息递送介质。术语“调制数据信号”意味着具有以将信息编码到信号中的方式来设置或改变其特性中的一个或多个特性的信号。通过示例而非限制的方式,通信介质包括诸如有线网络或直接有线连接之类的有线介质,以及诸如声学、RF、红外和其他无线介质之类的无线介质。以上介质中的任一个的组合也应包括在计算机可读介质的范围内。

系统存储器830包括以易失性和/或非易失性存储器形式的计算机存储介质,例如,只读存储器(ROM)831和随机存取存储器(RAM)832。基本输入/输出系统833(BIOS)包含帮助例如在启动期间在计算机810内的元件之间传输信息的基本例程,其典型地存储在ROM831中。RAM 832典型地包含可立即访问和/或当前由处理单元820正在操作的数据和/或程序模块。通过示例而非限制的方式,图6示出了操作系统834、应用程序835、其他程序模块836和程序数据837。

计算机810还可以包括其他可移除/不可移除的易失性/非易失性计算机存储介质。仅通过示例的方式,图6示出了从不可移除非易失性磁性介质读取或写入不可移除非易失性磁性介质的硬盘驱动器841,以及从可移除非易失性光盘856读取或写入可移除非易失性光盘856(例如,CD ROM或其他光学介质)的光盘驱动器855。可以在示例性操作环境中使用的其他可移除/不可移除、易失性/非易失性计算机存储介质包括但不限于磁带盒、闪速存储器卡、数字通用盘、数字视频带、固态RAM、固态ROM等。硬盘驱动器841典型地通过诸如接口840之类的不可移除存储器接口连接到系统总线821,并且光盘驱动器855典型地通过诸如接口850之类的可移除存储器接口连接到系统总线821。

可替代地或另外地,本文描述的功能可以至少部分地由一个或多个硬件逻辑组件执行。例如但不限于,可以使用的说明性类型的硬件逻辑组件包括现场可编程门阵列(FPGA)、程序特定集成电路(ASIC)、程序特定标准产品(ASSP)、片上系统系统(SOC)、复杂可编程逻辑器件(CPLD)等。

上面讨论并在图6中示出的驱动器及其相关联的计算机存储介质为计算机810提供计算机可读指令、数据结构、程序模块和其他数据的存储。在图6中,例如,硬盘驱动器841被示为存储操作系统844、应用程序845、其他程序模块846和程序数据847。注意,这些组件可以与操作系统834、应用程序835、其他程序模块836和程序数据837相同或不同。这里为操作系统844、应用程序845、其他程序模块846和程序数据847赋予不同的附图标记,以说明它们至少是不同的副本。

用户可以通过诸如键盘862、麦克风863和定点设备861(例如,鼠标、轨迹球或触摸板)之类的输入设备向计算机810中键入命令和信息。其他输入设备(未示出)可以包括操纵杆、游戏垫、碟形卫星天线、扫描仪等。这些和其他输入设备通常通过耦合到系统总线的用户输入接口860连接到处理单元820,但是可以通过其他接口和总线结构(例如,并行端口、游戏端口或通用串行总线(USB))连接。视觉显示器891或其他类型的显示设备也经由诸如视频接口890之类的接口连接到系统总线821。除了监视器之外,计算机还可以包括诸如扬声器897和打印机896之类的其他外围输出设备,这些外围输出设备可以通过输出外围设备接口895连接。

计算机810使用到一个或多个远程计算机(例如,远程计算机880)的逻辑连接在联网环境中操作。远程计算机880可以是个人计算机、手持式设备、服务器、路由器、网络PC、对等设备或其他公共网络节点,并且典型地包括上面相对于计算机810描述的元素中的许多或所有元素。图6中描绘的逻辑连接包括局域网(LAN)871和广域网(WAN)873,但是也可以包括其他网络。这样的联网环境在办公室、企业范围的计算机网络、内联网和互联网中是常见的。

当在LAN联网环境中使用计算机810时,计算机810通过网络接口或适配器870连接到LAN 871。当在WAN网络环境中使用计算机810时,计算机810典型地包括调制解调器872或用于通过WAN 873(例如,互联网)建立通信的其他模块。可以在内部或外部的调制解调器872可以经由用户输入接口860或其他适当的机制连接到系统总线821。在联网环境中,相对于计算机810或其部分描绘的程序模块可以存储在远程存储器存储设备中。通过示例而非限制的方式,图6示出了驻留在远程计算机880上的远程应用程序885。将认识到的是,所示的网络连接是示例性的,并且可以使用在计算机之间建立通信链路的其他手段。

还应注意,本文描述的不同示例可以以不同的方式组合。即,一个或多个示例的部分可以与一个或多个其他示例的部分组合。本文设想了所有这些。

示例1是一种计算系统,包括:

检测和监视逻辑单元,其从内容理解系统中检测与解析器相关的数据,该内容理解系统解析内容项以生成内容项中的每一个的文本摘要,与解析器相关的数据指示由内容理解系统解析的内容的类型,以及解析器标识符指示用于解析内容项的用户选择的解析器;

解析器跟踪子系统,其标识可用解析器;

解析器选择逻辑单元,其用于进行以下操作:接收要被解析的内容项;访问解析器跟踪系统;并且基于解析器标识符来自动地选择可用解析器中的用于解析要被解析的内容项的解析器;以及

部署子系统,其生成控制信号以部署所选择的解析器。

示例2是任何或所有先前示例的计算系统,并且还包括:

用户选择标准检测逻辑单元,其被配置为检测指示优先考虑的选择标准的优先级输入,解析器选择逻辑单元被配置为基于优先考虑的选择标准来选择解析器。

示例3是任何或所有先前示例的计算系统,其中,检测和监视逻辑单元包括:

用户反馈检测逻辑单元,其被配置为检测针对多种不同的对应的内容类型中的每一种内容类型的单独的解析器标识符,每个单独的解析器标识符标识用于解析对应的内容类型的用户选择的解析器。

示例4是任何或所有先前示例的计算系统,其中,接收到的要被解析的内容项包括具有多种不同的内容类型的复杂内容项,并且其中,解析器选择逻辑单元基于与多种不同的内容类型相对应的解析器标识符来选择多个不同的解析器。

示例5是任何或所有先前示例的计算系统,其中,解析器选择逻辑单元基于优先考虑的选择标准来选择多个不同的解析器。

示例6是任何或所有先前示例的计算系统,并且还包括:

内容分类器逻辑单元,其被配置为基于要被解析的内容项的特性来将要被解析的内容项分类为预定义的内容类型类别,每个预定义的类别具有对应的解析器标识符。

示例7是任何或所有先前示例的计算系统,其中,解析器选择逻辑单元被配置为基于与预定义的类别相对应的解析器标识符来选择解析器,内容分类器逻辑单元将要被解析的内容项分类为该预定义的类别。

示例8是任何或所有先前示例的计算系统,其中,检测和监视逻辑单元包括:

性能数据检测逻辑单元,其被配置为检测指示解析器延迟和资源使用情况的解析器性能数据。

示例9是任何或所有先前示例的计算系统,并且还包括:

模型生成逻辑单元,其被配置为基于与解析器相关的数据并且基于解析器性能数据来生成动态构建模型,该动态构建模型被配置为输出解析器部署信号,该解析器部署信号指示要被部署到位置的模型标识的解析器。

示例10是任何或所有先前示例的计算系统,并且还包括:

预部署逻辑单元,其被配置为将模型标识的解析器部署到位置。

示例11是一种计算机实现的方法,包括:

从内容理解系统中检测与解析器相关的数据,该内容理解系统解析内容项以生成内容项中的每一个的文本摘要,与解析器相关的数据指示由内容理解系统解析的内容的类型,以及解析器标识符指示用于解析类型的内容的用户选择的解析器;

接收要被解析的内容项;

访问可用解析器的集合;

基于解析器标识符来自动地选择可用解析器中的用于解析要被解析的内容项的解析器;以及

生成控制信号来部署所选择的解析器以解析接收到的要被解析的内容项。

示例12是任何或所有先前示例的计算机实现的方法,并且还包括:

检测指示用户优先考虑的选择标准的优先级输入,其中,自动地选择解析器包括基于优先考虑的选择标准来选择解析器。

示例13是任何或所有先前示例的计算机实现的方法,其中,检测与解析器相关的数据包括:

检测针对多种不同的对应的内容类型中的每一种内容类型的单独的解析器标识符,每个单独的解析器标识符标识用于解析对应的内容类型的用户选择的解析器。

示例14是任何或所有先前示例的计算机实现的方法,其中,接收到的要被解析的内容项包括具有多种不同的内容类型的复杂内容项,并且其中,自动地选择解析器包括:

基于与多种不同的内容类型相对应的解析器标识符来选择多个不同的解析器。

示例15是任何或所有先前示例的计算机实现的方法,其中,自动地选择解析器包括:

基于优先考虑的选择标准来选择多个不同的解析器。

示例16是任何或所有先前示例的计算机实现的方法,并且还包括:

基于要被解析的内容项的特性来将要被解析的内容项分类为预定义的内容类型类别,每个预定义的类别具有对应的解析器标识符。

示例17是任何或所有先前示例的计算机实现的方法,其中,自动地选择解析器包括:基于与预定义的类别相对应的解析器标识符来选择解析器,内容分类器逻辑单元将要被解析的内容项分类为该预定义的类别。

示例18是任何或所有先前示例的计算机实现的方法,其中,检测与解析器相关的数据包括:

检测指示解析器延迟和资源使用情况的解析器性能数据。

示例19是任何或所有先前示例的计算机实现的方法,并且还包括:

基于与解析器相关的数据并且基于解析器性能数据来生成动态构建模型,该动态构建模型被配置为输出解析器部署信号,该解析器部署信号指示要被部署到位置的模型标识的解析器;以及

将模型标识的解析器部署到位置。

示例20是一种计算系统,包括:

检测和监视逻辑单元,其从内容理解系统中检测与解析器相关的数据,该内容理解系统解析内容项以生成内容项中的每一个的文本摘要,与解析器相关的数据指示由内容理解系统解析的内容的类型,以及解析器标识符指示用于解析内容项的用户选择的解析器;

解析器跟踪子系统,其标识可用解析器;

内容分类器逻辑单元,其被配置为基于要被解析的内容项的特性来将要被解析的内容项分类为预定义的内容类型类别,每个预定义的类别具有对应的解析器标识符;

用户选择标准检测逻辑单元,其被配置为检测指示优先考虑的选择标准的优先级输入;

解析器选择逻辑单元,其用于进行以下操作:接收要被解析的内容项;访问解析器跟踪系统;并且基于解析器标识符、基于预定义的类别并且基于优先考虑的选择标准来自动地选择可用解析器中的用于解析要被解析的内容项的解析器;以及

部署子系统,其生成控制信号以部署所选择的解析器。

尽管已经用特定于结构特征和/或方法动作的语言描述了主题,但是应该理解,所附权利要求书中定义的主题不一定限于上面描述的特定特征或动作。而是,上面描述的特定特征和动作被公开作为实现权利要求书的示例形式。

相关技术
  • 动态生成的内容理解系统
  • 结合弹幕理解和视频内容理解的精彩片段提取方法及系统
技术分类

06120113142881