使用可分布数据模型的传输学习与域适应

文档序号:1246778 发布日期:2020-08-18 浏览:26次 >En<

阅读说明:本技术 使用可分布数据模型的传输学习与域适应 (Transfer learning and domain adaptation using distributable data models ) 是由 杰森·克拉布特里 安德鲁·塞勒斯 于 2018-12-07 设计创作,主要内容包括:提供了一种用于使用可分布数据模型以传输学习并域自适应的系统,包括,配置用于服务多个可分布模型实例的联网可分布模型;以及有向计算图模块,配置用于从联网计算系统至少接收至少一个可分布模型的实例,从由传输引擎所执行的机器学习创建第二数据集,采用第二数据集训练可分布模型的实例,并至少部分地基于对可分布模型实例的更新而生成更新报告。(A system for using a distributable data model for transport learning and domain adaptation is provided, comprising, a networked distributable model configured to serve a plurality of distributable model instances; and a directed computational graph module configured to receive at least an instance of the at least one distributable model from the networked computing system, create a second dataset from machine learning performed by the transport engine, train the instance of the distributable model with the second dataset, and generate an update report based at least in part on an update to the instance of the distributable model.)

使用可分布数据模型的传输学习与域适应

与申请相关的交叉引用

本申请是2017年12月7日提交的名为“TRANSFER LEARNING AND DOMAINADAPTATION USING DISTRIBUTABLE DATA MODELS”的美国专利申请序列号15/835,436的PCT申请并要求享有其优先权,在此通过全文引用的方式将其全部说明并入本文。

技术领域

本公开涉及机器学习的领域,更特别地涉及使用跨多个装置分布的数据中所包含的偏差的模型改进。

背景技术

在传统的机器学习中,通常在中心位置处收集并处理数据。随后可以使用所收集的数据以训练模型。然而,通过诸如网络抓取或新闻聚集的手段的可收集数据与在装置例如个人移动装置上所存储的、或来自本地警察局的犯罪数据相比在范围上相对较窄。该数据可以由于其包含敏感数据的可能性而难以离开其所存储的装置,且传输数据所需的带宽也可以是很大的。

可以为传输(例如由于GDPR)限制在数据线上训练的生成器模型(不论是否匿名)。现有的工具诸如SNORKELTM可以提供实质性机制以加速从小种子生成真实且标记的训练数据。相同的概念可以支持传输有价值的模型而并未移动受限制信息自身。这也适用于其他模型、数据集、可视化、流水线和其他数据的共享,诸如多租户部署、组织间共享或混合云边缘使用情形。

需要的是一种系统以用于使用传输学习以适应在目标数据或应用内可能不具有等同特征空间或分布的特定环境或应用中所训练的数据模型。

发明内容

因此,本发明人已经构想了一种系统和方法用于使用传输学习以适应在目标数据或应用内可能不具有等同特征空间或分布的特定环境或应用中所训练的数据模型。

在优选实施例中,模型源可以服务各种可分布模型的实例:其中用于训练其的数据具有已加权并校正的偏差的广义模型,以及其中利用了偏差的偏差专用模型。实例服务于分布式装置,在那里它们可以由装置所训练。装置每个生成更新报告,报告传输回至模型源,在此模型源可以使用报告以改进主要模型。

在本发明的一个方面中,提供了一种用于改进具有包含在分布式数据中偏差的可分布模型的系统,包括联网的可分布模型源,其包括存储器、处理器以及存储在其存储器中并可在其处理器上可运行的多个编程指令,其中可编程指令运行在处理器上时使处理器服务于多个可分布模型的实例;以及有向计算图模块,其包括存储器、处理器和存储在其存储器中并可在其处理器上运行的多个编程指令,其中,当在处理器上运行时,可编程指令使处理器从联网的计算系统至少接收可分布模型的实例,至少部分地基于存储在存储器中的数据中所包含的偏差而从存储在存储器中的数据创建一个净化数据集,用已净化的数据集训练可分布模型的实例,并至少部分地通过更新可分布模型的实例而生成更新报告。

在本发明的另一实施例中,已净化数据集的至少一部分是已经删除了敏感信息的数据。在本发明的另一实施例中,更新报告的至少一部分由联网可分布模型源使用以改进可分布模型。在本发明的另一实施例中,存储器中所存储数据内所包含的偏差的至少一部分是基于地理位置。在本发明的另一实施例中,存储器中所存储数据内所包含的偏差的至少一部分是基于年龄。在本发明的另一实施例中,存储器中所存储数据内所包含的偏差的至少一部分是基于性别。

在本发明的另一个特征方面中,提供了一种用于采用分布式数据中所包含的偏差改进可分布模型的方法,包括以下步骤:(a)采用联网的可分布模型源服务多个可分布模型的实例;(b)从具有有向计算图模块的联网计算系统接收至少一个可分布模型的至少一实例;(c)至少部分地基于包含在具有有向计算图模块的存储器中所存储的数据内的偏差,从存储器中所存储的数据创建已净化数据集;(d)采用有向计算图模块对已净化数据集的可分布模型实例进行训练;以及(e)至少部分地通过采用有向计算图模块对可分布模型实例进行更新来生成更新报告。

附图说明

附图说明了数个特征方面,并与说明书一起用于根据特征方面解释本发明的原理。本领域技术人员应该知晓,附图中所示的特定布置仅仅是示例性的,且不应视为在此以任何方式限制本发明或权利要求的范围。

图1是根据本发明实施例的业务操作系统的示例性架构图。

图2是根据本发明各个实施例的用于使用传输学习以适应在目标数据或应用内可能不具有等同特征空间或分布的特定环境或应用中所训练的数据模型的示例性系统的方框图。

图3是根据本发明各个实施例的可以利用分布在各个扇区之中的数据内所包含的偏差以改进扇区级可分布模型的示例性系统的方框图。

图4是根据本发明各个实施例的其中每个层级可以具有其自己的可分布模型的示例性层级的方框图。

图5是说明了根据本发明各个实施例的用于在训练可分布模型实例之前清洁并消密存储在电子装置上数据的方法的流程图。

图6是说明了根据本发明各个实施例的用于改进在模型源外部装置上可分布模型的方法的流程图。

图7是说明了根据本发明各个实施例的用于采用从分布式装置上数据所获得的偏差改进通用和偏差专用可分布模型的方法的流程图。

图8是说明了用于使用传输学习以适应在目标数据或应用内可能不具有等同特征空间或分布的特定环境或应用中所训练的数据模型的方法的流程图。

图9是说明了用于在传输学习中使用预训练模型以为额外模型训练提供起点的方法的流程图。

图10是说明了用于本发明各个实施例的计算装置的示例性硬件架构的方框图。

图11是说明了根据本发明各个实施例的用于客户端装置的示例性逻辑架构的方框图。

图12是说明了根据本发明各个实施例的客户端、服务器、和外部装置的示例性架构布置的方框图。

图13是说明了用于本发明各个实施例的计算装置的示例性硬件架构的另一方框图。

具体实施方式

本发明人已经设想并付诸实践了一种用于采用包含在分布式数据中的偏差改进区域化可分布模型的系统和方法。

可以在本申请中描述一个或多个不同的特征方面。进一步,对于在此所描述的一个或多个特征方面,可以描述许多备选布置;应当理解,这些布置仅为说明目的而呈现,并且不以任何方式限制在此所包含的特征方面或在此所呈现的权利要求。一个或多个布置可以广泛地应用于许多特征方面,如从本公开中可以很容易地看出。通常,对布置进行了足够详细的描述,以使本领域技术人员能够实践其中一个或多个特征方面,并且应当理解,可以使用其他布置,并且可以在不脱离特定特征方面的范围的情况下进行结构、逻辑、软件、电气和其他改变。可参考构成本公开一部分、且以图解的方式示出一个或多个方面的特定布置的一个或多个特定特征方面或图来描述在此所描述的一个或多个特征方面的特定特征。然而,应当理解,这些特征不限于在描述它们的一个或多个特定特征方面或附图中的使用。本发明既不是对一个或多个特征方面的所有布置的文字描述,也不是必须存在于所有布置中的一个或多个特征方面的特征列表。

本专利申请中所提供段落标题和本专利申请的标题仅是为了方便,且不应视作以任何方式限制本公开。

相互通信的装置不必连续相互通信,除非另外明确规定。此外,相互通信的装置可以直接地或通过一个或多个通信机制或中介间接地逻辑或物理地通信。

对具有相互通信的多个部件的方面的描述并未暗示需要所有这些部件。相反,可以描述各种任选的部件来说明各种可能的特征方面,且以便于更充分地说明一个或多个特征方面。类似地,尽管可按顺序描述过程步骤、方法步骤、算法等,但除非明确相反说明,否则此类过程、方法和算法通常可被配置为按交替顺序工作。换言之,本专利申请中描述的任何步骤序列或顺序本身并不表示要求按照该顺序执行这些步骤。所述过程的步骤可按任何实际顺序执行。进一步,尽管被描述或暗示为非同时发生,但一些步骤可以同时执行(例如,因为一个步骤在另一个步骤之后被描述)。此外,由在附图中的描绘来说明过程并不意味着所示过程排除对其的其他变化和修改,也不暗示所示过程或其任何步骤对于一个或多个特征方面是必要的,也不暗示优选所示过程。此外,通常在每个特征方面描述一次步骤,但这并不暗示它们必须发生一次,或者它们可能仅在每次执行或执行过程、方法或算法时发生一次。某些步骤可以在某些方面或某些事件中省略,或者某些步骤可以在给定的方面或事件中多次执行。

当在此描述单个装置或物品时,显而易见的是,可以替代单个装置或物品使用多于一个装置或物品。类似地,当在此描述多于一个装置或物品时,显而易见的是,可以替代多于一个装置或物品而使用单个装置或物品。

可以由并未明确描述为具有该功能或特征的一个或多个其他装置备选地具体化装置的功能或特征。因此,其他特征方面不必包括装置自身。

为了清楚有时以单数形式描述在此所述或引述的技术和机制。然而应该知晓,特定特征方面可以包括技术的多次迭代或机制的多个实例,除非另外说明。附图中的进程描述或方框应该理解为表示包括了用于实施进程中特殊逻辑功能或布置的一个或多个可执行指令的模块、代码段或代码部分。备选实施方式包括在各个特征方面的范围内,其中例如可以以所示或所讨论顺序之外的顺序执行功能,包括实质上同时或以相反顺序,取决于所涉及的功能,如本领域技术人员应该理解的。

概念性架构

图1是根据本发明实施例的业务操作系统100的示例性架构图。客户端为了特殊数据输入、系统控制以及为了与系统输出诸如自动预测决策和计划以及备选路径模拟的交互而访问系统105通过系统的分布式、可扩展高带宽云接口110和数据存储112而发生,接口110使用多用途、健壮的网络应用驱动接口以输入和显示面向客户端的信息,数据存储112诸如但不限于MONGODBTM,COUCHDBTM,CASSANDRATMorREDISTM,取决于实施例。由系统分析的大部分业务数据既来自客户业务范围内的数据源,也来自基于云的、公开的或专有的数据源107,诸如但不限于:订阅的业务领域专用数据服务、外部远程传感器,订阅的卫星图像和数据馈送以及一般和特定领域感兴趣商业操作的网站,也可通过云接口110进入系统,数据被传递到可能具有接收和转换外部数据所需的API例行程序135a、然后将归一化信息传递到系统的其他分析和变换部件的连接器模块135,有向计算图模块155,大容量网络爬虫模块115,多维时序数据库120和图形堆栈服务145。有向计算图模块155从多个源检索一个或多个数据流,多个源包括但不限于多个物理传感器、网络服务提供商、基于网络的问卷和调查、电子基础设施的监视、群众活动和人输入装置信息。在有向计算图模块155内,数据可以被划分成专用预编程数据流水线155a中的两个等同流,其中一个子流可以被发送用于批处理和存储,而另一个子流可以被重新格式化以用于变换流水线分析。然后,数据可以被传送到作为分析的一部分的用于线性数据变换的通用变换器服务模块160,或者用于作为分析的一部分的分支或迭代变换的可分解变换器服务模块150。有向计算图模块155将所有数据表示为有向图,其中变换是节点,并且在图的变换边缘之间表示结果消息。大容量网络抓取模块115可以使用多个驻留服务器的预编程的网络爬虫,这些爬虫虽然是自主配置的,但是可以部署在网络抓取框架115a内,其中SCRAPYTM是一个例子,用于识别和检索基于网络的数据源中的感兴趣数据,这些数据源没有被传统的网络爬虫技术很好地标记。多维时序数据存储模块120可以从可以是数种不同类型的大量多个传感器接收流数据。多维时序数据存储模块120还可以存储系统100遇到的任何时序数据,诸如但不限于受保客户端基础设施站点的环境因素,部分或全部受保客户端的部件传感器读数和系统日志,受保客户端所在地区的天气和灾难性事件报告,来自驻留了受保客户基础设施和网络服务信息的地区的政治公报和/或新闻(例如,但不限于,新闻、资本融资机会和财务信息、销售、市场状况),以及与服务相关的客户数据。多维时序数据存储模块120可以通过动态地分配网络带宽和服务器处理信道来处理输入数据而以适应不规则和大容量的浪涌。语言的编程包装器120a的实例包括但不限于,C++、PERL,PYTHON,and ERLANGTM,这允许在不熟悉核心编程的情况下将复杂的编程逻辑添加到多维时序数据库120的默认功能中,极大地扩展了功能的广度。多维时序数据库120和大容量网络爬虫模块115检索到的数据可以通过有向计算图155和相关的通用变换器服务160和可分解变换器服务150模块进一步分析和转换为任务优化结果。备选地,可以将来自多维时序数据库和大容量网络爬虫模块的数据(通常具有确定重要顶点的脚本提示信息145a)发送到图形堆栈服务模块145,该模块采用标准化协议将信息流转换为该数据的图形表示,例如开放式图形互联网技术(尽管本发明不依赖于任何一种标准)。通过这些步骤,图形堆栈服务模块145以图形形式表示受任何预先确定的脚本修改145a影响的数据,并将其存储在基于图形的数据存储145b中,例如GIRAPHTM或键值配对型数据存储REDISTM,或RIAKTM,其中任何一个都适合存储基于图形的信息。

然后,转换分析过程的结果可以与进一步的客户端指令、与分析相关的附加业务规则和实践、以及自动化规划服务模块130中已有数据之外的情况信息相结合,它还运行强大的基于信息理论的预测统计功能和机器学习算法130a,以允许基于当前系统导出的结果快速预测未来趋势和结果,并选择多个可能的业务决策的每一个。然后,通过使用所有或大多数可用数据,自动规划服务模块130可以提出最有可能导致具有可使用的高水平确定性的有利业务结果的业务决策。与自动化规划服务模块130密切相关,利用系统衍生的结果以及可能的外部提供的辅助最终用户业务决策的附加信息,具有离散事件模拟器编程模块125a的动作结果模拟模块125与面向最终用户的观察和状态估计服务140耦合,该服务根据情况需要具有高度可编脚本的140b,并且具有游戏引擎140a,以更实际地实施考虑中的业务决策的可能结果,允许业务决策者基于对当前可用数据的分析而调查选择一个悬而未决的行动方案而不是另一个的可能结果。

图2是根据本发明各个实施例的示例性系统200的方框图,其用于使用传输学习以适应在目标数据或应用内可能不具有等同特征空间或部分的特定环境或应用中所训练的数据模型。系统200包括可分布模型源201,以及多个电子装置220[a-n]。模型源201可以包括可分布模型205,本地数据存储210,和合成数据存储215;而每个电子装置可以具有实例模型221[a-n],以及装置数据222[a-n]。电子装置220[a-n]可以是本领域通常使用的任何类型计算机化硬件,包括但不限于,台式计算机、膝上型计算机、移动装置、平板计算机和计算机集群。为了简单,以下关于系统200的讨论将从单个装置220a的角度,其包括实例模型221a和装置数据222a。应该理解,装置220[a-n]可以独立地、且以类似于装置220a的方式而操作。

模型源201可以配置用以将可分布模型205的实例副本发送至装置220a,且可以是本领域使用的配置用于使用业务操作系统100的任何类型计算机化硬件,且可以经由可以允许在空中处理传入和传出数据的有向计算图数据流水线155a而与相连的装置通信。可分布模型205可以是本领域通常在机器学习中使用的模型,或者可以是已经调谐以更高效地利用训练数据的专用模型,该数据已经分布在各个装置之中且仍然能够通过传统的机器学习方法而训练。本地数据210可以包括之前存储的数据,或者正在存储进程中的数据,例如,当前通过监控其他系统正在收集的数据。合成数据215可以是已经智能地和/或预测地生成以适合模型上下文、并通常是基于真实趋势和事件的数据。合成数据215的示例可以包括已经从正在运行的计算机模拟收集的数据;已经使用具有之前存储的数据和当前趋势的业务操作系统100的预测模拟功能而生成的数据;或者采用了其他专用软件,诸如SNORKEL。本地数据210和合成数据215可以由模型源201用作用于可分布模型205的训练数据。尽管图2中示出为存储在模型源201内,本领域技术人员应该知晓,本地数据210和合成数据215可以源自外部系统,且通过一些机制诸如例如互联网或局域网连接而向模型源201提供。

在系统200中,装置220a可以经由网络连接诸如互联网、局域网、虚拟私人网络等等连接至模型源201,其中装置220a可以提供可分布模型221a的实例副本。装置220a可以随后净化并清洁其自己的数据222a,并采用已净化数据训练其实例模型221a。基于对实例模型221a进行更新的报告可以由模型源201使用以改进可分布模型205。在优选实施例中,装置220[a-n]可以包括配置用于使用业务操作系统100的系统,并在其他功能之中利用其有向计算图性能以处理数据。然而在一些实施例中,电子装置的硬件可以例如是运行了另一操作系统的移动装置或计算机系统。这些系统可以使用配置用于根据已建立兼容性规范而处理数据的专用软件。

传输引擎230如需要的话可以用于促进模型205与一些目的地装置220b的共享,例如用于与其初始所创建不同环境或为了不同目的所使用的自适应模型205。这可以例如用于在部门或组织之间共享数据模型,这可以受益于相互数据而不论硬件或软件环境中变化或目的不同。传输引擎230可以利用各种机器学习方案以提供传输学习,利用来自一个问题或一组数据的机器学习并将其适用于不同(但是相关的)数据。例如,对关于汽车的一组数据训练的机器学习可以可适用于关于其他车辆诸如卡车或摩托车的数据,且可以使用传输学习以使将汽车专用数据应用于更广阔数据集合和相关数据类型。传输学习方案可以包括例如概率逻辑诸如Markov逻辑网络(为了促进在不确定性之下的推论,其可以用于将习得的技术应用于新数据模型,或为了新目的而修改数据模型)或Bayesian模型以将各种条件相关性建模为有向非循环图。这些方案以及根据各种特征方面可以可能的其他方案可以用于分析根据对于该数据集的有意目的而分析数据集,诸如(例如)确保数据顺应任何可应用的法规(诸如审查可能存在的个人可识别信息,例如)或者确保数据符合任何所需规范以确保与有意设计目的地或用途的互用性。

传输引擎230可以使用传输学习来适应可能具有不同特征或符合不同标准的环境或应用,以便可以对于特定目的地的适合性评估数据集。可以通过使用多个预先训练的模型来进一步增强分析,这些模型可以用作在操作期间进一步细化的起点,将机器学习算法应用于模型本身,以便可以对其进行修改以适应数据或目的地信息的变化,确保分析仍然适用于有意设计目的以及正在分析的数据集。此外,可以使用预先训练的模型来适应不需要深入分析的环境,诸如(例如)在资源有限的部署(例如嵌入式或移动装置)中,其中可以在将其导出以供存储或使用更多先进的机器学习能力之前使用预先训练的模型来执行数据的初始分析。这还提供了一种机制,用于适应可能不需要本地化训练的环境,例如在跨许多移动装置部署时,可能需要确保分析操作的一致性,而不可能每个装置都开发自己的本地化训练模型。

传输引擎230可用于促进域自适应,从一个数据集(初始可分布数据模型205)学习,并将此机器学习应用于新数据以基于从初始训练获得的知识创建新数据模型。这可以以部分或完全无监督的方式执行,从源数据中学习而无需手动标记数据(如传统方法中常用的)。在部分无监督的布置中,具有某些标记数据的预训练模型可以用作进一步训练的起点,其中无监督学习将已标记信息合并并在此基础上开发更大的模型以供使用。这可用于合并现有的已标记数据(例如,可能已为其他应用程序创建或标记的数据),然后应用无监督机器学习来扩展数据而无需进一步的手动操作。

系统200也可以被配置成允许数据中的某些偏差保持不变。在某些情况下,为了遵守当地法律,诸如数据的地理来源的偏差可能是必要的。例如,一些国家可以在适当位置制定了某些法律以防止向其他一些受限制国家进出口数据。通过考虑数据的地理来源的偏差,偏差可用于对传入的更新报告进行分类。更新报告随后可用于训练地理上受限的可分布模型,而不包括来自其他受限国家的数据,同时仍然包括来自非受限国家的数据。

为了提供另一个示例性应用,分布跨多个治安市区的犯罪报告和数据可以包含可以与犯罪预测模型相关的犯罪新趋势的信息。但是,该数据可以包含敏感的必须保留在该市区内的非公开信息。采用在此描述的系统,可以从敏感信息中删除数据,用于训练犯罪预测模型的实例,并且可以将相关数据间接地集成到犯罪预测模型中。因为实际数据不会离开该市区的计算机系统,因此可以在不担心敏感信息泄露的情况下完成这项工作。

应当理解,电子装置220[a-n]不必同时全部连接到模型源201,并且任何数量的装置可以在给定时间主动连接至模型源201并与之交互。此外,可分布模型的改进、实例模型的改进和往复通信可以不连续地运行,并且可以仅在需要时执行。此外,为了简单,图2仅示出一个实例。然而,在实践中,系统200可以是具有多个可分布模型源的潜在更大系统的节段;或者可分布模型源可以存储并服务于多个可分布模型。电子装置220[a-n]不限于仅与一个可分布的模型源进行交互,并且可以根据需要尽可能与多个可分布模型源连接并交互。

因为数据内包含的偏差可以包含有价值的信息,或在应用于正确的模型时给予有价值的洞察力,将这些数据用于专用模型可以是谨慎的。

图3是根据本发明的各种实施例的可以利用分布在各个扇区之间的数据中包含的偏差来改进偏差专用可分布模型的示例性系统300的框图。系统300可以包括可分布模型源301;和一组扇区302,其可以包括多个扇区325[a-h]。模型源301可以是类似于模型源201的系统,包括可以以等同方式使用的本地数据310的源和合成数据315的源;然而,模型源301可以服务于两个不同模型的实例-广义可分布模型305和偏差专用可分布模型320。广义可分布模型305可以是可以使用分布跨组302中各个扇区的数据来训练的模型,其中数据内偏差已经被加权和校正,这类似于可分布模型205。偏差专用可分布模型320可以是其中可以仔细考虑了来自每个扇区325[a-n]的数据内所包含任何偏差的模型。

扇区325[a-h]的每一个可以是具有分布式数据的装置,类似于图2中的电子装置220[a-n],其已经被分配了分类,例如某个区域内的装置。然而,扇区并不限于是基于地理位置。为了提供一些非地理示例,扇区325[a-h]可以是按年龄组、收入类别、兴趣组等分类的装置。扇区325[a-h]的任何一个内的装置可以获得广义可分布模型和偏差专用模型的实例。装置可以随后采用其自身存储的数据来训练实例模型,该存储数据已经以如下面图7中描述的方法那样的方式处理,并且最终导致广义模型和偏差专用模型的改进。

应当理解,与图2中所示的系统200类似,系统300中所示的实施例示出了可分布模型源和数据源的一种可能的布置,并且为了简单选择了这种布置。在其他实施例中,可以例如组中存在更多或更少扇区,可以存在多个扇区群组,或者可以存在多个模型,包括广义的和偏差专用的。参见下面图4的讨论对于具有多个层的示例,每个层具有其自己的扇区群组。

图4是根据本发明的各种实施例的其中每个层可以有其自己的一组可分布模型的示例性层次结构400的框图。在层次结构400的最高层次,存在一个全球层次405,它可以包含层次结构400的所有较低层次。在全球层次405之下可以是多个大洲层级410扇区,而这些扇区又可以包括其下方的所有层级。继续这种模式,在大洲层级之下可以是多个国家级415扇区,其中可以有多个国家级或省级420扇区,这导致县级425扇区,然后是城市级430扇区,然后是街道级435扇区。每一级扇区可以具有如图3所述的系统,并且具有专门用于利用从每一级扇区分布内的数据收集的偏差的可分布模型,以及具有一定程度上已加权并校正的偏差的广义可分布模型。例如,如果一个层级上的特定模型适用于另一个层级,那么模型也可以在层级之间共享。在一层级内收集的模型和数据可以不限于在相邻层级中使用,例如,通过加权和校正偏差,在县级收集的数据也可能与全球层级的模型以及街道层级的模型相关。

例如,全球性公司的业务办事处可能遍布全球。该公司可以具有一个全球办事处,负责管理一个业务区域子组中的办事处,例如通常使用的业务区域,如亚太地区、美国、拉丁美洲、东南亚等。这些业务区域可以每个都有一个区域办事处,负责管理这些区域内自己的国家分组。这些国家可能各有一个国家办事处,负责管理自己的州/省/地区分组。如图4所示,可以存在更深、更细粒度的子组,但对于本示例的目的,所使用的最深级别将是州/省/地区。

全球办公室可以有具有配置用以使用业务操作系统100的系统,并且可以服务于两个可分布模型:配置用以在全球范围内分析来自分布式业务区域的已净化数据的广义可分布模型,以及利用分布在业务区域之间的数据中偏差的偏差专用的分布模型。全球模型的示例可以是预测对环境或全球气候影响的模型,而商业区域专用模型可以是基于区域数据预测商业收益的模型,诸如,每个区域的经济、每个区域的发展趋势或每个区域的人口。在下一级,区域办事处可以向该区域内的国家提供可分布模型:用于偏差已校正的全区域分布式数据的分布式模型,以及利用国家级分布式数据内偏差的基于偏差的可分布模型。这些模型可以与全球办公室所服务的模型相似,但可以更以区域和国家为中心,例如,区域环境和气候,以及国家一级的业务预测。在下一级,也是本例的最后一级,国家办事处可以向该国内的州/省/地区提供可分布模型,类似于全球和区域两级的示例模型。在州一级分布的数据可以被收集并用于训练这些模型。应当注意的是,模型的分布在每个层次上被划分以简化示例,并且不代表本发明的任何限制。在其他实施例中,例如,在任何级别中的单个系统可以为层次结构的每个级别的所有各种模型服务,或者在本示例中使用的全球公司的系统之外可以存在服务于模型的服务器。

示例性特征方面的详细说明

图5是示出根据本发明的各种实施例的用于在训练可分发模型的实例之前净化和消密存储在电子装置上的数据的方法500的流程图。在初始步骤505,识别并校正在数据内发现的偏差,以便数据可能更有利于在广义可分布模型中使用。偏差可以包括但不限于本体或区域趋势、语言或种族趋势、以及性别趋势。偏差被智能地加权以提供有用的洞察,而不会过度拟合数据集。在一些实施例中,可以特别地识别和存储偏差数据,以便在其他更区域化的可分布模型上使用。在步骤510,为了维护用户和系统的隐私,数据可以清除个人识别信息和其他敏感信息。该信息可以包括银行信息、病史、地址、个人史等。在步骤515,现在已净化和消密的数据可以被标记为用作训练数据。在步骤520,数据现在被适当地格式化以用于训练实例模型。

应该注意的是,方法500概述了一种净化和消密数据的方法。在其他实施例中,可以跳过方法500中的一些步骤,或者可以添加其他步骤。除了用于训练实例模型、并最终改进可分布模型之外,数据还可以以类似的方式进行处理,以变得更通用和更适合于传输用于训练属于不同域的模型中。这允许在新模型中重新使用以前收集的数据,而无需有时费力重新收集为新创建的模型的特定域的上下文而格式化的数据。

图6是示出根据本发明的各种实施例的用于改进来自模型源外部装置上的可分布模型的方法600的流程图。在初始步骤605,可分布模型的实例与来自可分布模型源的装置共享。在步骤610,净化和消密装置上的数据,图5中概述了一种该方法。在步骤615,现在以适合用于训练通用可分布模型的格式,可以使用数据以训练装置上所共享的模型(即,可分布模型的共享实例)。在步骤620,可以生成基于对所共享模型的更新的报告,并将其传输到可分布模型源。与数据本身的传输不同,生成并传输报告的一个好处是,它可能比传输改进可分布模型所需的所有数据更有效。此外,因为原始数据不需要离开装置,此方法可能有助于进一步确保敏感信息不会泄漏。在步骤625,可分布模型源使用该报告以改进可分布模型。

图7是示出根据本发明的各种实施例的用于采用分布式装置上的数据改进偏差专用和广义可分布模型的方法700的流程图。在初始步骤705,装置从模型源获得可分布模型的实例:广义可分布模型和偏差专用可分布模型。在步骤710,采用存储在装置上的数据创建第一数据集,该装置在由业务操作系统100智能地识别和处理的数据中具有偏差,以便与偏差专用模型一起使用。在步骤715,使用存储在装置上的数据创建第二数据集,数据中的偏差智能地加权和校正,以便该数据集可能更适合于广义模型。在步骤720,数据集被净化并消除敏感信息。在步骤725,使用第一和第二数据集以训练其各自模型的实例;第一数据集训练偏差专用模型的实例,并且第二数据集训练广义模型的实例。在步骤730,基于对每个模型的实例所做的更新而生成报告。在生成报告之后,步骤类似于方法600的最后步骤,特别是步骤620和625。生成的报告被传输到模型源,每个报告都用于改进各自的模型。

图8是示出了用于使用传输学习来适应在特定环境或应用中训练的数据模型的方法800的流程图,该特定环境或应用在目标数据或应用中可能不具有相同的特征空间或分布。在初始步骤801中,可以从存储的数据创建第一数据集,可选地具有根据前面描述的一个或多个特征方面已识别或移除的偏差(参考图4-7)。在下一步骤802中,可以分析数据集的目的地(例如,数据预定用于的外部应用程序或服务,或与之共享数据的另一环境或部门),以识别数据集的任何需求,诸如(例如)法规、内容,或数据应遵守的格式限制。在下一步骤803中,可以将各种传输学习算法应用于第一数据集,使用机器学习以处理数据并确定其对于目的地的适合性804,以及识别数据必须适应以满足要求的区域。可以根据特定的安排使用许多传输学习方法,例如使用诸如Bayesian或Markov网络之类的概率学习模型来针对可能存在的任何不确定性适当地处理数据传输。在下一步骤805中,可以使用传输学习过程的结果来创建第二数据集,生成包含来自第一数据集的适当和自适应数据的导出数据集,使得第二数据集与目的地完全兼容。在最后步骤806中,可以将第二数据集提供给数据目的地以供使用。

图9是示出在传输学习中使用预先训练的模型的方法900的流程图,以提供附加模型训练的起点。在初始步骤901中,可以从存储的数据创建第一数据集,可选地具有根据先前描述的一个或多个方面识别或移除的偏差(参考图4-7)。在下一步骤902中,可以分析数据集的目的地(例如,数据预定用于的外部应用程序或服务,或与之共享数据的另一环境或部门),以确定数据集的任何需求,诸如(例如)法规、内容,或数据应遵守的格式限制。在下一步骤903中,可以加载包含标记数据的预训练模型,提供初始模型以用作基于先前标记数据的一部分的无监督学习的起点(与传统的、完全监督的方法相反,其中所有数据必须手动标记以供机器学习操作)。在下一步骤904中,无监督机器学习随后可以根据预先训练的模型中的标记数据来处理第一数据集,从标记数据构建以开发用于传输和域自适应的第二数据模型905。

硬件架构

通常,在此所公开的技术可以在硬件上或者软件与硬件的组合上实施。例如,它们可以实施在操作系统内核中、在单独的用户进程中、在绑定到网络应用程序的库包中、在特殊构造的机器上、在专用集成电路(ASIC)上或在网络接口卡上。

在此所公开的至少一些特征方面的软件/硬件混合实施方式可实施在可编程网络驻留机器(应理解为包括间歇性连接的网络感知机器)上,其由存储在存储器中的计算机程序选择性地激活或重新配置。该网络装置可以具有多个网络接口,这些网络接口可以被配置或设计为利用不同类型的网络通信协议。在此可描述其中一些机器的一般架构,以便说明一个或多个示例性手段,通过这些手段可以实施给定的功能单元。根据特定的特征方面,在此所公开的各个特征方面的至少一些特征或功能可以在与一个或多个网络相关联的一个或多个通用计算机上实施,诸如例如终端用户计算机系统、客户端计算机、网络服务器或其他服务器系统,移动计算装置(例如,平板电脑、移动电话、智能手机、笔记本电脑或其他适当的计算装置)、消费电子装置、音乐播放器或任何其他适当的电子装置、路由器、交换机或其他适当的装置,或其任何组合。在至少一些特征方面中,在此所公开的各个特征方面的至少一些特性或功能可实施在一个或多个虚拟计算环境(例如,网络计算云、驻留在一个或多个物理计算机器上的虚拟机、或其他适当的虚拟环境)中。

现在参考图10,示出了描述适于实施在此所公开的特征或功能的至少一部分的示例性计算装置10的框图。例如,计算装置10可以是之前段落所列的任何一台计算机器,或者实际上是能够根据存储在存储器中的一个或多个程序执行基于软件或硬件的指令的任何其他电子装置。计算装置10可以被配置成使用用于这种通信的已知协议在诸如广域网、城域网、局域网、无线网、因特网或任何其它网络的通信网络上与诸如客户端或服务器的多个其它计算装置通信,不管是无线的还是有线的。

在一个方面中,计算装置10包括一个或多个中央处理单元(CPU)12、一个或多个接口15和一个或多个总线14(例如外围部件互连(PCI)总线)。当在适当的软件或固件的控制下动作时,CPU12可负责实施特定配置的计算装置或机器的功能相关联的特定功能。例如,在至少一个特征方面中,计算装置10可以被配置或设计成利用了CPU12、本地存储器11和/或远程存储器16和接口15的服务器系统。在至少一个特征方面中,CPU12可导致在软件模块或部件的控制下执行一种或多种不同类型的功能和/或操作,其例如可包括操作系统和任何适当的应用软件、驱动程序等。

CPU12可以包括一个或多个处理器13,例如,来自Intel、ARM、Qualcomm和AMD系列微处理器之一的处理器。在一些特征方面中,处理器13可以包括特别设计的硬件,诸如用于控制计算装置10的操作的专用集成电路(ASICs)、电可擦除可编程只读存储器(EEPROMs)、现场可编程门阵列(FPGAs)等。在特定特征方面中,本地存储器11(诸如非易失性随机存取存储器(RAM)和/或只读存储器(ROM),包括例如一个或多个级别的高速缓存存储器)也可以构成CPU12的一部分。然而,有许多不同的方式可以将存储器耦合到系统10。存储器11可用于各种目的,诸如例如,高速缓存和/或存储数据、编程指令等。应该进一步认识到,CPU12可以是各种片上系统(SOC)类型硬件,其可以包括诸如存储器或图形处理芯片之类的额外硬件如本领域中越来越普遍的CPU,诸如QUALCOMM SNAPDRAGONTM或者三星EXYNOSTMCPU,诸如用于移动装置或集成装置。

如在此所使用的,术语“处理器”不仅限于本领域中所指的涉及处理器、移动处理器或微处理器的集成电路,而是广泛地指微控制器、微型计算机、可编程逻辑控制器、专用集成电路和任何其他可编程电路。

在一个方面中,接口15被提供为网络接口卡(NICs)。通常,NICs控制通过计算机网络的数据分组的发送和接收;例如,其它类型的接口15可以支持与计算装置10一起使用的其它外围装置。可提供的接口包括以太网接口、帧中继接口、电缆接口、DSL接口、令牌环接口、图形接口等。此外,可以提供各种类型的接口,例如,通用串行总线(USB)、串行、以太网、FIREWIRETM、THUNDERBOLTTM、PCI、并行、射频(RF)、BLUETOOTHTM、近场通信(例如,使用近场磁学)、802.11(WiFi)、帧中继、TCP/IP、ISDN、快速以太网接口、千兆以太网接口、串行ATA(SATA)或外部SATA(ESATA)接口、高清多媒体接口(HDMI),数字视频接口(DVI)、模拟或数字音频接口、异步传输模式(ATM)接口、高速串行接口(HSSI)接口、销售点(POS)接口、光纤数据分布式接口(FDDIs)等。通常,该接口15可以包括适于与适当介质通信的物理端口。在一些情况下,它们还可以包括独立的处理器(诸如专用的音频或视频处理器,这在本领域用于高保真A/V硬件接口中是常见的)和在一些情况下,易失性和/或非易失性存储器(例如RAM)。

尽管图10所示的系统示出了用于实施本文所述的一个或多个方面的计算装置10的一个特定架构,但它决不是可在其上实施本文所述的特征和技术的至少一部分的唯一装置架构。例如,可以使用具有一个或任意数量的处理器13的架构,并且这样的处理器13可以存在于单个装置中或分布在任意数量的装置中。在一个特征方面中,单个处理器13处理通信以及路由计算,而在其他特征方面中,可以提供单独的专用通信处理器。在各种特征方面中,根据包括客户端装置(例如运行客户端软件的平板装置或智能手机)和服务器系统(例如下面更详细描述的服务器系统)的特征方面,可以在系统中实施不同类型的特征或功能。

不管网络装置配置如何,特征方面的系统可以采用一个或多个存储器或存储器模块(例如,远程存储器块16和本地存储器11),其被配置为存储用于通用网络操作的数据、程序指令,或与本文所描述的方面的功能性相关的其他信息(或上述的任何组合)。例如,程序指令可以控制操作系统和/或一个或多个应用程序的执行或包括操作系统和/或一个或多个应用程序。存储器16或存储器11、16也可以被配置成存储数据结构、配置数据、加密数据、历史系统操作信息、或在此所描述的任何其它特定或一般的非程序信息。

因为此类信息和程序指令可被用于实施本文所述的一个或多个系统或方法,因此至少一些网络装置方面可包括非翻译的机器可读存储介质,其例如可被配置或设计为存储程序指令、状态信息,以及用于执行本文所述的各种操作的类似物。此类非翻译性机器可读存储介质的示例包括但不限于磁盘、软盘和磁带等磁性介质;CD-ROM磁盘等光学介质;光盘等磁光介质,以及专门配置用于存储和执行程序指令的硬件装置,例如只读存储装置(ROM)、闪存(在移动装置和集成系统中很常见),固态驱动器(SSD)和“混合SSD”存储驱动器,它们可以将固态驱动器和硬盘驱动器的物理部件组合在一个硬件装置中(就个人计算机而言,这在本领域正变得越来越普遍)、存储器、随机存取存储器(RAM)等。应当理解,这种存储装置可以是整体的和不可移动的(例如可以焊接到主板上或以其他方式集成到电子装置中的RAM硬件模块),或者它们可以是可移动的,诸如可交换闪存模块(诸如“拇指驱动器”或设计用于快速交换物理存储装置的其他可移动介质)、“热交换”硬盘驱动器或固态驱动器、可移动光盘或其他此类可移动介质,以及这样的整体存储介质和可移动存储介质可以互换使用。程序指令的示例包括两个目标代码,例如编译器生成的目标代码,机器代码,例如汇编程序或链接程序生成的目标代码,字节代码,例如JAVA生成的目标代码TM编译器,可以使用Java虚拟机或等效程序执行,也可以使用解释器执行包含更高级别代码的文件(例如,用Python、Perl、Ruby、Groovy或任何其他脚本语言编写的脚本)。

在某些特征方面中,系统可以在独立的计算系统上实施。现在参考图11,示出了在独立计算系统上描绘一个或多个方面或其部件的典型示例性架构的框图。计算装置20包括处理器21,其可以运行执行一个或多个功能或方面的应用的软件,例如客户端应用24。处理器21可以在操作系统22的控制下执行计算指令,诸如例如,MICROSOFT WINDOWSTM操作系统、APPLE macOSTM或iOSTM操作系统、一些Linux操作系统、ANDROIDTM操作系统等的版本。在许多情况下,一个或多个共享服务23可在系统20中运行,并且可用于向客户端应用24提供公共服务。例如,服务23可以是WINDOWSTM服务、Linux环境中的用户空间公共服务,或与操作系统21一起使用的任何其他类型的公共服务体系结构。输入装置28可以是适于接收用户输入的任何类型,包括例如键盘、触摸屏、话筒(例如,用于语音输入)、鼠标、触摸板、轨迹球或其任何组合。输出装置27可以是适合于向一个或多个用户提供输出的任何类型,无论是系统20的远程或本地用户,并且可以包括例如用于视觉输出的一个或多个屏幕、扬声器、打印机或其任何组合。存储器25可以是具有本领域已知的任何结构和架构的随机存取存储器,用于处理器21,例如用于运行软件。存储装置26可以是用于以数字形式存储数据的任何磁性、光学、机械、存储器或电存储装置(例如,上面描述的那些,参考图10)。存储装置26的示例包括闪存、磁性硬盘、CD-ROM等。

在一些特征方面中,系统可以在分布式计算网络上实施,诸如具有任意数量的客户端和/或服务器的网络。现在参考图12,示出了描述用于在分布式计算网络上实施根据一个方面的系统的至少一部分的示例性架构30的框图。根据该特征方面,可以提供任意数量的客户端33。每个客户端33可以运行用于实施系统的客户端部分的软件;客户端可以包括如图11所示的系统20。此外,可以提供任意数量的服务器32来处理从一个或多个客户端33接收到的请求。客户端33和服务器32可以经由一个或多个电子网络31彼此通信,该电子网络31可以在各个特征方面中是因特网、广域网、移动电话网络(例如CDMA或GSM蜂窝网络)、无线网络(例如WiFi、WiMAX、LTE等)或局域网(或者实际上是任何网络本领域已知的拓扑;特征方面并未优选任何一种网络拓扑)。网络31可以使用任何已知的网络协议来实施,包括例如有线和/或无线协议。

此外,在一些特征方面中,服务器32在需要时可以调用外部服务37以获取附加信息,或者引用关于特定呼叫的附加数据。例如,可以经由一个或多个网络31与外部服务37进行通信。在各种特征方面中,外部服务37可以包括与硬件设备本身相关的或安装在硬件装置本身上的支持网络的服务或功能。例如,在客户端应用24在智能手机或其他电子设备上实施的一个方面中,客户端应用24可以获取存储在云中的服务器系统32或部署在特定企业或用户的一个或多个场所上的外部服务37上的信息。

在一些特征方面中,客户端33或服务器32(或两者)可以使用一个或多个专用服务或装置,这些服务或装置可以在一个或多个网络31上本地或远程部署。例如,一个或多个数据库34可由一个或多个方面使用或参考。本领域的普通技术人员应当理解,数据库34可以以各种各样的架构而布置,并且使用各种各样的数据访问和操作装置。例如,在各个方面中,一个或多个数据库34可以包括使用结构化查询语言(SQL)的关系数据库系统,而其他数据库34可以包括诸如本领域中称为“NoSQL”的替代数据存储技术(例如,HADOOPCASSANDRATM,GOOGLE BIGTABLETM,等等)。在一些特征方面中,可根据该方面使用各种数据库架构,例如面向列的数据库、内存中数据库、集群数据库、分布式数据库、甚至平面文件数据存储库。本领域普通技术人员应当理解,可以酌情使用已知的或未来的数据库技术的任何组合,除非针对本文描述的特定方面指定特定的数据库技术或部件的特定排列。此外,应理解,本文中使用的术语“数据库”可指物理数据库机器、充当单个数据库系统的机器集群或整个数据库管理系统内的逻辑数据库。除非为“数据库”一词的给定使用指定了特定的含义,否则应解释为该词的任何这些含义,所有这些都被本领域技术人员理解为“数据库”一词的简单含义。

类似地,一些特征方面可以使用一个或多个安全系统36和配置系统35。安全和配置管理是常见的信息技术(IT)和网络功能,其中一些通常与任何IT或网络系统相关。本领域普通技术人员应当理解,本领域现在或者将来已知的任何配置或者安全子系统可以与方面一起使用而不受限制,除非对任何特定方面的描述特别要求特定的安全36或者配置系统35或者方法。

图13示出了可以在整个系统的各个位置中的任何位置使用的计算机系统40的示例性概述。它是任何可以执行代码来处理数据的计算机的示例。在不脱离本文公开的系统和方法的更广泛范围的情况下,可以对计算机系统40进行各种修改和改变。中央处理器单元(CPU)41连接到总线42,总线还连接到存储器43、非易失性存储器44、显示器47、输入/输出(I/O)单元48和网络接口卡(NIC)53。通常,I/O单元48可以连接到键盘49、指针设备50、硬盘驱动52和实时时钟51。NIC53连接到网络54,网络54可以是因特网,也可以是本地网络,本地网络可以有也可以没有到因特网的连接。在本例中,作为系统40的一部分还示出了连接到主交流(AC)电源46的电源单元45。未示出的是可能存在的电池,以及许多已知但不适用于本文公开的当前系统和方法的特定新颖功能的其他装置和修改。应当理解,所示的一些或所有部件可以组合在一起,例如在各种集成应用中,例如在高通或三星系统芯片(SOC)设备中,或者在将多个功能或功能组合到单个硬件设备(例如,在移动设备中,如智能手机、视频游戏控制台、车载计算机系统诸如导航或汽车多媒体系统、或其他集成硬件设备中)。

在各个特征方面中,用于实施各个方面的系统或方法的功能可以分布在任意数量的客户端和/或服务器部件中。例如,可以实施各种软件模块以执行与任何特定特征方面的系统相关的各种功能,并且可以不同地实施这些模块以在服务器和/或客户端部件上运行。

本领域技术人员将了解上述各个特征方面的可能修改的范围。因此,本发明由权利要求及其等价形式而限定。

30页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:通过即时提供实质性回答以提供自然语言对话的方法、计算机装置及计算机可读存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!