CN107533633A - 利用学习程序用于数据操纵 - Google Patents

利用学习程序用于数据操纵 Download PDF

Info

Publication number
CN107533633A
CN107533633A CN201680022672.XA CN201680022672A CN107533633A CN 107533633 A CN107533633 A CN 107533633A CN 201680022672 A CN201680022672 A CN 201680022672A CN 107533633 A CN107533633 A CN 107533633A
Authority
CN
China
Prior art keywords
template
learning program
learning
program
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201680022672.XA
Other languages
English (en)
Inventor
S·古尔瓦尼
S·H·纳加拉鲁
R·康达帕利
V·G·瓦苏
K·拉曼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN107533633A publication Critical patent/CN107533633A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/048Fuzzy inferencing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/776Validation; Performance evaluation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/12Fingerprints or palmprints
    • G06V40/1365Matching; Classification
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07DHANDLING OF COINS OR VALUABLE PAPERS, e.g. TESTING, SORTING BY DENOMINATIONS, COUNTING, DISPENSING, CHANGING OR DEPOSITING
    • G07D7/00Testing specially adapted to determine the identity or genuineness of valuable papers or for segregating those which are unacceptable, e.g. banknotes that are alien to a currency
    • G07D7/20Testing patterns thereon
    • G07D7/202Testing patterns thereon using pattern matching
    • G07D7/206Matching template patterns

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Medical Informatics (AREA)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Automation & Control Theory (AREA)
  • Fuzzy Systems (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Stored Programmes (AREA)

Abstract

本公开的示例描述了利用学习程序进行数据操纵。通过应用将包括未标注内容的信息与多个存储的模板进行比较的机器学习处理来检测与该信息相关联的模板。基于所检测的模板从包括多个学习程序的学习程序池中检测学习程序。基于学习程序的应用来操纵从该信息中提取的数据。还描述了其它示例。

Description

利用学习程序用于数据操纵
背景技术
***和应用的大多数用户不能开发用于执行数据操纵处理操作的程序代码。因此,用户依赖于程序员/开发人员编写代码来完成这样的处理。程序员通常开发面向域特定的并被设计为利用标注的内容进行工作的编程解决方案。然而,用户可访问的大多数信息都是非结构化的。本申请针对关于这种一般技术环境。
发明内容
本公开的示例描述了利用学习程序用于数据操纵。通过应用将包括未标注内容的信息与多个存储的模板进行比较的机器学习处理来检测与该信息相关联的模板。基于所检测的模板来确定学习程序池。从包括多个学习程序的学习程序池中检测学习程序。从该信息中提取的数据是基于学习程序的应用***作的。还描述了其它示例。
提供本发明内容以简化的形式介绍概念的选择,概念在下面的具体实施方式中进一步描述。本发明内容不旨在标识所要求保护的主题的关键特征或基本特征,也不旨在用于限制所要求保护的主题的范围。示例的其他方面、特征和/或优点将部分地在下面的描述中阐述,并且部分地将从描述中显而易见,或者可以通过对本公开的实践来了解。
附图说明
参考以下附图描述非限制性和非穷尽性示例。
图1示出了如本文所述的用于学习程序的生成的示例***的概述。
图2示出了如本文所述的用于利用所创建的学习程序的示例***的概述。
图3A示出了如本文所述的用于根据信息的模板检测的示例处理流程的概述。
图3B示出了如本文所述的基于模板检测来确定学习程序的示例处理流程的概述。
图4示出了如本文所述的利用学习程序的示例方法。
图5是示出了可以利用其来实践本公开的方面的计算设备的示例的框图。
图6A和6B是可以利用其来实践本公开的方面的移动计算设备的简化框图。
图7是可以在其中实践本公开的方面的分布式计算***的简化框图。
具体实施方式
本公开的***和/或服务提供学习程序创建和可用的学习程序的利用,用以执行数据操纵操作,诸如信息标记和提取以及其他示例。本公开的***/服务通过基于示例的学习来根据用户输入操作创建学习程序。学习程序是被创建用于基于由用户执行的示例操作来执行指定任务的操作或指令序列。在示例中,用户示出了如何执行特定操作一次的***/服务,并且本公开的***/服务能够自动生成用于执行任务或类似于该任务的操作的学习程序。任务是可执行的操作。任务的示例包括但不限于:信息添加、信息提取、信息审查、信息检索和信息处理以及其他示例。可以针对***/服务的用户利用所创建的学习程序用于数据操纵处理。
作为许多示例中的一个,用户可能希望从护照文件或护照的扫描副本中提取信息。在这种情况下,用户可以标注护照持有人的姓名和护照号的位置,使用本公开的用户接口来添加这些信息。学习程序可以由***/服务自动创建,用于添加和提取护照信息。每当呈现新的文档、图像等时,本公开的***/服务识别用户正在使用护照文件,并且可以自动检测用于应用的学习程序,执行操作来提取护照信息。例如,当护照的护照文件/扫描副本被打开或护照信息在网页上被查看时,本公开的***/服务可以自动检测并应用执行诸如提取针对用户的护照信息的数据操纵的学习程序。如果以前没有针对诸如护照号码提取的某个任务创建学习程序,则与本公开相关联的***/服务的用户接口可以根据用户提供的示例自动创建学习程序。一旦创建了学习程序,它可以被本公开的***/服务存储和利用以应用于来由创建程序的用户以及***/服务的其他用户执行类似的任务或操作。在示例中,***/服务创建并维护这种学习程序的大型存储库,其可以基于正被查看、处理等的文档/文件/图像等而被智能地应用。可以利用在本公开内容中描述的数据操纵示例的应用/服务和/或应用领域包括但不限于:数据挖掘、信息发现领域(例如,合法的eDiscovery服务)、数据分析(例如,诸如用于非结构化大数据的文本分析的任何数据分析)、日志评估(例如,网络日志、查询日志、遥测数据、***日志、错误日志等)、数据丢失防护、和数据泄漏防护以其它示例。本领域技术人员将认识到,本公开中描述的示例可以适用于任何应用领域或服务。
因此,本公开提供多种技术效果,包括但不限于:根据基于示例的操作的自动程序生成,最小化对开发人员/程序员编写定制程序以执行任务的需要,减少完成任务(例如,手动编程用于任务处理的代码)所需时间,提高任务完成/学习程序创建中的处理效率,所创建的学习程序与正在查看/处理的信息/数据之间的相似性的检测,创建和利用学习程序的可扩展性,提高应用的效率和可用性(包括处理任何类型内容(例如,结构化、半结构化、非结构化、标注、未标注等)的能力),以及控制用于学习程序创建和利用的用户交互,以及其他示例。
图1示出了如本文所述的用于学***板计算机)和/或任何其它电子设备的处理设备上运行。作为处理设备操作环境的示例,参考图5-7的操作环境。在其他示例中,本文公开的***的组件可以分布在多个设备上。例如,可以在客户端设备(例如,处理设备)上输入输入,并且可以从诸如一个或多个服务器设备的网络中的其他设备处理或访问信息。
作为一个示例,***100包括学习组件102、用户接口组件104和学习程序池106,每个均具有一个或多个附加组件。本领域技术人员将理解,诸如***100的***的规模可以变化并且可以包括比图1中描述的更多或更少的组件。在一些示例中,***100的组件之间的接口可以远程进行,例如其中***100的组件可以分布在分布式网络的一个或多个设备上。
数据学习组件102被配置为控制用于基于示例根据输入(例如,信息)操纵数据的学习程序的合成和执行。学习组件使得能够从各种输入类型(例如,未标注的内容)中提取结构化数据(例如,输出数据模式的实例)。此外,学习组件102支持跨越不同输入/输入类型的统一的用户交互处理。示例输入包括但不限于:任何类型的标注内容、未标注内容、半结构化内容、邮件数据(例如,电子邮件消息)、文本/移动消息(例如,SMS)或通知、对话、日志文件、社交馈送数据(例如RSS馈送)、文件数据(例如文本文件、日志文件、视频文件、文字处理器文档)、电子表格、网页、固定版式文档(例如便携式文档格式(PDF)文档)、音频数据、图像数据/文件(例如,照片、扫描图像、医疗处方、优惠/广告、传单等)、法律文档、印刷文档和目录以及其他示例。这样的输入可以组合模型和视图,这可以使数据能够被组织(例如,可能是分层的);然而,通常难以从这些类型的输入文档中提取数据用于进一步的操纵或查询。
作为示例,与传统技术相比,学习组件102导致用于对输入的数据执行数据提取任务的改进的用户效率。例如,用户不需要学习如何创建程序用以从输入中提取数据。此外,用户不需要花费时间来生成程序用以从输入中提取数据。此外,用户不需要理解输入的底层格式化细节或呈现逻辑。此外,与传统技术相比,用户交互性能可以得到改善,因为用户可以经由统一的用户接口(例如,用户接口组件104)提供示例,并且可以基于这些示例来合成并执行用于从输入提取数据的程序。
学习组件102与用户接口组件104接口以与用户交互并引导用户创建和/或利用学习程序。学习组件102可以使用由用户提供的示例来从输入中提取数据。在一个示例中,学习组件102(其中用户由用户接口组件104引导)处理指示根据输入信息的数据操纵的示例。例如,示例可以指定要从输入信息中添加和/或提取的各种字段。数据操纵可以涉及对输入执行的任何操作,包括但不限于:审查、选择、***、删除、修改、更新、添加、提取、查看、复制、剪切、粘贴、通知和组织,以及其他示例。然而,本领域技术人员将认识到,本公开不限于这样的数据操纵示例。可以针对任何类型的操作处理创建和利用学习程序。
此外,学习组件102可以被配置为使用结构和序列构造将由示例指定的字段关联到分层组织中。例如,用户接口组件104可以被配置为接收学习组件102定义为输出数据模式的用户输入。输出数据模式包括结构和序列构造的分层组合,例如输入信息的操纵数据的集合。如上所述,可以从用户示例操作自动地生成学习程序。也就是说,学习组件102可以监视经由用户接口组件104输入的用户处理操作,并且应用合成处理以从示例操作自动生成学习程序。由学习组件102接收的示例可以包括一个或多个正面示例和/或一个或多个反面示例。例如,可以针对输出数据模式的每个结构接收至少一个示例。所接收的示例可以包括在输入文档102上的高亮区域(例如,二维区域);这种高亮区域可以指示要提取的字段或围绕相关字段的结构边界(例如,记录边界)。在一个示例中,用户可以示出要从一个或多个电子邮件消息中提取的***100数据。示例操作是为完成用户的数据操纵目标而执行的任何操作。例如,示例操作包括但不限于诸如以下各项的动作:信息选择、形状选择、图像选择、套索、语音输入、触摸输入(例如拖动、轻拂、点击)和设备输入(例如,键盘、鼠标等)以及其他示例。
在一个示例中,学习程序可以用针对输入的类型提供适当抽象的域特定语言(DSL)来合成(例如,创建)。此外,学习程序可以对输入或所检测的类似输入执行,以提取输出数据模式的实例。例如,用户可以从银行接收每月银行警报/通知。用户可以创建从警报中提取日期和帐户金额的程序。在该示例中,学习组件102可以创建用于从银行警报中的数据提取的学习程序,并且当接收到未来的银行警报时,学习组件可以智能地检测(经由机器学习处理)银行警报并提取数据(例如,日期和金额)以呈现给用户。学习组件102可以使用户能够设置所创建的程序何时可以运行以及何时更新所创建的程序。例如,如果用户在接收到每月银行警报之后希望也想要从银行警报中提取借记信息,则学习组件102可以使所创建的程序可修改,或者可以智能地创建新版本的学习程序,以存储在学习程序池组件206(以下称为“学习程序池”)中。
学习组件102可配置为执行程序合成处理以创建学习程序。在一个示例中,程序合成处理可以包括对于预定义库中的核心运算子的归纳合成处理。核心运算子的示例包括但不限于:映射、过滤、合并、配对、删除、编辑和组织以及其他示例。例如,通过对核心运算子执行归纳合成处理,可以在DSL中针对输入类型创建学习程序。此外,DSL可以根据核心运算子的预定义库构建。例如,如果输入是文本文件,则可以针对文本文件构建DSL。因此,学习组件102与常规的域特定的合成器不同,因为不需要开发专门的程序合成处理算法,从而减少与针对给定的DSL创建归纳合成器相关联的时间和精力。因此,***100的开发人员可以定义具有足够表现力的DSL,以提供适当的抽象用于根据输入的数据操纵和从由核心库提供的运算子中构建。因此,不需要开发专门的程序综合处理算法来创建学习程序。
用户接口组件104是用于***100与用户交互以用于学习程序的创建和应用/利用的接口。在一个示例中,用户接口组件104可以被配置为生成图形表示,用于用户与***100交互,***100包括但不限于操作***、应用、模块、插件/附加件、和应用命令控制以及其他示例。例如,在查看输入时,输入的图形表示内的字段或结构边界可被高亮以向学习组件102提供示例。在一个示例中,用户接口组件104独立于输入的底层类型。***100支持的用户接口跨越不同的输入类型可以是均匀的。在示例中,用户接口组件102能够通过多种类型的输入与用户交互。例如,用户接口组件102可以(经由与学习组件102的通信)识别数据操纵输入/操作处理以及用于学习程序的创建和利用的命令/查询(例如,语音或自然语言命令)。
可以预期,由用户接口组件104接收的示例可以从***100的用户接收(例如,用户经由输入设备提供)。在一个示例中,通过用户接口组件104接收的示例或处理动作/操作可以从客户端计算设备经由与客户端计算设备相关联的输入设备和网络连接发送,其中数据可以传送到在诸如服务器的另一处理设备上操作的***100。用户接口组件104能够通过包括但不限于触摸输入、设备输入和语音输入以及其他示例的任何形式与用户接口。例如,用户接口组件104提供用户可以在其中指定数据操纵处理/示出对数据操纵处理感兴趣的接口。接口的一个这样的示例可以是示出网页,其中用户可以围绕用户想要提取的信息绘制套索。用户可以示出提取数据的一个或多个这样的示例,并且例如基于示例,***100开始学习程序以提取数据。接***互的另一实例可以是用户用自然语言指定,例如“我对这个页面上的看起来是主要联系人的地址的文字感兴趣”。可以生成用户接口的多个不同版本,以供使用和适用于用户接口组件104。
学习程序池106存储用于应用和利用的创建的学习程序。在示例中,学习组件102与学习程序池106(和用户接口组件104)接口,用于学习程序的创建和利用。学习程序池106包括一个或多个存储设备/存储器,用于维护关于所创建的学习程序的信息以及由学习程序池106维护的信息的其他示例。当创建学习程序时,***100发送要存储在学习程序池106中的学习程序。当学习程序要被利用(例如,用于其他用户的应用)时,***/服务的组件可以访问学习程序池106以访问所创建的学习程序或更新已经创建的学习程序。
除了维护所创建的学习程序之外,学习程序池106还维护与学习程序相关联的数据,诸如与学习程序相关联的模板信息。模板信息包括与输入或可用于分析输入的版式和/或内容的数据的创建相关联的任何数据。模板信息的示例包括但不限于:数据提取模板、标注的内容(例如,网页模板)、格式化信息、未标注内容的摘要/概要、视频数据、音频数据、文件数据(例如,扫描文件、票据、处方、记录、证书等)和社交馈送以及其他示例。这些信息由学习程序池106连续地收集和更新,用于检测应用于各种输入/输入类型的学习程序。
图2示出了如本文所述的用于利用所创建的学习程序的示例***200的概述。由***200利用的所创建的学习程序包括如图1所示的由***100创建的学习程序。在替代示例中,单个***(包括一个或多个组件,诸如处理器和/或存储器)可执行分别在***100和200中描述的处理。此外,***200可以包括诸如图1的描述中描述的用户接口组件104的用户接口组件。用户接口组件可以用于可用于与用户交互以监视与***200(例如,处理设备)的交互,包括标识用于学习程序的创建或利用的输入。
呈现的示例***200是相互依赖的组件的组合,其相互作用以形成用于利用学***板计算机)和/或任何其它电子设备的处理设备上运行。作为处理设备操作环境的示例,参考图4-7的操作环境。在其他示例中,本文公开的***的组件可以分布在多个设备上。例如,可以在客户端设备(例如,处理设备)上输入输入,并且可以从诸如一个或多个服务器设备的网络中的其他设备处理或访问信息。
作为一个示例,***200包括模板/学习程序检测组件202、学习程序应用组件204、和学习程序池106,每个均具有一个或多个附加组件。本领域技术人员将理解,诸如***200的***的规模可以变化并且可以包括比图2中描述的更多或更少的组件。在一些示例中,***200的组件之间的接口可以远程进行,例如其中***200的组件可以分布在分布式网络的一个或多个设备上。
模板/学习程序检测组件202基于对输入或输入类型的评估来检测用于利用/应用的学习程序。输入在图1的描述中描述。在一个示例中,***200的模板/学习程序检测组件202(例如,经由用户接口组件)连续地监视用户正在使用或被接收的输入(例如消息/通知等)。也就是说,***200监视多个源,包括但不限于电子邮件帐户、消息、社交媒体/社交馈送、文件/计算机可读存储设备和数字图书馆以及其他示例,用于学习程序的应用。
在识别输入之后,模板/学***值确定)等。
在示例中,输入可以与一个或多个模板相关联。作为示例,图3A示出了用于根据一个或多个输入的模板检测的处理流程300。在示例中,模板/学***,并且基于输入与所存储的模板相关联的可能性来对所存储的模板进行排序。如果没有确定学***),则模板/学习程序检测组件202可以请求(或者替代地接收请求)学习程序的创建。
此外,模板/学***来评估具有存储的模板的学习程序的被提取的输出以便将存储模板与学习程序映射的处理来实现模板到学习程序的映射。在一个示例中,学习程序在没有任何预过滤的情况下运行。但是,在其他示例中可以应用过滤。
在示例中,模板可以与一个或多个学***和适用的学***),则模板/学习程序检测组件202可以请求(或者替代地接收请求)学习程序的创建。
***200还包括学习程序应用组件204。学习程序应用组件204执行用于数据操纵的一个或多个学习程序。作为示例,学习程序应用组件204可以应用数据操纵处理,提取用于输出的数据。然而,本领域技术人员将认识到,学习程序的应用不限于数据提取。输出是学习程序的应用的任何结果。例如,学习程序应用组件204可以执行包括将提取的数据聚合并导出到提取的值的集合中的操作。在该示例中,输出可以是(例如,在文档、文件、通知等中)提取的值的集合。在至少一个示例中,输出可以被输送以被另一应用或服务使用。作为示例,输出可以被发送到一个或多个数据库,通过连接两个或多个应用的应用管道来输入到另一应用中,或者可以作为数据馈送或富集站点摘要(RSS)馈送以及其他示例来呈现。
在示例中,学习程序应用组件204还可以确定如何呈现输出,诸如如何向用户通知内容(例如,即时显示、下载、消息、通知、提醒、电话呼叫等)。例如,***200可以使得***200的用户或与***200相关联的服务能够规定如何呈现输出。呈现的规定可以在学习程序的创建中或通过可能并不特定于学习程序的应用命令控制的使用来发生。
图3A示出了如本文所述的用于根据信息的模板检测的示例处理流程300的概述。图3A中所示的过程300是根据诸如图2中描述的模板/学习程序检测组件202的输入执行模板检测的***或服务的示例性处理。如图3A所示的输入是前面在***100和***200的描述中所述的输入。在一个示例中,输入(例如,一个或多个输入)可以与模板(例如,一个或多个模板)相关联,以使能可应用于输入的学习程序的准确检测。模板检测组件302是被配置为检测与输入相关联的模板的组件(硬件或软件)。作为示例,模板检测组件302可以执行类似于图2所描述的模板/学习程序检测组件202的操作。例如,模板检测组件302应用机器学习处理来识别与输入相关联的模板。基于机器学习处理,模板检测组件302将与输入匹配的一个或多个模板识别为输出(框304)。例如,一个或多个输入可以与一个或多个模板相关联。在一个示例中,输入1和输入3与模板1相关联,输入2与模板2相关联。
图3B示出了如本文所述的基于模板检测来确定学***以识别学习程序是否可应用于特定输入。在其他示例中,***/服务可以向用户呈现一个或多个学习程序,以在应用学习程序之前进行选择。
图4示出了如本文所述的利用学习程序的示例方法400。作为示例,方法400可以由诸如图1的***100和图2的***200的示例***执行。在示例中,方法400可以在包括被配置为存储和执行操作、程序或指令的至少一个处理器的设备上执行。然而,方法400不限于这些示例。在其他示例中,方法400可以被用于学习程序生成和管理的应用或服务执行。在至少一个示例中,方法400可以由分布式网络的一个或多个组件(例如,web服务/分布式网络服务(例如,云服务))执行(例如,计算机实现的操作),以利用学习程序进行数据操纵处理。
方法400可以在操作402开始,其中构建或开发学习程序池。学习程序池可以是在图1的描述中详细描述的学习程序池106。在一个示例中,***/服务的用户可以通过用户接口创建学习程序,其使用户能够通过示例操作来描述数据操纵处理步骤和可应用的数据字段。作为示例,通过提供操作示例,用户可以从输入中提取数据。当创建学习程序时,学习程序被聚合到学习程序池中。***/服务学习程序并将学习程序与模板(例如,学习程序池的所存储的模板)相关联。在示例中,在学习程序与学习程序池相关联时,识别输入格式和/或输入类型。
在示例用户接口中,可以针对用户显示类似的输入(例如,文档、邮件、文件等)和/或要应用的学习程序。用户接口还提供用于用户将任何识别的输入、模板或学习程序标注为正确或不正确的功能。在示例中,关于输入/模板/学习程序识别的正确性的遥测数据可以被报告并用于适应***/服务。例如,基于用户输入和/或遥测数据,***/服务可以自适应地重新学习要应用的用于利用学习程序的机器学习处理。
在操作404中,检测与信息(例如,输入)相关联的模板(例如指纹)。当通过***/服务识别新的输入时,机器学***来评估具有存储的模板的学***用于将所存储的模板与关联于该信息的模板进行匹配。可以通过执行启发式机器学***。至少一个模板是基于置信水平确定从多个所存储的模板中被选择的。
在模板的检测中,流程进行到判定操作406,其中确定用于模板检测的置信水平是否小于阈值。阈值可以由与本公开相关联的***/服务的开发人员预先确定。如果置信水平小于阈值,则值流可以分支到操作408,其中用户被请求提供用于分析信息的示例操作。基于由用户提供的示例,根据示例操作生成新的学***等于或大于阈值时,流程分支到操作412,其中确定候选学***来评估学***。置信水平可以通过如上所述的机器学习处理来确定。
在检测要应用的学***是否小于阈值。阈值可以由与本公开相关联的***/服务的开发人员预先确定。如果置信水平小于阈值,则值流程可以进行到操作408,其中请求用户提供用于分析信息的示例操作。基于由用户提供的示例,从示例操作来生成新的学习程序(操作410)。每当生成新的学习程序(操作410)时,流程进行到操作402,其中学习程序池被更新。
当用于模板检测的置信水平等于或大于阈值时,流程进行到操作416,其中一个或多个学***。
然后,流程可以进行到输出(操作418)所提取的数据。在其他示例中,***/服务可以基于提取的数据的输出(操作418)来继续与用户交互。在一个示例中,提取的数据的输出包括将提取的值的集合呈现为用于由其他应用使用的数据馈送。例如,输出可以被传送以供另一应用或服务使用。作为示例,输出可以被发送到一个或多个数据库,通过连接两个或多个应用的应用管道来输入到另一应用中,或者可以呈现为数据馈送或富集站点摘要(RSS)馈送,以及其他示例。
图5-7和相关描述提供了可以在其中实践本发明的示例的各种操作环境的讨论。然而,关于图5-7示出和讨论的设备和***是出于示例和说明的目的,并且不限于可用于实施本文所述的本发明的示例的大量计算设备配置。
图5是示出了计算设备502的物理组件的框图,例如可以用其实施本公开的示例的***的组件。下面描述的计算设备组件可以适用于上述计算设备。在基本配置中,计算设备502可以包括至少一个处理单元504和***存储器506。根据计算设备的配置和类型,***存储器506可以包括但不限于易失性存储器(例如,随机存取存储器)、非易失性存储器(例如,只读存储器)、闪存、或这些存储器的任何组合。***存储器506可以包括操作***507和适于运行诸如应用528、IO管理器524、和其他实用程序526的软件应用520的一个或多个程序模块508。作为示例,***存储器506可以存储用于执行的指令。作为示例,***存储器506的其他示例可以是诸如知识资源或学习程序池的组件。例如,操作***507可以适于控制计算设备502的操作。此外,本发明的示例可以结合图形库、其他操作***或任何其他应用来实践并且不限于任何特定的应用或***。该基本配置在图5中由虚线522中的那些组件示出。计算设备502可以具有附加特征或功能。例如,计算设备502还可以包括例如磁盘、光盘或磁带的附加数据存储设备(可移除和/或不可移除)。图5中通过可移除存储设备509和不可移除存储设备510示出了这种附加存储。
如上所述,可以将多个程序模块和数据文件存储在***存储器506中。在处理单元504上执行时,程序模块508(例如,输入/输出(I/O)管理器524、其他实用程序526和应用528)可以执行例如包括但不限于图4所示的操作方法400的一个或多个阶段的处理。可以根据本发明的示例使用的其他程序模块可以包括电子邮件和联系人应用、文字处理应用、电子表格应用、数据库应用、幻灯片呈现应用、输入识别应用、绘图或计算机辅助应用等。
此外,本发明的示例可以在包括分立电子元件的电路、包含逻辑门的封装或集成电子芯片、利用微处理器的电路中、或包含电子元件或微处理器的单个芯片上实践。例如,可以经由片上***(SOC)来实施本发明的示例,在SOC中,图5所示的组件中的每一个或多个可以被集成到单个集成电路上。这样的SOC器件可以包括一个或多个处理单元、图形单元、通信单元、***虚拟化单元和各种应用功能,所有这些都作为单个集成电路被集成(或“烧录”)到芯片基板上。当经由SOC操作时,本文所描述的功能可以经由与单个集成电路(芯片)上的计算设备502的其他组件集成的专用逻辑来操作。本公开的示例也可以使用能够执行诸如例如AND、OR和NOT的逻辑操作的其他技术来实践,该其他技术包括但不限于机械、光学、流体和量子技术。此外,本发明的示例可以在通用计算机内或在任何其它电路或***中实践。
计算设备502还可以具有一个或多个输入设备512,诸如键盘、鼠标、笔、声音输入设备、用于语音输入/识别的设备、触摸输入设备等。还可以包括诸如显示器、扬声器、打印机等的输出设备514。上述设备是示例,并且其他设备可以被使用。计算设备504可以包括允许与其他计算设备518进行通信的一个或多个通信连接516。合适的通信连接516的示例包括但不限于:RF发射机、接收机和/或收发器电路;通用串行总线(USB)、并行和/或串行端口。
本文所使用的术语计算机可读介质可以包括计算机存储介质。计算机存储介质可以包括以用于存储诸如计算机可读指令、数据结构或程序模块的信息的任何方法或技术实现的易失性和非易失性、可移除和不可移除介质。***存储器506、可移除存储设备509和不可移除存储设备510均是计算机存储介质示例(即,存储器存储)。计算机存储介质可以包括RAM、ROM、电可擦除只读存储器(EEPROM)、闪存或其他存储器技术、CD-ROM、数字通用盘(DVD)或其他光学存储器、磁带盒、磁带、磁盘存储器或其他磁存储设备或可用于存储信息并且可以被计算设备502访问的任何其他制品。任何这样的计算机存储介质可以是计算设备502的一部分。计算机存储介质不包括载波或其他传播或调制的数据信号。
通信介质可以由计算机可读指令、数据结构、程序模块或诸如载波或其他传输机制的调制数据信号中的其他数据来实现,并且包括任何信息传递介质。术语“调制数据信号”可以描述信号,该信号使一个或多个特性以一种方式被设置或改变以便在该信号中编码信息。作为示例而非限制,通信介质可以包括诸如有线网络或直接有线连接的有线介质以及诸如声学、射频(RF)、红外的无线介质和其它无线介质。
图6A和6B示出了利用其可以实施本发明的示例的移动计算设备600,例如移动电话、智能电话、个人数据助理、平板个人计算机、膝上型计算机等。例如,移动计算设备600可以被实现为***100,***100的组件可以被配置为执行图4所描述的处理方法以及其他示例。参考图6A,示出了用于实现该示例的移动计算设备600的一个示例。在基本配置中,移动计算设备600是具有输入元件和输出元件两者的手持式计算机。移动计算设备600通常包括显示器605和允许用户将信息输入到移动计算设备600中的一个或多个输入按钮610。移动计算设备600的显示器605还可以用作输入设备(例如,触摸屏显示器)。如果包括,可选的侧输入元件615允许进一步的用户输入。侧输入元件615可以是旋转开关、按钮或任何其他类型的手动输入元件。在替代示例中,移动计算设备600可以包含更多或更少的输入元件。例如,在一些示例中,显示器605可以不是触摸屏。在又一替代示例中,移动计算设备600是诸如蜂窝电话的便携式电话***。移动计算设备600还可以包括可选的小键盘635。可选的小键盘635可以是物理小键盘或在触摸屏显示器上生成的“软”小键盘。在各种示例中,输出元件包括用于显示图形用户接口(GUI)显示器605、视觉指示器620(例如,发光二极管)和/或音频换能器625(例如扬声器)。在一些示例中,移动计算设备600包含用于向用户提供触觉反馈的振动换能器。在又一示例中,移动计算设备600集成诸如音频输入(例如,麦克风插孔)、音频输出(例如,耳机插孔)和视频输出(例如,HDMI端口)的输入和/或输出端口,用于向外部设备发送信号或从外部设备接收信号。
图6B是示出了移动计算设备的一个示例的架构的框图。也就是说,移动计算设备600可以包含***(即,架构)602以实现一些示例。在示例中,***602被实现为能够运行一个或多个应用(例如浏览器、电子邮件、输入处理、日历、联系人管理器、消息收发客户端、游戏和媒体客户端/播放器)的“智能电话”。在一些示例中,***602被集成为诸如集成个人数字助理(PDA)和无线电话的计算设备。
一个或多个应用程序666可以被加载到存储器662中并且在操作***664上运行或与操作***664相关联地运行。应用程序的示例包括电话拨号程序、电子邮件程序、个人信息管理(PIM)程序、文字处理程序、电子表格程序、互联网浏览器程序、消息程序等。***602还包括存储器662内的非易失性存储区域668。非易失性存储区域668可用于存储在***602断电时不应丢失的持久信息。应用程序666可以使用和在非易失性存储区域668中存储信息,诸如电子邮件或由电子邮件应用使用的其他消息等。同步应用(未示出)也驻留在***602上,并且被编程为与驻留在主机计算机上的对应同步应用进行交互,以将在非易失性存储区域668中存储的信息与在主计算机上存储的对应信息同步。应当理解,其他应用可以被加载到存储器662中并在移动计算设备600上运行,包括本文所述的应用528、IO管理器524和其他实用程序526。
***602具有电源670,其可以被实现为一个或多个电池。电源670还可以包括外部电源,诸如AC适配器或用于对电池进行补充或再充电的供电的底座(powered dockingcradle)。
***602可以包括执行促进***602和一个或多个***设备之间的连接的功能的***设备端口678。去往和来自外部设备端口672的传输在操作***664的控制下进行。换句话说,***设备端口678所接收的通信可以经由操作***664传播到应用程序666,反之亦然。
***602还可以包括执行发射和接收射频通信的功能的无线电672。无线电672经由通信运营商或服务提供商来促进***602和“外部世界”之间的无线连接。去往和来自无线电设备672的传输在操作***664的控制下进行。换句话说,无线电672所接收的通信可以经由操作***664传播到应用程序666,反之亦然。
视觉指示器620可以用于提供视觉通知,并且/或者音频接口674可以用于经由音频变换器625产生可听见的通知。在所示示例中,视觉指示器620是发光二极管(LED),并且音频变换器625是扬声器。这些设备可以直接耦合到电源670,使得当被激活时,它们保持打开达通知机制所指示的持续时间,即使处理器660和其他组件可能关闭以节省电池电量。LED可能被编程为无限期地保持点亮,直到用户采取动作来指示设备的通电状态。音频接口674用于向用户提供可听见的信号并从用户接收可听见的信号。例如,除了耦合到音频变换器625之外,音频接口674还可以耦合到麦克风以接收可听见的输入,以便于促进电话通话。根据本发明的示例,麦克风还可以用作音频传感器以促进通知的控制,如下文将描述。***602还可以包括视频接口676,该视频接口676使能机载照相机630的操作以记录静止图像、视频流等。
实现***602的移动计算设备600可以具有附加的特征或功能。例如,移动计算设备600还可以包括诸如磁盘、光盘或磁带的附加数据存储设备(可移除和/或不可移除)。图6B中由非易失性存储区域668示出了这种附加的存储器。
如上所述,移动计算设备600生成或捕捉并经由***602存储的数据/信息可以在移动计算设备600上被本地存储,或者数据可以存储在任何数量的存储介质上,该存储介质可以由设备经由无线电672或经由移动计算设备600和与移动计算设备600相关联的分离计算设备(例如,分布式计算网络(诸如因特网)中的服务器计算机)之间的有线连接来访问。应当理解,这样的数据/信息可以经由无线电672经由移动计算设备600或经由分布式计算网络来访问。类似地,这样的数据/信息可以根据公知的数据/信息传送和存储装置(包括电子邮件和协作数据/信息共享***)容易地在计算设备之间传送以进行存储和使用。
图7示出了如上所述的用于提供可靠地访问存储***上的目标数据并且处理到一个或多个客户端设备的通信故障的应用的***的架构的一个示例。与应用528、IO管理器524、其他实用程序526和存储相关联地被访问、交互或编辑的目标数据可以以不同的通信信道或其他存储类型被存储。例如,各种文档可以使用目录服务722、门户网站724、邮箱服务726、即时消息存储728或社交网站730、应用528、IO管理器524、其他实用程序526来存储,并且存储***可以使用这些类型的***等中的任何一个来能够实现数据利用,如本文所描述。服务器720可以提供用于由在通用计算设备502操作的客户端使用和由移动设备600通过网络715使用的存储***。作为示例,网络715可以包括因特网或任何其他类型的本地或广域网,并且客户端节点可被实现为在个人计算机、平板计算设备中和/或由移动计算设备600(例如,智能电话)体现的计算设备502。客户端计算设备502或600的这些示例中的任一个可以从商店716获得内容。
在整个说明书中已经提到“一个示例”或“示例”,这意味着在至少一个示例中包括特定描述的特征、结构或特性。因此,这样的短语的使用可以指代多于仅一个示例。此外,所描述的特征、结构或特性可以以任何合适的方式组合在一个或多个实例中。
然而,相关领域的技术人员可以认识到,可以在没有一个或多个具体细节的情况下或利用其他方法、资源、材料等来实践示例。在其他实例中,公知的结构、资源、或者操作没有被详细地示出或描述,仅为了观察示例的模糊方面。
虽然已经示出和描述了样本示例和应用,但是应当理解,示例不限于上述的精确配置和资源。在不脱离所要求保护的示例的范围的情况下,可以在本文所公开的方法和***的布置、操作和细节中作出对本领域技术人员显而易见的各种修改、改变和变体。

Claims (15)

1.一种计算机实现的方法,包括:
通过应用将包括未标注内容的信息与多个存储的模板进行比较的机器学习处理,来检测与所述信息相关联的模板;
基于所检测的模板,从包括多个学习程序的学习程序池中确定要应用的学习程序;以及
应用所述学习程序,以操纵从所述信息中提取的数据。
2.根据权利要求1所述的计算机实现的方法,其中对所述模板的所述检测还包括:确定用于将存储的模板与和所述信息相关联的模板进行匹配的置信水平,以及基于所述置信水平从所述多个存储的模板中选择模板。
3.根据权利要求2所述的计算机实现的方法,其中所述置信水平通过执行启发式机器学习处理和用于指纹模板识别的机器学习处理中的至少一个而被确定。
4.根据权利要求2所述的计算机实现的方法,其中当所述置信水平小于阈值时,请求用户提供用于分析所述信息的示例操作,以及使用程序合成处理来从所述示例操作中创建新的学习程序。
5.根据权利要求4所述的计算机实现的方法,还包括:将所述新的学习程序添加到所述学习程序池。
6.根据权利要求1所述的计算机实现的方法,其中所述学习程序基于应用机器学习处理而被确定,所述应用机器学习处理包括启发式机器学习处理和用于模板识别的机器学习处理中的至少一个。
7.根据权利要求1所述的计算机实现的方法,其中学习程序是基于机器学习处理的应用而被确定的,机器学习处理的所述应用运行来自所述学习程序池中的多个学习程序、并且使用与从所述多个学习程序中所提取的数据相关联的置信值来评估所提取的所述数据。
8.根据权利要求1所述的计算机实现的方法,还包括:构建所述学习程序池,所述构建所述学习程序池包括:将所述多个学习程序与存储的所述模板中的一个或多个模板相关联。
9.根据权利要求1所述的计算机实现的方法,其中应用所述学习程序还包括:将所提取的数据聚合和导出到所提取的值的集合中,并输出所提取的值的所述集合,其中所提取的值的所述集合的所述输出包括:将所提取的值的所述集合呈现为用于由其他应用使用的数据馈送。
10.一种包括可执行指令的计算机可读存储设备,当所述可执行指令在至少一个处理器上被执行时,使所述处理器执行包括以下的处理:
通过应用将包括未标注内容的信息与多个存储的模板进行比较的机器学习处理,来检测与所述信息相关联的模板;
基于所检测的模板,从包括多个学习程序的学习程序池中确定要应用的学习程序;以及
应用所述学习程序,以操纵从所述信息提取的数据。
11.根据权利要求10所述的计算机可读存储设备,其中由所述处理器执行的所述操作还包括:构建所述学习程序池,所述构建所述学习程序池包括:将所述多个学习程序与存储的所述模板中的一个或多个模板相关联,以及
输出基于所述学习程序的应用***纵的所提取的数据。
12.一种***,包括:
存储器;以及
与所述存储器可操作地连接的至少一个处理器,所述处理器被配置为执行包括以下的操作:
通过应用将包括未标注内容的信息与多个存储的模板进行比较的机器学习处理,来检测与所述信息相关联的模板;
基于所检测的模板,从包括多个学习程序的学习程序池中确定要应用的学习程序;以及
应用所述学习程序,以操纵从所述信息提取的数据。
13.根据权利要求12所述的***,其中由所述处理器执行的所述模板的所述检测还包括:确定用于将存储的模板与所述信息相关联的模板进行匹配的置信水平,以及基于所述置信水平从所述多个存储的模板中选择模板,并且其中所述置信水平通过执行启发式机器学习处理和用于指纹模板识别的机器学习处理中的至少一个而被确定。
14.根据权利要求13所述的***,其中当所述置信水平小于阈值时,请求用户提供用于分析所述信息的示例操作,以及使用程序合成处理从所述示例操作中创建新的学习程序,并且其中由所述处理器执行的所述操作进一步包括:将所述新的学习程序添加到所述学习程序池中。
15.根据权利要求12所述的***,其中由所述处理器执行的所述学习程序的所述应用还包括:将所提取的数据聚合并导出到所提取的值的集合中,并且输出所提取的值的所述集合,其中所提取的值的所述集合的所述输出包括:将所提取的值的所述集合呈现为用于由其他应用使用的数据馈送。
CN201680022672.XA 2015-04-21 2016-04-12 利用学习程序用于数据操纵 Pending CN107533633A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/691,815 2015-04-21
US14/691,815 US20160314408A1 (en) 2015-04-21 2015-04-21 Leveraging learned programs for data manipulation
PCT/US2016/027065 WO2016171949A1 (en) 2015-04-21 2016-04-12 Leveraging learned programs for data manipulation

Publications (1)

Publication Number Publication Date
CN107533633A true CN107533633A (zh) 2018-01-02

Family

ID=55809224

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680022672.XA Pending CN107533633A (zh) 2015-04-21 2016-04-12 利用学习程序用于数据操纵

Country Status (4)

Country Link
US (1) US20160314408A1 (zh)
EP (1) EP3317807A1 (zh)
CN (1) CN107533633A (zh)
WO (1) WO2016171949A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110275778A (zh) * 2019-06-14 2019-09-24 上海商汤智能科技有限公司 在线程序运行方法、装置、电子设备和计算机存储介质
CN112262421A (zh) * 2018-06-07 2021-01-22 微软技术许可有限责任公司 自动学习复习的可编程接口

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10769426B2 (en) 2015-09-30 2020-09-08 Microsoft Technology Licensing, Llc Inferring attributes of organizations using member graph
US10860950B2 (en) 2016-08-31 2020-12-08 Sas Institute Inc. Automated computer-based model development, deployment, and management
US10771529B1 (en) 2017-08-04 2020-09-08 Grammarly, Inc. Artificial intelligence communication assistance for augmenting a transmitted communication
JP6842177B2 (ja) * 2018-04-06 2021-03-17 旭精工株式会社 硬貨識別方法、硬貨識別システム及び硬貨識別プログラム
US10761952B2 (en) 2018-04-13 2020-09-01 International Business Machines Corporation Intelligent failover migration across multiple high availability stacks based on quality of prior failover migrations
US11074048B1 (en) 2020-04-28 2021-07-27 Microsoft Technology Licensing, Llc Autosynthesized sublanguage snippet presentation
US11327728B2 (en) 2020-05-07 2022-05-10 Microsoft Technology Licensing, Llc Source code text replacement by example
US11900080B2 (en) 2020-07-09 2024-02-13 Microsoft Technology Licensing, Llc Software development autocreated suggestion provenance
US11941372B2 (en) 2021-04-01 2024-03-26 Microsoft Technology Licensing, Llc Edit automation using an anchor target list
US11875136B2 (en) 2021-04-01 2024-01-16 Microsoft Technology Licensing, Llc Edit automation using a temporal edit pattern

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080025555A1 (en) * 2006-07-31 2008-01-31 Canadian Bank Note Company, Limited Method and apparatus for comparing document features using pattern recognition
US20110055748A1 (en) * 2009-09-03 2011-03-03 Johnson Controls Technology Company Systems and methods for mapping building management system inputs
CN102722519A (zh) * 2011-03-28 2012-10-10 微软公司 使用增强的内容控件来创建结构化文档模板的技术
CN103593642A (zh) * 2012-08-16 2014-02-19 阿里巴巴集团控股有限公司 一种卡信息获取方法和***

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7149347B1 (en) * 2000-03-02 2006-12-12 Science Applications International Corporation Machine learning of document templates for data extraction
US20140180738A1 (en) * 2012-12-21 2014-06-26 Cloudvu, Inc. Machine learning for systems management

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080025555A1 (en) * 2006-07-31 2008-01-31 Canadian Bank Note Company, Limited Method and apparatus for comparing document features using pattern recognition
US20110055748A1 (en) * 2009-09-03 2011-03-03 Johnson Controls Technology Company Systems and methods for mapping building management system inputs
CN102722519A (zh) * 2011-03-28 2012-10-10 微软公司 使用增强的内容控件来创建结构化文档模板的技术
CN103593642A (zh) * 2012-08-16 2014-02-19 阿里巴巴集团控股有限公司 一种卡信息获取方法和***

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ADITYA KRISHNA MENON 等: "A Machine Learning Framework for Programming by Example", 《30TH INTERNATIONAL CONFERENCE ON MACHINE LEARNING》 *
SUMIT GULWANI 等: "Spreadsheet data manipulation using examples", 《COMMUNICATIONS OF THE ACM》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112262421A (zh) * 2018-06-07 2021-01-22 微软技术许可有限责任公司 自动学习复习的可编程接口
CN110275778A (zh) * 2019-06-14 2019-09-24 上海商汤智能科技有限公司 在线程序运行方法、装置、电子设备和计算机存储介质

Also Published As

Publication number Publication date
EP3317807A1 (en) 2018-05-09
WO2016171949A1 (en) 2016-10-27
US20160314408A1 (en) 2016-10-27

Similar Documents

Publication Publication Date Title
CN107533633A (zh) 利用学习程序用于数据操纵
CN109074537B (zh) 电子***、计算设备和计算设备中的方法
US10733553B2 (en) Action item extraction for work item creation
US10552218B2 (en) Dynamic context of tasks
CN104298478B (zh) 基于文件名对存储库动作的推断
CN102929917B (zh) 动态内容馈源过滤
CN105531694B (zh) 在电子表格中显示多个作者的在场
CN104412227B (zh) 基于查询的软件***设计表示
CN108780463A (zh) 社交图的生成和管理
CN105308565B (zh) 深度并行的源代码编译
CN109154935A (zh) 对用于任务完成的信息的智能捕获、存储和取回
CN109937402A (zh) 使用回调通知进行数据的出口和入口
CN107924679A (zh) 输入理解处理期间在响应选择中的延迟绑定
US20090319467A1 (en) Simplifying the creation of user-defined custom elements for use in a graphical modeling application
CN107636641A (zh) 用于处理附加至电子邮件消息的注释的统一消息传送平台
US20230142892A1 (en) Policy authoring for task state tracking during dialogue
CN104081382A (zh) 建立可动态指定的用户界面的方法和***
Fill SeMFIS: a flexible engineering platform for semantic annotations of conceptual models
CN109690520A (zh) 通过逻辑标记共享文档
CN108369600A (zh) web浏览器扩展
US11354489B2 (en) Intelligent inferences of authoring from document layout and formatting
CN108369528A (zh) 用于生产力应用的唤回服务
CN109074264A (zh) 跨程序的用户设置
CN107111649A (zh) 将用户和***数据从源位置上传到目的地位置
US20190065517A1 (en) File preview and selective access to file content of archived file

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination