一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

跨文档智能写作和处理助手的制作方法

2022-06-12 03:30:37 来源:中国专利 TAG:

跨文档智能写作和处理助手
1.相关申请的交叉引用
2.本技术根据35u.s.c.
§
119(e)要求提交于2019年9月16日的美国临时专利申请序列号62/900,793,“cross-document intelligent authoring and processing assistant”的优先权。上述所有内容的主题通过引用全部并入本文。
技术领域
3.本公开一般涉及用于ai自我监督地创建分层语义标记的文档和/或用于协助写作和处理这样的文档的方法和设备。


背景技术:

4.许多业务创建了多个文档,这些文档非常相似,即使它们每次都是定制的。例如,保险办公室可以针对具体种类的保险产生许多建议,但每个建议都必须针对具体客户的需求进行裁制。这些文档可以被认为具有相同“类型”,因为它们具有相似的文本(并且可能还有图像)内容(反映相似的目的和主题)、大单元(诸如节段)的相似选择和布置,并且经常甚至具有相似的几何排版和格式化特性。
5.一些类型的文档是广泛地被知晓和使用的,但许多不是。许多是对具体业务、市场或应用特定的,并且新文档是为新情况创建的。可以被称为“写作者”或“编辑”的用户通常通过复制相同类型的较早文档并且然后按需要进行修改(例如通过人工编辑或替换某些内容块)来创建具体类型的新文档(有时被称为“目标文档”)。
6.在当前的实践中,文字处理通常只在需要实现格式化的情况下才会标识块:例如,标题、脚注和数字可被显式标出以便获取特殊的格式化;但名称、地址或日期很少被显式标出。即使当被标识时,块通常只与格式化效果(诸如边距、字体等)相关联,该格式化效果是有用的信息,但并不直接提供其数据类型或语义角色的任何指示。相似地,文字处理程序经常只在视觉上表示分层包含:经常没有嵌套节段本身的显式标识,而只是被不同格式化的标题的显式表示。
7.当创建与先前文档相同的一般种类的新文档时,在许多情况下,大部分工作是文本编辑、替换、移除或插入某些块,注意不要混淆具有不同语义角色的块(诸如交换买方和卖方地址)。这通常需要人工干预,因为写作系统通常对这些块一无所知,特别是它们的数据类型或语义角色,并且因此不能非常有效地提供帮助。
8.在一些简单情况下,可以使用“表单”和“模板”,提供显式的位置来填写特别块的内容。然而,表单通常只解决简单的情况,其中基本上所有需要的块都可以提前列举,并且其中很少有大的、可重复的或高度结构化的块。创建表单也需要熟练的技巧,难以根据情况的变化进行调整,并且不能积极地帮助作者。
附图说明
9.本专利或申请文件包含至少一张彩色图纸。具有(多张)彩色图纸的该专利或专利
申请出版物的副本将由专利局在提出要求并支付必要开销后提供。
10.本公开的实施例具有其他优点和特征,这些优点和特征在结合附图中的示例时,从以下具体实施方式和所附权利要求书中更容易明显,在附图中:
11.图1是用于使用机器学习和人工智能来创建分层语义标记的文档的系统和过程的一个实现的框图。
12.图2是示出了通过图1的系统跟踪不同文档集的处理的仪表板的屏幕截图。
13.图3是用于接收来自用户的反馈的用户界面的屏幕截图。
14.图4是与其他软件应用程序的集成的屏幕截图。
15.图5是可与本发明一起使用的计算机系统的一个实施例的框图。
具体实施方式
16.概述
17.被确定为是相同类型的一组文档构成“文档集”或“文档集群”。例如,保险公司对某类客户的某种保险的建议可被视为相同类型,并且形成文档集。相同公司对不同种类的保险的建议,或对他们认为不同的客户的建议,可被视为属于不同文档集的不同类型。租赁协议、某种患者的临床笔记、销售建议、日程表、会议纪要等是其他潜在的文档类型,还有分享内容、结构和/或排版的独特模式的子类型。
18.在文档集内创建和编辑新的目标文档经常地涉及编辑或替换“语义上显著”的“块”:这样的块是文档的特定部分,通常但不一定是连续的文本跨度,该特定部分具有特定的数据类型和语义角色,并且对于业务或其他过程具有意义和显著性。
19.这些块具有各种数据类型,其在这里比许多计算机系统中的原子数据类型更细化。例如,给定的块不仅可以表示字符串,而且可以表示:个人或组织名称;日期;持续时间(与日期完全不是一回事);货币金额。更大的块可以包括药物或其他物质的列表、行程、要遵循的规程、信息包(诸如医疗处方);以及无数的其他信息。
20.此外,块可以具有与它们出现在其中的文档相关的语义角色。例如,人名可以是租赁协议中的“租户”,或销售建议中的“卖方”,或另一个人的“代理人”。日期可以表示某种责任或活动的开始或结束。美元数额可以是定期付款数额,或者是与某些条件相关的罚款或奖金,等等。这样的语义角色对于正确使用信息块中的信息是重要的。语义角色的名称被称为“语义角色标签”,或简称为“标签”。
21.块通常表示为包,包括其位置、数据类型、语义角色和/或其他数据/元数据。位置通常表示为起点和终点,它们可以以几种方式表示,诸如插入的标志或字节、字符或词元偏移(要么是文档的全局,要么是相对于既定的id、标志或其他对象)。语义角色由标签或其他标识符表示。块可具有任何大小,并且一些块可以包含其他块作为“子块”。块不仅可以包含文本,而且可以包含非文本数据,诸如图像或其他媒体,以及“结构”(诸如表、列表、节段等)。
22.本文中公开的技术使用机器学习、人工智能和其他计算机实现的方法来标识文档中各种语义上重要的块,为它们自动提供适当的数据类型和语义角色,并且使用这种增强的信息来协助作者并支持下游过程。块的位置、数据类型和语义角色经常可以从以下项自动被确定:这里所称的“上下文”,即它们的格式化、结构和内容的组合;相邻或附近内容中
的那些;文档中的总体出现模式;以及所有这些事物跨文档的相似性(主要但不限于相同文档集中的文档之间)。“附近内容”包括在水平方向上接近的内容,诸如在文本阅读顺序中的前后;也包括在垂直方向上接近的内容,诸如在相同容器结构内,如列表和节段,以及它们各自的标志、标题、级别等。相似性不限于精确或模糊的字符串或属性比较,而且可以包括自然语言语法结构、ml(机器学习)技术的相似性,诸如文字、块和其他嵌入的测量相似性,以及先前所标识的块的数据类型和语义角色的相似性。
23.例如,个人或组织名称通常可以被标识为具有语义角色(诸如“卖方”),因为文档是这样说的,经常使用某种人类语言中的(多个)句子,但也经常涉及更大的上下文。再例如,一个或多个文字通常可以容易地被标识为表示数据类型,诸如“药物名”;但是需要上下文来确定它带有过敏的语义角色,而不是处方。语义角色的重要证据经常不在同一个句子中,而是以各种其他方式被表达,诸如通过该块出现在更大的块中(诸如“已知的过敏”节段)。语法和文档结构组织的灵活性和多样性(更不用说错别字、转录错误等),使得标识数据类型不那么困难,但标识语义角色,特别是范围大于单个句子的语义角色,则非常困难。
24.给定的语义角色可以将块与整个文档或其他块相关。例如,航班的出发时间与行程中的一个特定“航程”绑定,并且与其他“航程”只间接相关。通常,块的分层结构将这样的项目适当地分组在一起,诸如在节段、表部分等内共置。
25.更详细地说,语义上显著的块的示例包括:合同的特定参与方的名称、地址和其他特性;医疗记录中的处方药和规定程序;房地产建议中的要求(或除外事项);行程中的日期和航班号;等等。这些都可以被视为块的语义角色。还有具有各种类型和角色的更大块,诸如整个节段和子节段。这些经常作为整体被插入或移除,也许还具有较小的块在内变化。块可以是分层的;也就是说,较大的“包含”块可以包含其他“子块”达到任何数目的级别。
26.块通常是文档中的一系列连续的文字,诸如“无名氏(john doe)”。然而,块可以包括部分文字。“无名氏的房子(john doe's house)”包括名称,但该名称在撇号前结束(在文字中间)。块甚至可以是不连续的,例如“john(也被称为

bill’)doe”中的同一个名称。排版也可以使块不连续,例如,在块的中间可以出现分页(也许有页眉、页脚或脚注,出于一些目的可以忽略);中间的图、表、图表、侧边栏或其他显示;等等。
27.块的实际位置和上下文也可能是重要的—块不仅仅是隔离的字符串,其可能多次出现,对不同的实例具有不同(或没有)语义角色。更现代的系统通常支持行内或孤立(standoff)标记,有时被称为“注释”,其可以持久地将各种标签和其他信息与语块相关联。例如,html提供了用于人工标记通用结构块边界的标签(“div”、“ol”等),以及用于(通常)较小块的几种广泛类型或角色(“acronym”、“kbd”、“dfn”、“cite”等)。其他的xml架构(schema)提供了许多其他标记,并且文字处理程序允许经由“style(样式)”进行多少有点相似的标记。
28.一些块可以表示通常被称为“字段”的事物。这些经常是小块,并且经常以相似的上下文和排版出现在给定集中的许多或所有文档中,但通常在每个文档中具有不同的文本内容。它们也可以在单个文档中多次出现,内容相同或非常相似。这样的块可以被称为“字段块”。在基于模板的系统中,它们经常被人工发现并作为“字段”处理,但是在这里,它们是通过它们在文档内和跨文档的上下文和出现的模式被发现的,并且以与其他块大致相同的方式被指派数据类型和语义角色。它们可能表示也可能不表示命名实体,诸如个人名称、地
址、日期等。
29.另一种通常类型的块可被称为“结构”或“结构性”块。这样的块通常较大,并且经常包含许多其他块(其中一些也可以是结构块)。它们频繁地具有“题目(title)”或“标题(heading)”,其提供名称、编号、描述和/或关于结构块的其他信息。结构块的示例包括章、节段、表、图、侧边栏和许多其他示例。结构块的类型和语义角色对于确定附近或包含的块的类型和语义角色经常是重要的。
30.不仅数据类型,而且特定语义角色,对于正确地创作和利用文档是重要的:要紧的是某个名称是否表示买方与卖方,或患者与医生;给定的日期是否为要求的开始或结束,或航班的出发与到达时间;数目是否指定本金、利息、剂量、温度、罚款,或某种其他事物。对于较大的块,角色包括事物如“责任限制”声明与“管辖法律”规范和“定义”,以及无数的其他事物。块的语义角色经常是针对特定领域或交易的,并且可以认为是在文档的最重要特征之中。在许多种类的文档中,具有特定数据类型和语义角色的块是必需的,或者至少是非常常见的,并且当块跨不同的文档对应时,它们被称为“对应物(counterpart)”。对应物块可以以相似的次序和模式出现,特别是对于相同作者或组织的文档,而且通常属于相同文档集。对应物块具有相同或非常相似的角色,并且通常具有相似的上下文和/或格式化。因此,块数据类型和语义角色的分布提供了有价值的信息来区分文档的类型,以及帮助标识其他文档中的对应物块。
31.许多对应物块具有相似的内容,但其他对应物块没有。例如,不同文档中的相同方(语义角色)通常是不同的个体,尽管出现在非常相似的上下文和使用模式中。这对“字段块”来说可能特别常见,但不是其专有的。
32.一旦被发现,业务文档中的具有其数据类型和语义角色的分层语义块就可以用于下游业务过程。例如,如果后台数据库被赋予具体当事人名称、具体日期以及诸如期限和利率等的数目,它就可以正确地记录新的抵押贷款。特别是对于这样的用途,语义角色是极其重要的:将正确的数据类型放到错误的数据库字段中(诸如交换卖方和买方的名称或地址)是大问题,特别是在将信息移动到下游数据库、过程或报告时。
33.一些特征和益处
34.本文中描述的技术可以具有各种特征和益处,包括以下中的任一项。
35.一些实现可以提供更容易、更高效和更准确的方式,以产生具有被分层组织的块的文档,这些块具有对业务过程有用的语义标记。这可以使用各种技术来实现,以标识不同大小的这样的块,发现它们在文档中扮演的数据类型和语义角色,并学习它们的使用模式、特性上下文等。该学习可以来自于对当前和以前文档的内容、结构和格式化的分析;来自于作者和编辑的反馈;以及对多个文档的比较,特别是相同文档集中的文档。有了该知识,系统可以为用户提供有价值的协助,例如,更容易创建更高质量的新文档,并且提取所期望的信息供下游使用,诸如与其他软件应用一起,在后台数据库、导出报告、合规性检查等中使用。这样的学习可以用无监督和自监督的学习技术来完成,这些技术不需要大量的预先标记或预先分析的数据,而是从未标记或最小标记的数据中推断模式。
36.一些实现可以使计算机能够通过发现和使用业务文档内和跨业务文档的模式来帮助写作者避免这些错误中的许多错误,并且因此减少实现给定质量水平所需的时间,在写作过程中进行协助。
37.当今,典型的文档系统并不标识块,或者特别是它们的数据类型或语义角色。这增加了作者和编辑的时间和开销,并且增加了将数据从文档导入后端数据库、仪表板或其他下游业务过程中的时间和开销。例如,从合同(逐块)人工寻找数据和复制数据到电子表格或数据录入表单是常见的。
38.一些实现可以在编写过程期间帮助标记这样的分层语义块,并且显式地表示它们,因此使它们易于被人们和/或计算机提取,并在连接到其他各种业务过程中节省时间和开销。
39.当前的技术通常没有充分利用由相同写作者或群体创建的多个文档,和/或相同类型的文档(在这里由特定文档集中的成员表示)之间的相似性,以更可靠地标识新文档中的块,或对可能的显著差异加标志以引起注意。显式的规则,诸如要求标题为“可分割性”的节段,只覆盖分析员容易注意和描述的相似性;是静态的,并且经常是约束性的(例如,缺少改述或重组织的情况,或者未能对反作用的条件做出响应);并且很快就会过时。小公司经常缺乏必要的资源来开发更具响应性的技术,并且经常几乎没有文档来证明其开销的合理性。另一方面,较小的公司经常具有不太多样的文档,这些文档更适合于自动分析,如本文中描述。
40.一些实现可以使用关于块和它们的内容、上下文、排版和跨文档的使用的模式的所提取信息,以协助作者创建新的文档。示例至少包括建议以下项:改变、重新格式化或移动的具体内容;在新文档中缺失的条款,尽管在相似文档中通常存在(称为“缺失”或“可能忽略”的块或内容);存在的条款,尽管该条款在相似文档中通常不存在(称为“不寻常”的块或内容);变化,诸如在特定位置交换不同参与方的名称或角色;等等。
41.一些实现可以接受并保留用户反馈,诸如当用户指示块:被标记有不正确的范围、数据类型或语义角色时;不是他们感兴趣的时;或者根本没有被标记时。一些实现可以使用特定的用户修正来改进机器学习和神经模型,以及记住在用户已经拒绝它们的情况下不要重复较早的建议(即使附加的学习未能防止特定的错误实例)。特别地,一些实现可能避免要求大量的审阅步骤或修正,这有利于少样本学习技术和谨慎选择要求的反馈,以便将所需的用户动作量最小化。一些当前技术学习非常具体的事物,例如,当用户告诉拼写检查器将文字添加到其字典时。然而,这涉及到仅仅是机械性记忆列表,而不是被用来确定复杂的稍后行为的对模型的迭代训练或微调,并且因此没有充分地利用诸如本文中描述的能力。
42.一些实现可以使用少量的用户修正来学习和改进其行为,同时避免在重新应用改进的但仍然不完善的模型时用重复的建议来烦扰用户。
43.许多业务在支持其过程的各种数据库中记录从文档获得的具体信息。例如,拥有许多出租物业的公司通常使用后端系统,以不仅帮助管理租户的付款,而且帮助管理源自其租赁协议的具体信息,诸如批准的宠物、租户不对此负责任的先前损坏,或其他信息。汽车或工具租赁者、抵押贷款公司、医疗保健提供方、市政当局和其他组织使用其他信息。许多商品和服务具有很多混合搭配的选择,并且主管会审阅关于其接受度、组合、定价和其他因素的统计数据。业务信息系统通常提供分析、检查一致性或合规性、得出报告、和/或支持其他业务过程,所有这些都可以通过使用本文中描述的块信息来促进。
44.通常,块和它们提供的信息散布在整个散文式文本中,被人工提取,并且被人工录入电子表格、数据库或其他系统中。以前需要人工工作,因为重要的块可以用无数种不同的
方式来表达,这是因为撰写协议、电子邮件等的自然人类语言的灵活性,以及类似地可变的排版和表示法惯例。这样的文档底层的谈判内容也经常跨多种文档分散,这些文档包括电子邮件、谈话记录、幻灯片演示等。该信息也可能是有用的,但通常人工处置。一些系统可以将这样的信息源作为文档来处理,从而获得已经描述过的相同的益处。
45.一些实现可以提供用于一旦特定文档如本文中描述被变换为分层语义标记的文档计算机就开始执行该特定文档的手段。通过将文档的分层标记的结构与提供文本的矢量-语义表示法的工具组合,可以将某些块标识为要求某些动作。例如,合同可以指定资金转移、通知或其他动作,以及启用或触发它们的条件。这些可以被标识并用于开始执行合同。
46.一些实现可以提供简单的方式,以在界面诸如“仪表板”中审阅和总结来自文档集的信息,并且将所标识的信息移入客户的后端数据库或相似系统中,从而使业务数据流更高效且成本更低,并增强质量保证、一致性和报告。一旦块被语义标记,在包含对应物块的文档集上生成总结报告就变得更容易。一些实现可以为用户提供非常简单的方式来创建这样的报告,只需通过点击要被包括的块的一个或多个示例,然后按角色或上下文跨集合中的所有文档定位和提取这些块。一些实现还可以协助用户找到缺乏预期的对应物块的文档,并且修正它们以包括或标识这样的块、或确认它们正确地不包括这样的块。
47.在另一个方面,通过将信息诸如块语义角色、出现模式和它们的文档的其他特性以及它们的用户反馈结合到系统的学习过程中,并且使用所得的改进的模型来增强和/或检查未来的文档,针对给定群体(诸如公司或部门)的性能可以被改进。然而,许多客户不希望与其他客户分享这样的信息,并且许多客户具有约束性的保密要求。另一方面,从公共的、非保密的源得出的一般信息和学习可以自由使用和共享。
48.一些实现可以提供反馈和学习的益处,同时保持每个客户的数据和从其得出的任何模型信息,对每个客户来说是单独和私有的,同时仍然共享基于非保密的公共数据的一般学习。保持将那些数据过程分开确保了信息不会从一个客户“泄漏”到另一个客户,即使是在统计学上。
49.对示例实现的介绍
50.下面是对示例系统的描述。见图1。该系统一般涉及用于ai自监督地创建分层语义标记的文档和/或用于协助写作和处理这样的文档的方法和设备。这包括过程诸如创作、结构化、注释、修改、审阅、从文档中提取数据和/或在下游业务过程中使用这样的数据。更具体地说,它侧重于与先前文档相似的文档,通过主要使用跨文档集(包括相对较小的文档集)的无监督和自监督机器学习技术来发现文档的详细分层结构,该结构由许多语义上有意义的块组成,与它们的角色相关联;以及侧重于在业务过程中使用这样的高度增强的文档。
51.该示例系统的操作使用了以下过程,这些过程在以下各节段中被更详细地描述。这仅仅是示例。其他实现可以使用不同的步骤组合,包括省略步骤、增加其他步骤和改变一些步骤的顺序。它们也可以使用下面列出的步骤的不同实现,包括每个步骤下描述的技术的不同组合。在图1中,步骤前面有“s”,因此下面的步骤1被标记为“s01”,以此类推。
52.1)导入:将用户文档组带入数据存储库110中。
53.2)组织:将文档按类型划分为文档集,诸如租赁与销售协议,或病历与当前临床记
录。
54.3)视觉提取:至少基于其内容和视觉排版从每个文档中提取(多个)线性文本流,包括关于有区别的文本和其他区域、它们的开始和结束位置、格式和内容的有限信息。所提取的数据可以被组织为“视觉行”或“视觉框”(也称为“超行”或“视觉”块),诸如以几何排版区分的段落。
55.4)结构:标识文档中的结构块的标题、列表项目和其他大类。
56.5)重新嵌套:确定节段和列表的嵌套关系,以及每个节段和列表的文本范围。
57.6)主题分块:分析每个文档的主题内容,并产生包含相似主题的区域的块(主题级块)。
58.7)主题标记:
59.i)使用嵌入和聚类针对语料库中的每个标题产生候选数据类型和语义角色标签。
60.ii)使用关键短语提取技术针对块产生候选数据类型和语义角色标签。
61.8)块标记:使用多种方法,例如神经网络、文字和字符嵌入、语法分析和模式匹配、正则表达式、相似性度量和/或其他方法,标识(可能是多个)数据类型和语义角色候选并指派给整个文档中的其他块。对于某些实施例,特别感兴趣的是:
62.i)对所得结构进行语法解析和模式匹配。
63.ii)使用问题回答技术以将小块与它们在文档中扮演的特定语义角色联系起来。
64.iii)将xpath树匹配与词嵌入技术组合,以匹配结构和语法树中的模式,尽管在措辞和选词方面可能存在广泛的差异。
65.9)命名实体识别(ner):标识数据类型并指派给整个文档中被检测为命名实体的块。
66.10)角色标记、提取式标记:将语义角色标签指派给块,诸如表示名称构成合同的“卖方”参与方,或者表示药物作为过敏症被提及,而不是作为处方被提及。
67.11)异常:标识通常在所考虑的文档集的文档中存在但在当前文档中不存在,或在所考虑的文档集的文档中不存在但在当前文档中存在的语义角色(反之亦然)。
68.12)仲裁:在用于块的备选范围、数据类型和语义角色标签之间进行调整和/或选择,从而产生易于用格式诸如xml格式表达的结构良好(well-formed)的结构。
69.13)dgml:创建文档的增强的版本,其包含对块位置、数据类型和语义角色标签的显式标识,并且还可能包含附加信息,诸如每个被标识的块的置信水平、相似块中预期的数据类型(诸如日期、日期范围、个人名称等)等。增强版本是使用被称为dgml的基于xml的标记语言来创建的。
70.14)反馈:将增强版本显示给(多个)用户,并选择块(以及可能被忽略的节段的潜在位置)向用户示出,从而收集用户的选择以确认、拒绝或做其他改变。用户也可以自由选择他们自己的阅读和审阅次序。反馈也可以应用于系统做出的任何其他解释,诸如步骤(2)中描述的将文档组织成文档集。
71.i)在可能被忽略的块的情况下,提供来自其他文档的优先示例,这些示例可以按期望被检查和/或被复制到当前文档中,并且通过为更小的嵌套块应用目标文档值而自动被定制。
72.15)反馈响应:跟踪用户对这些互动的响应,并使用该信息对模型120进行微调,以
及防止稍后重复相同或相似的错误。
73.16)下游通信、传输:按类型和/或角色选择块,并使用它们在文档集上生成报告,和/或将它们导出到下游系统,该下游系统增加功能(诸如后端合同数据库、监管合规性检查器、管理报告生成器等)。
74.图2是示出了仪表板的屏幕截图,该仪表板通过上述过程跟踪不同文档集一到七(one through seven)的处理情况。在该仪表板中,过程被分为以下阶段:
75.·
上传
76.·
预处理
77.·
审阅大块
78.·
审阅小块
79.·
准备好使用
80.颜色编码示出了完成的程度。绿色阶段是已经完成,红色阶段是正在进行中,并且黑色阶段是尚未开始。
81.下面更详细地描述上面列出的步骤中的每个步骤。
82.对示例实现的进一步描述
83.这里的编号反映了该特别示例的一般分析次序。然而,并非每个步骤都取决于每个先前的步骤,并且因此,许多要素可以在其他实现中被重新排序或并行化。要素也可以移位,或甚至重复,以便与其他要素交换额外信息,或者要素可以独立运行,诸如在单独的过程或机器中。
84.1)导入
85.该系统接受典型的文字处理程序文档(诸如ms word)和排版文档(诸如pdf或.png文件)。在每种情况下,视觉上连续的区域,诸如标题、段落、表单元、表、图像等被使用它们的相对位置、周围空白、字体和排版特性等的组合标识并表示为块。这些特征部分由设计者选择,并且部分通过对大量文档的图像和模式分析来学习。对于尚不具有机器可读文本内容的传入文档,也应用ocr。
86.那些块与选定的排版信息一起被提交给系统中的后续模块。
87.2)组织
88.用户不必将他们检查的文档组织到系统中。系统使用对文本内容、排版信息和已经检测到的结构信息(诸如一些标题的标识)进行操作的聚类方法,以将文档分组到特定类型文档的“集”中,例如租赁协议与出租与销售。找到的特定文档集可以与用户一起被检查,并且自动或由用户命名。一旦被建立,这些文档集促进稍后的机器学习和关于格式、内容、语义角色和其中差异的推理。例如,系统可能发现,给定的集中几乎所有的文档都具有特定的节段,其中有特定角色和个人名称的数据类型的三个特定子块,其中一个在五个不同的节段中重复出现。这样的模式用于帮助标识其他文档的相似(和不相似)部分、向用户建议审阅或改变,并提供示例文本以供在相同(或可能不同)的集中的其他文档中重用。
89.将文档聚类成文档集可以使用来自文档结构(不同大小的块、数据类型和角色之间的次序和包含关系)和排版、以及文本内容的特征。一旦在至少一些文档中标识了一些块和/或角色,该信息也可以用来改进聚类,要么通过完全重新聚类,要么通过较小调整。例如,如果忽略具有相同角色的块的特定内容,诸如卖方和买方的名称、地址等,则相似的文
档可能变得几乎或甚至完全相同;或者检查不同块的出现模式是否相同,例如,一个名称(如卖方的)出现在某些位置,而另一个(如买方的)出现在某些其他位置。
90.系统既保留了已上传文件的原始组织到目录中(如果有的话),又保留了其自己对它们文档集中的组织。因此,用户可以查看这两种组织,并且学习算法可以使用这两种组织作为信息。例如,一些用户根据各种惯例来命名文档,和/或按客户、文档种类或其他特征来组织文档,这对于理解相似性的模式(诸如具有共同的块位置和角色)和文档之间的关系几乎总是有用的。
91.3)视觉提取
92.i)区域寻找
93.系统使用启发式方法和机器学习来基于几何模式标识文档中的区域。例如,在许多文档中,有意义的块具有特殊排版,诸如签名框、摘要、定义列表、表等。这样的模式可以通过考虑几何和/或排版特征、独特性或稀有性、和/或相同文档内或跨文档的对应关系,特别是相同文档集内的对应关系来自动被学习。
94.方法的选择取决于传入文档的格式。例如,文字处理程序文档通常提供关于段落边界的显式信息,但pdf或扫描页要求系统从视觉行来汇编它们,或甚至要分析空白尺寸来将字符指派到视觉行中(诸如在多栏文档中)。
95.ii)签名寻找
96.系统针对文档部分创建签名(也称为“文摘”),并使用这些签名来标识和分类“感兴趣的”附加块并找到它们的边界。签名不仅基于文本内容,而且基于上下文的各个方面,并且可以忽略较小的被包含块的内容(例如,其内容在对应物块中变化的字段块)。
97.签名可以使用甚至块的像素表示法。文本排版的位图图像被分成图块,优选大小约为24像素见方(根据扫描分辨率调整),并且图块被聚类。自动编码器和神经网络对这些的处理,包括它们的邻居关系,揭示了相似的视觉事件,诸如文本和规则之间的边界,文本块的边缘和角落,甚至缩进变化和实质性的字体/样式变化。然后,进一步的神经网络使用该聚类来共同标识相似的排版对象,这些对象频繁地指示或表征重要的块。
98.这里的方法可以使用无监督方法来基于文档块中的像素以及字符、块的大小、其在文档中的位置等生成文档块嵌入。(如前所述,图像也可以是块)。然后,聚类和比较技术可以为许多下游任务用于这些嵌入上。
99.iii)提取
100.该方面采取排版后的文档(例如,pdf或扫描的印刷页),并将文档中所识别的字符图像(“字形(glyphs)”)变换为表示字形的正确文档次序的文本流(该流在适当时也可以包含图或图像对象,而且可以有多个流,诸如脚注或页眉,它们在阅读次序中没有典型的位置)。在一些文档中,阅读次序是不完全显式的表示法。一个众所周知的示例是,在任何给定点处,通常没有对多列排版有效的指示,并因此第一“行”只延伸到一半(或更少),而不是全部。然而,有许多附加示例,其中文本的次序可能是复杂的或不明显的。例如,一些排版程序将每个字符分开绘制,使文字边界不明显。表单元、侧边栏、图、脚注和其他显示内容在文本次序中可能没有明显的位置。一些文本,诸如页眉和页脚中的文本(以及行末连字符)可能根本不要求在文本次序中的位置。许多格式没有提供某事物属于这样的特殊类别的显式指示。
101.系统通过将字形的视觉信息(位置、样式等)与理解文档中使用的书面语言的特性的深度神经网络组合来解决该任务,以建立文本流。此外,它检测许多基本的文本边界,诸如行、块、列、图像、行内字体变化和标题/页脚对象的文本边界。
102.iv)表示
103.在提取了文本序列和一些假设的结构块后,系统创建文档的表示法(在一个示例中称为“dgml”),其包括那些以及关于视觉特性(字体、颜色、大小等)的信息。块的表示法,包括信息(诸如它们的位置、类型和角色),被称为“注释”。然后,自然语言处理(nlp)和深度神经网络(dnn)可以使用该组合的数据。深度神经网络结合该视觉信息以协助将文档结构化为分层体系,以表示文档结构,其包括块诸如标题/正文、列表/列表项目等。
104.可以包括足够的信息,使得稍后的方面可以构建可编辑的文字处理器文档,该文档与原始源非常相似。这可以与其他结构、内容和块信息一起被包括在dgml或相似的表示法中。在许多情况下,文档中具有有区别的格式化和排版的部分也是有用的块。然而,与以其他方式需要的块不一致的格式化特性(反之亦然)仍然可以经由特殊的块类型、经由孤立注释,或经由其他方法来表示。
105.4)结构
106.结构管线将平面文本文件转换为分层结构,其中文档的节段、子节段和其他部分形成基于内容的对象的有序分层体系,这是本领域技术人员已知的结构。该转换是使用无监督的机器学习技术完成的。该方法具有几个阶段:
107.i)超行化(hyperlining)
108.这涉及将文本分割成“超行”,其是比视觉行更大的组,并且包括(相对于视觉)更有意义的逻辑单元,诸如段落、标题等。这优选使用经预训练的神经网络来完成,该神经网络考虑诸如词元的“文字形状”(尤其是前导和后导词元)的特征、诸如字体和间距特性的排版信息,以及相似的特征。一些超行也可能已经由较早的步骤提供(取决于输入文档的格式)。
109.ii)文档语言模型
110.这优选使用文档语言模型,该模型还包括关于文本内容、格式化和迄今为止已经发现的任何结构的信息,而不是仅仅基于文本的语言模型。这使得能够更好地检测块和它们的分层体系(诸如标题/正文、列表/列表项目等),因为从格式化页面学习识别有意义的块和它们出现的模式。
111.这创建了包括文本内容和视觉特性(几何形状、字体、颜色、大小等)两者的文档的表示法。然后,深度神经网络和nlp过程通过寻找表示文档结构的各种大小的块的范围和/或边界,在将文档结构化为具有数据类型和语义角色标签的块的分层体系的任务中利用这样的信息。在该阶段,发现的块主要是标题、节段、列表和项目、表、图和其他相对大的单元。
112.iii)超行聚类
113.这使用自动编码器以基于文字形状结构跨文档集将超行聚类,将每个超行指派给在排版、开始和结束内容以及其他特性的方面相似的超行集群中,其中每个集群由“集群id”来标识(这不应与文档集的创建或标识混淆)。
114.iv)行内(inline)标题
115.特别感兴趣的特殊情况是“行内标题”,即块的标题(其有时提供块的语义角色)本
身不在(多个)单独的视觉行上,而是与后续文本的开始在同一行上。通常,行内标题在版式上是有区别的,诸如黑体、下划线、不同的字体、后面的冒号或其他效果。单独的启发式算法和神经算法标识这些块。
116.v)少样本结构学习
117.尽管有上述先进的结构化方法,但可以预期,生成的结构具有某些不完善之处,或不符合用户的先验预期。如步骤(14)-(15)所述,少样本结构学习负责创建依赖于用户提供的反馈的机器学习模型。然后,该模型被用来生成结构,该结构组合了用户对结构的反馈和已经由系统产生的结构(并且也许通过先前的反馈迭代地增强)。
118.在此情况下应用的主要原则从机器翻译(mt)方法得出,其中序列被转换为另一个序列。在此情况下,描述超行的一个序列被转换为也包含将分层体系编码的开始/结束标志的另一个序列。
119.该过程在不同的阶段或步骤中进行:
120.(a)首先,使用公开可用的数据集对机器翻译模型进行预训练。
121.(b)“调度器”(描述见“反馈响应”节段)过滤用户反馈。
122.(c)从用户反馈生成新的结构文件,并且生成微调的机器翻译数据集。
123.(d)使用少样本学习原则对经预先训练的模型进行进一步训练。
124.5)重新嵌套
125.该方面使用“语料库重新嵌套”算法,在给定优选来自超行聚类步骤的集群id的展平列表的情况下,该算法使用下推自动机迭代地创建嵌套结构。通过比较相邻超行的签名,系统可以确定给定的标题或列表项是否属于更多、相等或更少的嵌套级别。这允许重建许多文档的多重嵌套分层结构(诸如章、节段、子节段、条款、列表等)。
126.在重新嵌套中考虑的特征包括:超行中的词元的“形状”(如nlp技术中已知的),特别是考虑第一个和最后一个;结束前一行的特别类别的标点符号(如果有的话);大写;格式化信息,诸如居前的空白、缩进、粗体和下划线;行开始处的枚举字符串的存在和形式(例如,像“iv(a)(1)”或“iv)”这样的模式)或者特定的粗体圆点或其他印刷符号字符;该枚举符的值;前面同种枚举符的存在、级别和值;等等。
127.6)主题分块
128.该方面在连续的文档块上使用词法统计和其他学习技术,以找到主题移位的位置。这增强了对大块的边界的标识,诸如关于给定主题的整个节段,因为节段(无论什么级别)在其内通常具有比其与相邻的节段更加统一的主题、词汇表和样式。
129.7)主题标记
130.i)主题标记器
131.针对语料库中的每个标题,如图1所示,该步骤
132.·
针对每个标题创建被称为“嵌入”的数字表示法。
133.·
至少基于那些嵌入对标题进行聚类。
134.·
至少基于诸如密度、元数和相似性水平等衡量标准,过滤掉“坏”聚类。
135.·
将每个剩余聚类中最常见的语义角色标签传播到所述聚类中的所有标题。
136.ii)关键短语标记器
137.针对每个块,该步骤使用关键短语提取技术的集合(诸如基于规则的语言学技术、
ml、统计学、贝叶斯等)来产生针对文本的候选语义角色标签。
138.8)块标记
139.i)语法
140.系统的该方面以文本的语言学分析开始,诸如自然语言处理任务,包括词性标注、依赖性解析、成分解析等。然后,该系统应用来自另一个领域的树匹配机制,以在经由nlp发现的树或类树结构内定位语法和其他结构。这些包括文档结构化方法,诸如树语法和树模式匹配,如诸如xpath、gate的工具所示范的。
141.使用这样的模式标识句子中的语法现象使得系统能够从文本本身提取语义角色标签,该语义角色标签然后被用来注释附近的块。例如,可以构建搜索模式,其基于句子的成分结构匹配“以下是我们的协议的条款(the following are the terms of our agreement)”(以及具有相似语法结构的其他句子);并且然后提取名词短语(在该示例中,“条款(the terms)”),并将其作为语义角色标签,用于该句子后面并包含这样的“条款(terms)”的内容中的一个或多个块。
142.ii)问题-回答
143.问题回答技术,包括用于问题回答的bert,被专门调整为标识针对候选块(例如,日期、人名、美元数额)的语义角色标签。与此相对,大多数传统的问题回答模型旨在回答例如“有效日期是什么?”的问题。该系统代替地训练模型来回答问题如“2018年7月8日是什么?”,并且旨在预测“有效日期”或“x的有效日期”,其中x表示文本中的另一个块(不仅仅是“日期”,其是数据类型而不是语义角色)。
144.该系统还发现合成问题,当被回答时,这些合成问题可以指向文本中的相关信息。这提供了自动提出将由问题-回答来使用的问题的能力。
145.iii)与嵌入集成的类xpath的规则
146.这里,在“语法”下讨论的领域中的工具与提供文本的矢量-语义表示法的工具,诸如word2vec、char2vec和许多相关方法集成。该系统使分析员能够表达和查询包括以下两者的模式:由xpath和类似工具良好处置的结构信息(其可以包括以xml或dom兼容的形式表达的块数据);以及由矢量模型良好处置的模糊或“语义”相似性信息。
147.9)ner(未标记的小块)
148.技术可以按数据类型标识一些块,诸如个人或公司名称、地址等(这被称为“命名实体识别”或“ner”)。然而,ner远远不能标识那些实体在文档中的语义角色。当前的技术也未能标识更大的块,诸如整个条款或节段,或包括有意义或有用的更大块的块组。
149.系统的该方面检测感兴趣的小块,但不一定也给它们指派角色。存在许多方法和工具用于标识文本中的ner。该系统使用多种方法,下面列出了这些方法的示例。这些创新主要是无监督的:
150.i)已建立的ner方法
151.ii)预期的文字
152.通过使用广泛的通用文本(诸如维基百科)训练n元语法的语言模型,建立“正常英语在上下文中的预期文字”模型。当查看特定文档时,系统提供标识不符合该通用模型、并因此倾向于对被处理的文档是特殊的n元语法的手段。
153.iv)tf-idf
154.这是基于tf-idf的方法(“词频与逆向文档频率”),并与标签传播和上下文语义标记结合使用。
155.v)序列聚类
156.提取小文字或字符序列,诸如n元语法,并使用上下文嵌入(例如bert的嵌入)对其进行聚类。预期的结果是共享语义含义的n元语法将开始聚类在一起。组合激增的代价是通过使用启发式方法(包括在句法树上)在聚类之前过滤掉一些n元语法来解决的。各种各样的聚类算法都可以被应用。在该示例中,hdbscan算法实现了有效的聚类,同时将随机噪声指派给“无”聚类。
157.vi)少样本ner
158.系统使用少样本学习技术,以从少量的已标记实例(例如,选择性的用户反馈)归纳出更广泛适用的规则或已学习参数的调整。这大大减少了必须要求用户反馈的次数,并更迅速地改进系统的性能。
159.10)提取式标记
160.系统的该方面为小块找到语义角色标签,这些标签直接出现在围绕块的(多个)句子中。有意义的块经常具有通过上下文以某种形式规定的其角色。例如:
161.无名女(jane doe)(“卖方”),居住在....
162.必须在每个月底前支付999美元的租金。
163.i)上下文语义标记(csl)
164.该过程使用在先前建立的结构(包括句子解析)上操作的神经网络,来学习文本中的什么部分可能是各种块的语义角色标签。许多块可能已经具有这样的标签,具有不同的源和置信水平,但这为那些标签以及新标签提供了支持或不利的附加证据。这里,模式中的一些模式涉及语法。例如,在“无名氏应在每个月的最后一个营业日之前支付1000美元的租金”中,标题动词显式了货币金额的角色:即,它是要支付的租金金额。其他模式是通过监督和/或无监督的方法,使用上下文中可用的结构、分块、标记和内容的特征而自动被学习的。格式化(诸如括号、表排版、关键短语和文字)、以及其他特征也为神经网络提供了特征。
165.有用的信息经常驻留在包含的块中,诸如节段或子节段,或其标题。例如,给定的药物是否作为处方药还是作为过敏源相关,可能只能通过查看包含节段的标题而可检测(这是为什么检测节段的正确分层嵌套很重要的另一个示例)。有许多其他的线索存在,其可以通过机器学习技术来学习,并且被应用以发现针对各种块的适用角色。跨文档的相似性也可以被使用,特别是与相同文档集中的文档一起使用,来关联针对相似的上下文所发现的但是针对孤立的文档来说可能无法发现的语义角色。
166.ii)标签传播
167.该过程使跨文档语料库中相似文本块的标签标准化。它既应用于从上下文提取的标签,又应用于从先前步骤而可用的标签。该算法使用合并聚类法基于它们的嵌入对块进行聚类,使用加权pagerank算法(其使用标签的频率/置信度作为初始节点权重)对块的每个聚类的候选标签进行排名,并且使用共同发生和嵌入相似性来确定标签彼此的相似程度。然后,它基于标签的聚类水平得分和我们正在标记的块与标签来自的块的相似程度(在内容、嵌入、结构、数据类型、语义角色和/或上下文方面)来给块指派标签。合并聚类和pagerank算法被应用于跨相似的上下文传播标签,并且使标签跨文档集更加一致。
168.11)异常
169.系统的该方面检查文档集内的多个文档(诸如在步骤(2)中产生的文档),并且标识在当前文档中出现、但是通常不在相同文档集的其他文档中具有对应物块的块,或者反之亦然。对应物块不需要具有完全相同的内容、结构、格式化、上下文、数据类型和语义角色,而是可以从一个文档到另一个文档有变化。然而,它们可以被识别为以那些方式与其他所标识的块基本相似。
170.当新文档包括通常不存在于相同文档集的其他文档中的块时,可以向用户问询它们中的一些或全部块,以便确认它们实际上是所意图的。在该示例系统中,当有问题的块在新文档和它所基于的文档(如果有的话)中是共同的,但在其他文档中很少时,这样的问询将更为普遍。
171.当新文档缺乏通常存在于相同文档集的其他文档、或者甚至特定相关的外部源(例如,房屋样式手册、合规性要求等)中的对应物块时,一些或所有这样的块的示例被建议给用户,其中内容取自其他文档。取决于诸如使用频率、是可用备选中最典型的(形心)、或具有与新文档中存在的其他块共同出现的高概率等因素,这样的建议可以针对用户而被排名。块建议可以自动被更新,例如,用取自新文档中的值替换特定于示例所取自的文档的名称、日期和其他子块。
172.此外,被建议添加或删除的块的选择可以有用地取决于不同作者、编辑或其他工作人员的实践。例如,如果当前作者的文档频繁地以特定方式与另一个作者的文档不同,这可能指示该不同是经考虑的选择,而不是错误。另一方面,如果在相同主管下工作的所有作者都以一种方式做事,但当前作者与之不同,这可能指示更需要审阅,至少在第一次注意到时是这样。
173.异常的建模考虑了结构和块数据类型和语义角色,以及上下文、内容和格式。例如,对块的什么数据类型和语义角色出现在其他块内部、与其他块相邻或以其他方式接近其他块的模式进行建模。违反既定模式可以被分类为异常,并且像任何其他异常一样被呈现给用户反馈。
174.12)仲裁
175.许多先前的步骤创建和/或操作文档的块,这些块被定义为在步骤(3)中产生的(多个)线性序列内的字符、词元和/或非文本对象的(通常但不一定连续的)范围。
176.在任何点考虑的块,可以通过“行内”元信息(诸如标记)来表示,或可以通过“孤立”表示法(其通过各种指针来指代文本中的位置)来表示。在该示例中,孤立表示法用于大多数处理,但行内表示法用于一些目的,诸如与外部工具的交流,其经常优选行内表示法。这些表示法和其他表示法在功能上是可互换的,并且它们之间选择可以由性能、方便性等方面的考虑来决定。
177.块的表示法包括关于什么步骤或实现创建了它们、它们的确定性如何(“置信水平”),以及它们的具体数据类型和/或语义角色标签的信息。可能频繁地出现冗余的、不确定的、冲突的或部分重叠的块,我们在这里称之为“非最优的”。例如,两个或更多个不同的过程可能将语义角色标签附加到相同跨度的文本(或者几乎是相同跨度,例如一个在名称前包括“博士”,并且一个没有)。块可以是嵌套的,有时是深度嵌套的,但也可以是任意重叠的(也就是说,其中重叠块中的每个重叠块都包含也在另一重叠块中的一些内容,并且包含
并非如此的一些内容)。在整个上述步骤中,系统可以维持可以表示大量注释(包括重叠的或共同定位的注释)的表示法。
178.这样的非最优块通常是不期望的,至少在文档被呈现给用户时是如此。此外,许多现存技术的nlp工具优选非重叠的结构,如本领域技术人员熟悉的许多文档工具和方法也是如此,诸如xml、json、sql和其他表示系统。通常是优选的更受限的结构经常被称为“分层的”或“结构良好的”,并且避免部分重叠的块。
179.系统的该方面将块的集合修改为严格分层的,并避免非最优块。这可以以多种方式实现。第一,块可以被完全删除(也就是说,块本身;它们标识的文档内容不被删除)。第二,块范围可以被修改(例如,通过包括或排除来自任一端的一个或多个字符或词元),以防止与另一个(多个)块重叠。第三,块可以被确定为是冗余的并且被合并。第四,块可以被发现是矛盾的(例如,如果一个工具认为“essex”是地区,并且一个工具认为是人),并且选择被做出。
180.该过程包括以下手段:快速找到部分和/或完全重叠的情况;按照类型、作用和置信度来比较块;以及通过修改块和它们的相关联数据来解决非最优的情况。选择要修改、合并或删除什么块考虑多个因素,诸如:置信水平;给定块数据类型、语义角色和内容的先验概率;语义角色标签之间的上下位关系;在给定上下文中出现的条件概率;当前和其他相似文档中其他块的数目、角色和分布;当时过程的优先级;关于相似情况的客户反馈;和/或其他方法。
181.修改也可以改变块置信水平。例如,系统的多个方面可以将相似或相同的语义角色标签应用于文档的相同或几乎相同的部分。在此情况下,这些标签通常会被合并,并且所得块被指派比它所包含的个体块更高的置信度。在其他一些情况下,在相互矛盾的块指派之间做出选择,但所选择的块最终可能会具有降低的可信度,以反映存在某种水平的反证。
182.该过程改进了块标识和标记的质量和一致性,使得信息能够与多种多样的工具互操作,并且使得能够更容易和可靠地分析结果。刚才描述的操作可以在任何(多个)时间应用,而不仅仅是在最后。例如,如果先前步骤为某个子任务使用外部工具,则它可能请求约简为良构性。被移除或被修改的块可能代替地被“挂起”,这意味着它们不再影响处理,但可以按要求重新引入;这使得能够实现不支持重叠的工具的这样的使用,而不必在之后从头开始重新创建先前工作,并提高处理灵活性和速度。
183.在一种方法中,在生成示出给用户的文档之前,所有重叠的和/或所有非最优的块被解决,使得结果可以容易地被编码为分层格式,诸如许多现代文字处理程序和其他工具使用的xml格式。然而,也有可能(甚至在xml中)在特定位置处维持多个可能重叠的备选以供潜在的稍后解决,诸如通过用户反馈或改进的算法学习。
184.13)dgml(docugami标记语言)
185.文档的增强版本表示文档结构、格式、内容和已标识的块,并且可以标识过程的哪些步骤标识了哪些块,以及有什么置信水平。一些实施例使用xml作为该表示法的句法,尽管多种多样的表示法可以包含基本相同的信息,诸如其他xml概要、json、各种数据库、自定义文本或二进制格式等。
186.在该步骤中,文档和关于其发现的块的信息被转换(或“序列化”)为xml表单,该表单可以容易地被传递给其他进程,最明显的是用于反馈、编辑和审阅的前端用户界面;以及
可用于“仪表板”应用程序的格式,该应用程序向其他用户(诸如组管理方、质量控制人员等)提供概述、统计和合规性信息。
187.dgml,即docugami标记语言,是用于该用途的特别xml架构,其在一个包中容纳了所有描述的信息。大多数先前架构可以处理结构、内容,并且有时也处理排版,但不像这里描述的那样在摘要中注释“块”。许多先前架构也没有提供通用机制,在该机制中,块可以在运行中自动被检测并且被表示,特别是与置信水平和出处信息一起。
188.对于一些文字处理程序和其他工具的文件格式,也有可能通过以对该格式透明的形式表示相同信息来将该信息“隧穿”。例如,如果工具支持嵌入式批注或元数据、“不可见”文本、可忽略的属性或其他相似特征,则本文中描述的信息可以隐藏在它们之内,从而允许在该工具中使用并可能修改所得文档;并且在被返回系统时隧穿信息仍可用。
189.14)反馈模式前端
190.通过已经描述的方法附加到文档及其已发现的块的广泛注释和分析使得通过编辑样本、模板或先前的文档,来引导用户产生相似但为当前需求定制的新文档是可行的。例如,该系统通常会标识出:合同的参与方和财产;在临床记录的病史、当前发现和其他特定节段下列出的药物或病症;相关日期;等等。通过还检查相同文档集的其他文档,该系统学习到哪些事物是不常见的、常见的或必需的,并且因此可以向用户提出说明要审阅和/或更新什么的更有用的推荐。例如,文档集中的几乎每份合同都可能存在生效日期,但其值可能在每份合同中都不同。相似地,参与方改变,但参与方的种类一致得多。
191.i)无引导的反馈
192.在与用户的互动中,系统首先请求关于在几个文档中发现(或可能没有发现)的块的反馈。为反馈而提出的前几个文档将是文档集的“集群形心”。最后的几个文档将是文档集中的“离群值”。
193.ii)引导的反馈
194.在这之后,系统通过向用户示出文档的选定部分,并询问针对他们的目前或潜在的标签、其范围等,引导用户提供反馈。
195.a.“感兴趣标签”是由基于pagerank的算法与语法和结构模型确定的。在那些标签之中,一组低置信度的实例被选择以供审阅。
196.b.在当前文档中没有更多的低可信度标签时,可以对附加文档重复同样的过程。在一些实施例中,模型是根据用户提供的反馈持续更新的。然而,反馈可以被积累起来,并且稍后、分批和/或离线时应用。转而,对模型的调整可以影响此后为反馈而呈现的块和标签的选择,并且可能触发对一些文档的重新分析。
197.c.系统使用基本相同的机制征求对字段和结构块的反馈。在一种方法中,所有的块检测器都提供置信度的估计,其可以与其他信息一起用来选择反馈的候选。
198.可以针对较小块与较大块、字段与结构块,或以其他次序,在不同的遍次中请求反馈。参见图3,这是用于用户反馈的示例用户界面。其显示一些或所有的块,并且允许用户选择特定的块进行检查,看到指派的类型和/或角色,以及可选的备选。用户可以移动块边界、选择或编辑标签,等等。优选地,用户还可以请求将(诸如对标签的)特定变化应用于所有对应的或相同类型的块。
199.15)反馈响应
200.i)编队查询是一种允许系统基于通常来自多个用户的用户反馈查询私人数据和公共数据两者的方法。所选的示例在语义和句法两者上都与以前的失败情况相似,这增加了反馈的价值。
201.ii)调度器。调度器是一种方法,用于将用户对多个ml模型和非ml算法的组合输出的用户反馈连接回到可以从反馈中学习的特定学习模型120。
202.系统允许模型从用户对其输出的用户反馈以及从用户对其他学习和非学习模型的输出的用户反馈中改进。这是通过将反馈用作所描述的多个数值和神经模型的增量(也称为“微调”)训练数据来实现的。在反馈被用来改进模型后,不仅特定文档被重新评估,而且文档集中的所有文档、或者甚至用户的所有文档被重新评估。因此,对每个文档的反馈可以改进针对所有文档的块标识、角色指派、结构发现,并且因此改进用户协助。该重新训练由图1中从步骤(15)到步骤(3)的虚线连接线表示。
203.文档和所有相关联信息有助于学习和分析文档集(特别是但不仅仅在特定文档集内),并且因此改进了对未来文档的性能。例如,一旦新的块被添加到文档集中的一个或多个文档中,该块就可用于未来文档(或较旧文档的修订),并可被建议用于未来文档。在某个点,没有最近引入的块角色或者存在最近较少使用的块角色可能会成为异常。该点可以由用户主动或者响应于反馈问题而选择,或者基于对应物块的随时间的使用曲线自动被选择。例如,如果在某个时间之前创作的一个文档集中的很少甚至没有文档具有给定角色和/或上下文的块(如“排除”节段),但大多数或所有后来创作的文档都有该块,那么在新文档中缺乏对应物块可能是异常的,并且可以这样有用地被建议给用户。
204.16)下游通信
205.在用诸如前面描述的块信息对(多个)文档进行注释后,选定的信息被转换为外部商业信息系统(诸如数据库、分析工具等)所要求的特别格式,并且直接或通过自动和/或人工审阅步骤传递给那些系统。例如,特定参与方的名称和地址可以被复制到数据库中的正确字段,如果它们只被标识为“名称”和“地址”本身,则可能无法自动完成。参见图4,这是与下游软件应用程序的集成的示例。在该示例中,已经提取了表示参与方预期同意的条款的块,并且它们被传递给类似于docusign的下游应用程序以待填写和签署。
206.图5是可以与本发明一起使用的计算机系统510的一个实施例的框图。上述步骤可以通过在这样计算机系统上执行的软件来实现。计算机系统510通常包括至少一个计算机或处理器514,其经由总线子系统512与外围设备进行通信。通常,计算机可以包括,或处理器可以是以下任一项:微处理器、图形处理单元或数字信号处理器,以及它们的电子处理等效物,诸如专用集成电路(asic)或现场可编程门阵列(fpga)。这些外围设备可以包括存储子系统524(其包括存储器子系统526和文件存储子系统528)、用户界面输入设备522、用户界面输出设备520,以及网络接口子系统516。输入和输出设备允许用户与计算机系统510互动。
207.计算机系统可以是服务器计算机、客户端计算机、工作站、大型机、个人计算机(pc)、平板计算机、机架安装的“刀片”或能够执行指定由该机器采取的动作的指令(顺序或以其他方式)的任何数据处理机器。
208.计算机系统通常包括操作系统,诸如微软的windows、太阳微系统的solaris、苹果计算机的macos、linux或unix。计算机系统通常还可以包括基本输入/输出系统(bios)和处
理器固件。操作系统、bios和固件被处理器用来控制连接到处理器的子系统和接口。与这些操作系统兼容的典型处理器包括来自英特尔的pentium和itanium、来自超微的opteron和athlon,以及来自安谋的arm处理器。
209.要求保护的本发明的创新、实施例和/或示例既不限于传统的计算机应用程序,也不限于运行它们的可编程装置。例如,要求保护的创新、实施例和/或示例可以包括光学计算机、量子计算机、模拟计算机等。计算机系统可以是多处理器或多核系统,并且可以使用分布式或远程系统或在该分布式或远程系统中实现。这里的术语“处理器”在最广泛的意义上使用,以包括单处理器和多核或多处理器阵列,其包括图形处理单元、数字信号处理器、数字处理器和这些设备的组合。此外,尽管可以只展示单个计算机系统或单个机器,但使用这样的术语的单数形式也应表示单独或联合执行指令以执行本文中讨论的操作中的任何一个或多个操作的计算机系统或机器的任何集合。由于计算机和网络的不断变化的性质,图5中描绘的计算机系统510的描述旨在仅作为用于展示优选实施例目的的一个示例。计算机系统510的许多其他配置是可能的,这些配置具有比图5中描绘的计算机系统更多或更少的组件。
210.网络接口子系统516提供到外部网络的接口(其包括到通信网络518的接口),并且经由通信网络518耦合到其他计算机系统或机器中的对应接口设备。通信网络518可以包括许多互连的计算机系统、机器和通信链路。这些通信链路可以是有线链路、光学链路、无线链路,或用于信息通信的任何其他设备。通信网络518可以是任何合适的计算机网络,例如广域网(诸如互联网),和/或局域网(诸如以太网)。通信网络可以是有线和/或无线的,并且通信网络可以使用加密和解密方法,诸如可以与虚拟专用网络一起使用。通信网络使用一个或多个通信接口,其可以从其他系统接收数据,并将数据传输给其他系统。通信接口的实施例通常包括以太网卡、调制解调器(例如,电话、卫星、电缆或isdn)、(异步)数字订户线(dsl)单元、火线接口、usb接口等。可以使用一个或多个通信协议,诸如http、tcp/ip、rtp/rtsp、ipx和/或udp。
211.用户界面输入设备522可以包括字母数字键盘、小键盘、指点设备(诸如鼠标、轨迹球、触摸板、手写笔或图形板)、扫描仪、合并到显示器中的触摸屏、音频输入设备(诸如语音标识系统或麦克风)、眼球凝视识别、脑波模式识别以及其他类型的输入设备。这样的设备可以通过有线或无线方式连接到计算机系统。一般来说,使用术语“输入设备”旨在包括将信息输入到计算机系统510中或通信网络518上的所有可能的设备类型和方式。用户界面输入设备通常允许用户选择出现在一些类型的用户界面输出设备(例如显示子系统)上的对象、图标、文本等。
212.用户界面输出设备520可以包括显示子系统、打印机或非视觉显示器(诸如音频输出设备)。显示子系统可以包括平板设备(诸如液晶显示器(lcd))、投影设备或用于创建可见图像的某种其他设备,诸如虚拟现实系统。显示子系统也可以提供非视觉显示,诸如经由音频输出或触觉输出(例如振动)设备。一般来说,使用术语“输出设备”旨在包括从计算机系统510向用户或向另一个机器或计算机系统输出信息的所有可能的设备类型和方式。
213.存储器子系统526通常包括多个存储器,其包括用于在程序执行期间存储指令和数据的主随机存取存储器(ram)530(或其他易失性存储设备),以及其中存储固定指令的只读存储器(rom)532。文件存储子系统528为程序和数据文件提供持久的存储,并且可以包括
硬盘驱动器、软盘驱动器连同相关联的可移除介质、cd-rom驱动器、光驱、闪存或可移除介质盒。实现某些实施例的功能的数据库和模块可以由文件存储子系统528存储。
214.总线子系统512提供了用于使计算机系统510的各种部件和子系统按意图彼此通信的设备。尽管总线子系统512被示意性地示出为单个总线,但总线子系统的备选实施例可以使用多个总线。例如,基于ram的主存储器可以使用直接存储器访问(dma)系统与文件存储系统直接通信。
215.尽管具体实施方式包含许多具体细节,但这些不应该被理解为限制本发明的范围,而只是展示不同的示例。应该理解的是,本公开的范围包括上文未详细讨论的其他实施例。对于本领域技术人员来说明显的是,在不背离所附权利要求书中限定的精神和范围的情况下,可以对本文中公开的方法和装置的布置、操作和细节进行各种其他的修改、改变和变化。因此,本发明的范围应该由所附的权利要求书及其法律上的等同形式确定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献