买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】共享的机器学习数据结构_惠普发展公司,有限责任合伙企业_201680085228.2 

申请/专利权人:惠普发展公司,有限责任合伙企业

申请日:2016-06-17

公开(公告)日:2023-05-26

公开(公告)号:CN109416636B

主分类号:G06F9/38

分类号:G06F9/38;G06T1/20;G06N99/00;G06F12/08;G06F13/16

优先权:

专利状态码:有效-授权

法律状态:2023.05.26#授权;2019.03.26#实质审查的生效;2019.03.01#公开

摘要:示例包括系统,所述系统包括用于存储机器学习数据结构的非易失性存储器。示例用第一处理资源来访问机器学习数据结构,并且示例用第二处理资源来访问机器学习数据结构,所述第二处理资源包括至少一个图形处理核心,使得机器学习数据结构是第一处理资源和第二处理资源的共享的存储器空间。

主权项:1.一种用于处理数据的系统,包括:非易失性存储器,其用于存储包括至少一个机器学习模型的机器学习数据结构;第一处理资源,其耦合到所述非易失性存储器以访问所述机器学习数据结构;第二处理资源,其包括至少一个图形处理核心,所述第二处理资源耦合到所述非易失性存储器以访问所述机器学习数据结构,以使得所述机器学习数据结构是所述第一处理资源和所述第二处理资源的共享的存储器空间,实时数据输入,其耦合到所述第一处理资源;以及处理引擎,其用于:用所述第一处理资源来将从所述实时数据输入接收的实时数据流存储在所述非易失性存储器的所述机器学习数据结构中;以及用所述至少一个图形处理核心来对所述实时数据流的子集执行所述至少一个机器学习模型的操作,以针对所述实时数据流生成模型结果,其中,所述非易失性存储器具有足够的访问速度使得所述第一处理资源和所述第二处理资源能够直接在所述机器学习数据结构中处理指令和数据。

全文数据:共享的机器学习数据结构背景技术一些数据处理系统可以对数据集执行机器学习以生成结果。机器学习的示例可以包括分类、回归、聚类、密度估计、降维、和或其它这样的类型的分析。在这样的示例中,数据处理系统可以基于机器学习模型来分析数据集。附图说明图1A是可以利用本公开内容的示例性系统的一些组件的框图。图1B是可以利用本公开内容的示例性系统的一些组件的框图。图2是可以利用本公开内容的示例性系统的一些组件的框图。图3是示例性系统的一些组件的框图。图4是示出了可以由示例性系统执行的示例性操作序列的流程图。图5是示出了可以由示例性系统执行的示例性操作序列的流程图。图6是示出了可以由示例性系统执行的示例性操作序列的流程图。图7是示出了可以由示例性系统执行的示例性操作序列的流程图。在整个附图中,相同的附图标记表示相似但不一定相同的元件。此外,附图提供了与描述一致的示例和或实施方式;然而,描述不限于附图中提供的示例和或实施方式。具体实施方式示例性数据处理系统可以包括用于存储机器学习数据结构的非易失性存储器。机器学习数据结构可以对应于第一处理资源和第二处理资源的共享的存储器空间,其中第二处理资源可以包括至少一个图形处理核心。在一些示例中,非易失性存储器可以具有访问速度,使得第一处理资源和第二处理资源可以直接地在机器学习存储器结构中处理指令和数据。如本文使用的数据处理系统可以包括例如个人计算机、便携式计算设备例如,膝上型计算机、平板计算机、智能手机、服务器、服务器的刀片、服务器的处理节点、片上系统SOC计算设备、SOC设备的处理节点、和或其它这样的数据处理设备系统。如本文使用的,数据处理系统可以被称为计算系统或被简称为系统。本文的示例可以促进用于其中可以执行机器学习的数据处理系统的改进的处理效率、降低的资源利用率、和或增加的计算复杂度。本文描述的示例可以包括用于存储机器学习数据结构的非易失性存储器资源。机器学习数据结构可以包括至少一个机器学习模型。机器学习模型可以包括多个操作,所述多个操作至少部分基于机器学习模型的模型参数来对数据集执行以针对数据集生成模型结果。机器学习模型的示例可以包括基于回归的模型、基于实例的模型、基于正则化的模型、基于决策树的模型、基于贝叶斯网络的模型、基于聚类的模型、关联性规则学习模型、基于人工神经网络的模型、基于降维的模型、基于集合ensemble的模型、和或其它这样的类型的机器学习模型。如将领会的,在一些示例中,机器学习数据结构可以存储多种类型的机器学习模型。如讨论的,每个机器学习模型可以包括模型参数集。一些示例可以通过对学习数据集执行机器学习模型的操作来调整模型参数,并且基于从学习数据集生成的模型结果来更新模型参数。非易失性存储器NVM的示例可以包括只读存储器ROM例如,掩模ROM、PROM、EPROM、EEPROM等、闪速存储器、固态存储器、非易失性状态RAMnvSRAM、电池供电的静态RAM、铁电RAMFRAM、磁阻RAMMRAM、相变存储器PCM、磁带、光驱、硬盘驱动器、3D交叉点存储器3DXPoint、可编程金属化单元PCM存储器、silicon-oxide-nitride-oxide-siliconSONOS存储器、电阻式RAMRRAM、畴壁存储器DWM、nano-RAM、浮动结栅极RAMFJGRAM、忆阻存储器、自旋转移矩RAMSTT-RAM、以及跨电源循环例如,关开维持存储的信息的其它存储器设备模块。跨电源循环存储数据的非易失性存储器还可以称为持久性数据存储器。如本文使用的,非易失性存储器资源可包括一个设备和或模块、或组合设备和或模块。在一些示例中,非易失性存储器资源可以对应于一类非易失性存储器,其被称为存储类存储器SCM。在这些示例中,SCM非易失性存储器是可字节寻址的、与处理资源同步并且在处理资源相干域中。此外,与其它类型的非易失性存储器例如,硬盘驱动器或磁带存储器设备相比,SCM非易失性存储器可以包括具有相对较高的读写速度的存储器类型。SCM非易失性存储器的示例包括一些类型的闪速存储器、RRAM、忆阻器、PCM、MRAM、STT-RAM、以及其它类型的较高读写速度持久性数据存储器设备。如将领会的,由于一些类型的非易失性存储器例如,旋转磁盘硬盘驱动器、NAND闪速存储器、磁带驱动器的相对低的读写速度,因此处理资源可能不能用这些类型的非易失性存储器来直接地处理指令和数据。然而,处理资源可以用SCM非易失性存储器来直接地处理指令和数据。另外,示例可以包括耦合到非易失性存储器资源的处理资源。具体地,示例性系统可以包括耦合到非易失性存储器以访问机器学习数据结构的第一处理资源,并且示例性系统可以包括耦合到非易失性存储器以访问机器学习数据结构的第二处理资源。因此,非易失性存储器资源的机器学习数据结构是第一处理资源和第二处理资源的共享的存储器空间。在本文描述的一些示例中,共享的存储器空间指示第一处理资源和第二处理资源可以直接地向和从机器学习数据结构读写数据。此外,将领会的是,针对共享的存储器空间,第一处理资源和第二处理资源可以同时访问机器学习数据结构例如,向从机器学习数据结构读写数据。在示例性数据处理系统中,第一处理资源可以包括多个处理资源,并且类似地,第二处理资源可以包括多个处理资源。在一些示例中,第一处理资源可以对应于诸如包括至少一个处理核心的中央处理单元CPU之类的通用数据处理器。在一些示例中,第一处理资源可以包括专用集成电路ASIC、和或用于数据处理的逻辑组件的其它这样的配置。在一些示例中,第一处理资源可以包括多个处理核心,其可以并行、同步、同时、以交织方式、和或以其它这样的指令执行安排来处理执行指令。在一些示例中,每个处理核心可以执行一个以上的指令线程其常被称为多线程核心。第二处理资源可以包括至少一个图形处理核心,所述至少一个图形处理核心可以被称为专用图形处理核心。在一些示例中,第二处理资源可以对应于图形处理单元GPU。在这样的示例中,图形处理核心可以包括用于处理图像视频和或基于数字信号的数据的专门的电路和逻辑器件。在一些示例中,第二处理单元可以包括可以并行处理大数据块的多个图形处理核心。在一些示例中,第二处理单元可以用专门的图形处理核心来执行流式和或向量处理。如将领会的,在一些示例中,第二处理单元和其至少一个图形处理核心可以被用来执行可以不对应于基于图形的操作其常被称为GPU上的通用计算的各种类型的操作。在一些示例中,可以使用第二处理资源的至少一个图形处理核心来对数据集执行存储在非易失性存储器的机器学习数据结构中的至少一个机器学习模型的操作。现在转到附图,并且特别是图1A-B,这些附图提供了示出了系统100的示例的框图。如本文公开的系统的示例包括个人计算机、便携式电子设备例如,智能电话、平板电脑、膝上型电计算机、可穿戴设备等、工作站、智能设备、服务器、服务器的处理节点、包括多个服务器的数据中心、和或任何其它这样的数据处理设备。在图1A和图1B的示例中,系统100包括第一处理资源102、第二处理资源104、以及耦合到处理资源102、104的非易失性存储器108。如示出的,第一处理资源102包括至少一个处理核心110,并且第二处理资源104包括至少一个图形处理核心112。非易失性存储器108用于存储可以包括至少一个机器学习模型116的机器学习数据结构114。在本文描述的示例中,第一处理资源102可以包括至少一个基于硬件的处理器。此外,处理资源102可以包括一个处理器或多个处理器,其中处理器可以被配置为在单个系统100中或分布于跨本地和或远程地连接的多个系统。如先前讨论的,第二处理资源104可以包括至少一个图形处理核心112。在一些示例中,第二处理资源104可以包括多核心图形处理单元GPU。在一些示例中,图形处理核心可以包括执行流水线和图形处理核心常被称为浮点单元以执行浮点运算。如图1B中提供的示例中进一步示出的,系统100还可以包括处理引擎117。在这样的示例中,处理引擎117可以协调用第一处理资源102执行至少一个学习模型116。这样的协调的同时,处理引擎117可以用第二处理资源104的至少一个图形处理核心112来执行至少一个机器学习模型116的操作。因此,将领会的是,第一处理资源102可以协调与机器学习模型116相关联的指令发出以供第二处理资源104的图形处理核112进行执行。在一些示例中,协调用第一处理资源执行至少一个机器学习模型116可以包括:使执行在第二处理资源104的至少一个图形处理核心112中的至少两个机器学习模型116进行切换。在图1的示例性系统中,机器学习数据结构114还可以包括至少一个数据集118,其中至少一个数据集118可包括至少一个数据子集120。如将领会的,数据集概括地指代相关信息的集合,并且数据子集概括地指代这样的数据集的单独元素。数据集可以对应于各种类型的数据或数据类型的组合。例如,数据集可以包括用摄像机外围设备采集的并且存储在机器学习数据结构114中的视频数据。在该示例中,这样的视频数据的数据子集可以包括这样的视频数据的时间片,其中时间片可以是视频数据的持续时间的增量。例如,视频数据的数据子集可以是具有10秒、1秒、500毫秒ms、10ms、1ms等的持续时间的时间片。在另一示例中,数据集可以对应于诸如视频和音频数据的组合之类的多媒体数据。在该示例中,数据子集可以对应于诸如多媒体数据之类的时间片。在其它示例中,数据集可以对应于用各种类型的传感器例如,温度传感器、压力传感器等检测到的随时间的各种环境的测量结果例如,温度、压力等。在其它示例中,数据集可以对应于用各种类型的传感器例如,视线传感器、无线电波传感器、紫外线传感器等检测到的随时间的各种类型的电磁辐射的测量结果。如将领会的,数据集可以对应于用各种其它类型的传感器和或设备收集到的各种其它类型的数据。另外,非易失性存储器108可以包括机器学习数据索引122,其可以被用来指向存储在机器学习数据结构114中的各种类型的数据,使得第一处理资源102和或第二处理资源104可以协调对机器学习数据结构114中的数据的读取和或写入。在该示例中,机器学习数据索引122被示出为存储在机器学习数据结构114内;然而,在其它示例中,机器学习数据索引122可以被存储在非易失性存储器108的其它位置中。如将领会的,在一些示例中,机器学习数据索引122可以是持久性结构索引和或持久性对象索引。在一些示例中,将领会的是,可以针对处理资源102、104、以及非易失性存储器108来实现虚拟寻址方案。在这样的示例中,机器学习数据索引122可以促进针对非易失性存储器108的物理存储器地址的虚拟地址转换。在图1B中,示例性系统100包括数据输入124,用其可以从外围设备例如,传感器、图像视频采集设备、音频采集设备、和或其它这样的外围输入设备接收数据。在一些示例中,数据输入124可以促进实时数据流的采集和存储。在这些示例中,实时数据流可以作为数据集118由第一处理资源102存储在机器学习数据结构114中。在用第一处理资源102存储这样的实时数据流的同时,第二处理资源104可以用至少一个图形处理核心112来对实时数据的数据集118的数据子集120执行至少一个机器学习模型116的操作。因此,一些示例可以用至少一个机器学习模型来促进实时数据流的实时处理。如将领会的,实时机器学习处理可以促进各种类型的数据处理操作。例如,机器学习模型可以对应于对象识别,并且可以用对象识别机器学习模型来分析视频数据流。如图1B中示出的,非易失性存储器108还可以包括其上存储的系统存储器126、只读存储器ROM128、和或存储装置130。如将领会的,这些另外的将存储器126-130分配到非易失性存储器108中可以是可由第一处理资源102和第二处理资源104访问的即,共享。然而,在一些示例中,对存储器126-130的另外的分配可以不在第一处理资源102和第二处理资源104之间共享。例如,系统存储器126可以仅可由第一处理资源102访问。如将领会的,非易失性存储器108的其它示例性分配可以在其它示例中实现。此外,系统100可以包括易失性存储器132。如将领会的,易失性存储器132可以包括随机存取存储器RAM或不跨电源循环保持数据的其它这样的存储器。虽然图1B的示例示出了如存储在非易失性存储器108中的系统存储器128、ROM128、以及存储装置130,但是将领会的是,在其它示例中,这样的数据可以被存储在易失性存储器132中。在一些示例中,易失性存储器可以包括可由第一处理资源102和第二处理资源104访问的共享的存储器部分。在一些示例中,非易失性存储器108和或易失性存储器132可以包括不由第一处理资源102和第二处理资源104共享的存储器部分。尽管没有在图1A-B中示出,但是针对与用户或操作者的接口,一些示例性系统可以包括包含一个或多个用户输入输出设备例如,一个或多个按钮、显示器、触摸屏、扬声器等的用户界面。因此,用户界面可以将数据传送到处理资源并从处理资源接收数据。例如,用户可以经由用户界面输入一个或多个选择,并且处理资源可以使数据被输出在用户界面的屏幕或其它输出设备上。此外,系统可以包括网络接口设备。如将领会的,网络接口设备包括用于在一个或多个通信网络上传送数据的一个或多个硬件设备例如,网络接口卡。此外,示例性系统例如,图1A-B的示例性系统可以包括引擎,其中这样的引擎例如,处理引擎117可以是用于实现相应引擎的功能的硬件和编程的任何组合。在本文描述的一些示例中,可以以多种不同的方式来实现硬件和编程的组合。例如,用于引擎的编程可以是存储在非暂时性机器可读存储介质上的处理器可执行指令,并且用于引擎的硬件可以包括用于处理和执行那些指令的处理资源。在一些示例中,实现这样的引擎的系统可以包括存储指令和用于处理指令的处理资源的机器可读存储介质,或者机器可读存储介质可以单独地由系统和处理资源存储并可由其进行访问。在一些示例中,可以在电路中实现引擎。此外,被用来实现引擎的处理资源可以包括至少一个中央处理单元CPU、图形处理单元GPU、专用集成电路ASIC、专门的控制器例如,存储器控制器、和或可以针对数据处理而实现的其它这样类型的逻辑组件。图2提供了示出示例性系统200的框图。在该示例中,系统200包括至少一个处理资源202和机器可读存储介质204。机器可读存储介质204可以表示随机存取存储器RAM设备,所述RAM设备包括示例性系统100的主存储装置,以及任何补充级的存储器,例如高速缓冲存储器、非易失性或备用存储器例如,可编程的或闪速存储器、只读存储器等。另外,机器可读存储介质204可以被认为包括物理地位于其它地方的存储器存储装置例如,微处理器中的任何高速缓冲存储器,以及用作虚拟存储器的任何存储容量例如,如存储在大容量存储设备上或在与示例性系统200通信的另一系统上。此外,机器可读存储介质204可以是非暂时性的。在一些示例中,处理资源202和机器可读存储介质204可以对应于被布置在至少一个服务器中的处理单元和存储器设备。在其它示例中,处理资源202和机器可读存储介质可以被布置在片上系统设备中。另外,可以用可以是可由处理资源202执行的指令来对机器可读存储介质204进行编码和或机器可读存储介质204可以存储所述指令,其中执行这样的指令可以使处理资源202和或系统200执行本文描述的功能、过程、和或操作序列。在图2的示例中,机器可读存储介质204包括用于用第一处理资源208来访问机器学习数据结构的指令。此外,机器可读存储介质204包括用于用第一处理资源208来确定存储在机器学习数据结构中的机器学习模型集以针对存储在机器学习数据结构中的数据集进行执行的指令。此外,机器可读存储介质204包括用于用包括至少一个图形处理核心210的第二处理资源来访问机器学习数据结构的指令。机器可读存储介质204还包括用于用第二处理资源的至少一个图形处理核心来对存储在机器学习数据结构中的数据集执行该机器学习模型集的操作以针对集的每个相应机器学习模型生成相应模型结果的指令。图3提供了示出示例性系统300的一些组件的框图。如讨论的,在一些示例中,处理资源包括中央处理单元CPU,并且在该示例中,系统300包括CPU302,所述CPU302包括至少一个核心304。在一些示例中,CPU302可以包括一个核心304,并且在其它示例中,CPU302可以包括两个核心304被称为双核心配置、四个核心被称为四核心配置等。另外,系统300包括图形处理单元GPU306,所述GPU306包括至少一个图形处理核心308。如将领会的,在一些示例中,GPU306可以包括两个图形处理核心、四个图形处理核心、八个图形处理核心、十六个图形处理核心等。虽然在该示例中CPU302和GPU306被示出为单独的组件,但是将领会的是,在一些示例中,CPU的通用处理核心和GPU的图形处理核心可以被集成在单个组件中。因此,在这些示例中,第一处理资源可以指代通用处理核心,并且第二处理资源可以指代单个组件的图形处理核心。如先前讨论的,图形处理核心可以包括用于执行浮点运算的逻辑和相关联电路。另外,图形处理单元306可以包括多个图形处理核心和相关联的指令执行流水线,使得图形处理单元306可以并行地执行多个操作。并行处理架构的示例包括单指令多数据SIMD处理或多指令多数据MIMD处理架构。在一些示例中,GPU306可以包括多个图形处理核心,其可以执行可以被用来对多个不同的数据源同时执行浮点运算的矢量处理。如示出的,CPU302和GPU306还可以包括高速缓冲存储器310。如将领会的,在CPU302和GPU306中示出的高速缓冲存储器可以是专用存储器即,不共享的,其中这样的高速缓冲存储器310可以包括指令高速缓存、数据高速缓存、和或转换后备缓冲器。另外,CPU302和GPU306可以直接地被连接到共享的高速缓冲存储器312,使得CPU302和GPU可以同时访问共享的高速缓冲存储器312。如将领会的,在一些示例中,CPU302可以在GPU执行机器学习模型的操作的同时提取与机器学习模型的操作相关联的指令和数据。因此,在一些示例中,协调执行机器学习模型可以包括当GPU306执行机器学习模型的操作的同时用CPU302来提取与机器学习模型相对应的指令和或数据。另外,CPU302和GPU306经由存储器总线316和存储器控制器318连接到非易失性存储器314。如将领会的,存储器控制器318可以针对非易失性存储器314促进对数据读取和写入。虽然在该示例中,存储器控制器318被示出为单独的组件,但是将领会的是,在一些示例中,存储器控制器318可以位于非易失性存储器模块上或甚至被集成到另一逻辑组件例如,CPU302和或GPU306中。如示出的,非易失性存储器可以包括机器学习数据结构320,所述机器学习数据结构320是用于CPU302和GPU306的共享的存储器空间。虽然没有示出,但是非易失性存储器314可以具有存储在其中的其它数据结构,其中这样的其它数据结构可以是用于CPU302和GPU306的共享的存储器空间并且或者这样的其它数据结构可以是用于CPU302或GPU306的专用的存储器空间。此外,在一些示例中,CPU302和GPU306可以经由另外的存储器控制器324和存储器总线316连接到另外的存储器资源322例如,RAM、硬盘驱动器等。如将领会的,另外的存储器资源322可以具有用于CPU302和GPU306的其它共享的存储器空间以及用于CPU302或GPU306的专用的存储器空间。如将领会的,CPU302的核心304和GPU306的图形处理核心308可以执行操作以实现指令循环,所述指令循环还可以被称为提取-解码-执行循环。如本文使用的,处理指令可以指代执行对指令的提取、解码以及执行。类似地,执行操作可以指代执行对指令的提取、解码以及执行。例如,图形处理核心308可以被描述为当图形处理核心308对与机器学习模型相对应的指令进行提取、解码以及执行时对数据集执行机器学习模型的操作。图4-7提供了流程图,所述流程图提供了可以由示例性系统和或其处理资源执行以执行示例性过程和方法的示例性操作序列。在一些示例中,包括在流程图中的操作可以以指令的形式体现在存储器资源中例如,图2的示例性机器可读存储介质204,所述指令可以是可由处理资源执行以使系统例如,图1A-B的系统100、图2的系统200、图3的系统300执行与指令相对应的操作的。另外,图4-7中提供的示例可以被体现在系统、机器可读存储介质、过程、和或方法中。在一些示例中,在图4-7的流程图中公开的示例性过程和或方法可以由在系统中实现的一个或多个引擎执行。现在转到图4,该附图提供了示出可以由示例性系统执行的示例性操作序列的流程图400。如示出的,系统可以用第一处理资源来访问存储在非易失性存储器的共享的存储器空间中的机器学习数据结构框402。另外,系统可以用包括至少一个图形处理核心的第二处理资源来访问存储在共享的存储器空间中的机器学习数据结构框404。系统可以用第二处理资源的至少一个图形处理核心来对存储在机器学习数据结构中的数据集执行存储在机器学习数据结构中的至少一个机器学习模型的操作框408。因此,如由图4的示例示出的,机器学习数据结构的共享的存储器空间可以促进由第一处理资源和第二处理资源同时对其进行访问。此外,第二处理资源的至少一个图形处理核心可以被用来执行机器学习模型的操作,与用诸如CPU的核心之类的通用处理核心来对其执行相比,这可以促进改进的处理效率。此外,与将机器学习模型存储在存储位置中并且将这样的机器学习模型加载到易失性存储器以进行处理相比,将机器学习模型存储在非易失性存储器中组合对机器学习模型的共享访问可以促进改进的处理效率。图5提供了示出可以由示例性系统执行的示例性操作序列的流程图450。在该示例中,系统可以用第一处理资源来确定机器学习模型集以针对存储在非易失性存储器中的机器学习数据结构中存储的数据集进行执行框452。在一些示例中,非易失性存储器的机器学习数据结构可以存储多个机器学习模型。在这些示例中,系统可以确定至少一个机器学习模型集以针对要被分析的数据集进行执行。例如,系统可以至少部分基于数据集的数据类型来确定要执行的机器学习模型集。例如,如果数据集对应于多媒体数据例如,视频数据和音频数据,则系统可以选择特定的机器学习模型集。作为另一示例,如果数据集对应于传感器数据例如,测量的温度、测量的电磁辐射强度等,则系统可以选择特定的机器学习模型集。如将领会的,系统可以针对系统可以接收以用于机器学习分析的每种类型的数据来存储至少一个机器学习模型。针对数据集,系统可以用第二处理资源的至少一个图形处理核心对存储在机器学习数据结构中的数据集执行集的每个机器学习模型的操作以针对集的每个机器学习模型来生成相应模型结果框454。在这些示例中,将领会的是,如果机器学习模型集包括一个以上的机器学习模型,则第二处理资源的图形处理核心可以在集的机器学习模型之间切换执行。基于集的每个机器学习模型的相应模型结果,系统可以更新存储在机器学习数据结构中的至少一个机器学习模型框456。因此,在与图5中提供的示例类似的一些示例中,可以基于根据对特定数据集的分析生成的模型结果来更新机器学习模型。如将领会的,如果特定数据集对应于训练数据集,则可以调整一些机器学习模型,使得这样的调整的机器学习模型的参数可以进一步被细化,以促进在机器学习模型的执行中的改进的精确度和效率。图6提供了示出可以由示例性系统执行的操作序列的流程图500。对于用于针对数据集执行的机器学习模型集框502,系统可以用第二处理资源的图形处理核心针对数据集的相应数据子集来执行集的相应机器学习模型,以针对相应数据子集生成模型结果框504。在针对相应数据子集执行相应机器学习模型之后,系统可以用第一处理资源来确定是否还有任何另外的机器学习模型要执行框508。响应于确定要针对相应数据子集执行集的另外的机器学习模型框506的“Y”分支,系统切换到要被执行的集的下一机器学习模型步骤508并且继续执行集的下一机器学习模型作为相应机器学习模型框508。当系统用第一处理资源确定已经对相应数据子集执行了集的全部机器学习模型时框506的“N”分支,系统用第一处理资源确定是否还有任何数据子集要用机器学习模型集来分析框510。如果数据集还有数据的子集,则系统前进以用机器学习模型集分析下一数据子集框512。在一些示例中,系统可以用第一处理资源来处理针对每个相应数据的子集生成的相应模型结果框514。在这些示例中,将领会的是,系统可以包括诸如CPU之类的第一处理资源,以及包括图形处理核心的第二处理资源。因此,对于要执行的机器学习模型集,第一处理资源可以协调对相应数据子集执行集。在这样的示例中,第一处理资源可以促进切换到用第二处理资源的图形处理核心执行集的每个机器学习模型。例如,机器学习模型集包括第一机器学习模型、第二机器学习模型、以及第三机器学习模型。在该示例中,数据集可以包括第一数据子集、第二数据子集、以及第三数据子集。如将领会的,数据集和机器学习模型集可以被存储在非易失性存储器中存储的机器学习数据结构中,其中机器学习数据结构是第一处理资源和第二处理资源的共享的存储器空间。第二处理资源可以包括多个图形处理核心。在该示例中,第一处理资源可以用第二处理资源的图形处理核心来协调执行第一机器学习模型的操作。图形处理核心可以对第一数据子集执行第一机器学习模型的操作,以针对第一数据子集生成第一模型结果。第一数据子集的第一模型结果可以由第二处理资源存储在机器学习数据结构中。在完成执行第一机器学习模型时,第一处理资源可以协调图形处理核心以切换执行第二机器学习模型。第二处理资源的图形处理核心可以对第一数据子集执行第二机器学习模型的操作,以针对第一数据子集生成第二模型结果。第一数据子集的第二模型结果可以由第二处理资源存储在机器学习数据结构中。在完成执行第二机器学习模型时,第一处理资源可以协调切换执行到第三机器学习模型。第二处理资源的图形处理核心可以对第一数据子集执行第三机器学习模型的操作,以针对第一数据子集生成第三模型结果。第一数据子集的第三模型结果可以由第二处理资源存储在机器学习数据结构中。在完成了对第一数据子集执行第三机器学习模型时,第一处理资源可以协调切换到针对第二数据子集执行第一机器学习模型。第二处理资源的图形处理核心可以对第二数据子集执行第一机器学习模型的操作,以针对第二数据子集生成第一模型结果。第二数据子集的第一模型结果可以被存储在机器学习数据结构中。如将领会的,可以针对剩余的机器学习模型和第三数据子集来执行关于示例描述的操作。示例示出了,与其中在机器学习模型之间切换可能需要将每个机器学习模型在执行期间加载到图形处理核心的专用的存储器空间中的系统相比,机器学习结构的共享的存储器空间促进了在不同机器学习模型的执行之间的切换时的低延迟。另外,因为非易失性存储器可以具有足够高的读写速度以促进直接在非易失性存储器例如,存储类存储器中处理指令和数据,因此与可以将每个模型顺序地加载到卸载出易失性存储器以用于执行的系统相比,示例可以减少与在机器学习模型之间切换以用于执行相关联的时间。此外,因为非易失性存储器跨电源循环保持数据,因此机器学习模型和相关联的参数可以被存储在非易失性存储器中。因此,在一些示例中,与其中每个模型被存储在具有不支持对数据和指令的直接处理的读写速度的存储存储器中的系统相比,对机器学习模型的访问和执行的速度可以被提高。在这样的系统中,每个模型被加载到诸如RAM之类的可以由CPU直接访问的存储器中,并且在加载到可由CPU访问的存储器之后,模型可以被加载到图形处理核心可以访问的专用存储器。因此,如将领会的,高速访问非易失性存储器中的机器学习数据结构的直接的和共享的可访问性减少了与执行机器学习模型相关联的加载和访问时间。在其中可以在多个机器学习模型之间切换的示例中,高速访问非易失性存储器中的机器学习数据结构的直接的和共享的可访问性还可以减少与机器学习模型之间的切换相关联的时间。转而可以减少与执行机器学习模型相关联的电力消耗。如将领会的,减少的处理时间和增加的处理效率可以促进用机器学习模型处理实时数据,其中还可以同时处理来自这样的处理的模型结果。图7提供了示出可以由示例性系统执行的操作序列的流程图550。在该示例中,系统可以将实时数据流存储在系统的非易失性存储器的机器学习数据结构中框552。在该示例中,机器学习数据结构可以是用于第一处理资源和第二处理资源的共享的存储器空间,其中第二处理资源可以包括至少一个图形处理核心。此外,第一处理资源和第二处理资源可以用非易失性存储器来直接地处理指令和数据。例如,非易失性存储器可以是存储类存储器非易失性存储器。另外,将领会的是,在系统执行本文描述的另外的操作的同时,第一处理资源继续将实时数据流存储在机器学习数据结构中。在该示例中,系统用第二处理资源的图形处理核心来对数据流的相应时间片执行的机器学习模型集的第一机器学习模型的操作,以针对相应时间片生成第一模型结果框554。如先前讨论的,在用第一处理资源存储实时数据流的同时,机器学习模型的操作可以由第二处理资源的图形处理核心来执行。当完成对数据流的相应时间片执行第一机器学习模型时,系统可以用第一处理资源来协调切换到第二机器学习模型以供执行框556。系统用第二处理资源的图形处理核心来对数据流的相应时间片执行集的第二机器学习模型的操作,以针对数据的相应时间片生成第二模型结果框558。在该示例中,系统可以继续用第一和第二机器学习模型来处理实时数据。因此,在对数据流的相应时间片执行第二机器学习模型的操作之后,系统切换到下一相应时间片框560,并且系统针对数据流的下一相应时间片重复关于框554-558描述的操作。因此,如该示例中示出的,第一处理资源和第二处理资源可以同时访问机器学习数据结构的共享的存储器空间。如示出的,在第二处理资源用机器学习模型集处理实时数据流的同时,第一处理资源可以将实时数据流的数据写入机器学习数据结构。在与图7示出的示例类似的示例中,将领会的是,系统可以至少部分基于针对数据流的时间片生成的模型结果来执行另外的操作。例如,可以用其处理实时数据流的机器学习模型可以对应于实时视频流中的对象识别。在这样的示例中,基于模型结果,系统可以至少部分基于模型结果来输出实时视频流。例如,机器学习模型可以对应于面部识别和或对实时视频流的分析。在这样的示例中,系统可以基于模型结果在输出期间修改实时视频流,使得在输出期间面部可以被突出显示。在另一示例中,系统可以基于模型结果来控制输入外围设备。例如,系统可以使连接的视频采集设备至少部分基于在实时视频流中辨识的对象的移动而移动。作为另一示例,系统可以是可移动设备,并且可移动设备可以至少部分基于模型结果来驱动马达以控制设备的移动。因此,被实现为存储在非暂时性机器可读存储介质上的可执行指令的系统、过程、方法、和或计算机程序产品的本文描述的示例可以用机器学习模型来促进对数据的处理。在本文描述的示例中,机器学习数据结构可以被实现在非易失性存储器中,其中非易失性存储器可以具有支持对其中的指令和数据的直接处理的访问速度,并且机器学习数据结构可以是用于第一的处理资源例如,CPU和具有至少一个图形处理核心例如,GPU的第二处理资源的共享的存储器空间。在其中机器学习模型被存储和执行于直接在非易失性存储器中的共享的存储器空间中的示例中,可以减少与加载和切换执行机器学习模型相关联的处理低效率。此外,与用通用处理核心执行相比,用图形处理核心在非易失性存储器中直接执行机器学习模型可以提高与执行机器学习模型相关联的处理速度。此外,在共享的存储器空间中直接执行机器学习模型可以改进不同处理资源例如,第一处理资源和第二处理资源之间的处理一致性,使得可以减少处理时间。另外,与在其中机器学习模型从存储装置加载到主存储器例如,易失性RAM中并且然后从主存储器加载到专用存储器的系统相比,在较低电力处理系统中,在非易失性存储器的共享的存储器空间中用机器学习模型来对数据直接处理可以降低电力消耗。另外,虽然本文描述了各种示例,但是针对由此预期的各种示例,可以组合和或移除元素和或元素的组合。例如,本文在图4-7的流程图中提供的示例性操作可以顺序地、同时地、或以不同的次序执行。此外,可以将流程图的一些示例性操作添加到其它流程图,并且或者可以从流程图中移除一些示例性操作。此外,在一些示例中,图1A-3的示例性系统的各种组件可以被移除,并且或者其它组件可以被添加。类似地,在一些示例中,图2的示例性存储器和或机器可读存储介质的各种指令可以被移除,并且或者其它指令例如,对应于图4-7的示例性操作的指令可以被添加。已经呈现了前面的描述以示出和描述所描述的原理的示例。该描述并不旨在是穷尽的或将示例限于所公开的任何确切的形式。根据该描述,许多修改和变型是可能的。

权利要求:1.一种系统,包括:非易失性存储器,其用于存储包括至少一个机器学习模型的机器学习数据结构;第一处理资源,其耦合到所述非易失性存储器以访问所述机器学习数据结构;第二处理资源,其包括至少一个图形处理核心,所述第二处理资源耦合到所述非易失性存储器以访问所述机器学习数据结构,以使得所述机器学习数据结构是所述第一处理资源和所述第二处理资源的共享的存储器空间。2.根据权利要求1所述的系统,还包括处理引擎,所述处理引擎用于:用所述第一处理资源来协调所述至少一个机器学习模型的执行;以及用所述第二处理资源的所述至少一个图形处理核心来执行所述至少一个机器学习模型的操作。3.根据权利要求1所述的系统,还包括:实时数据输入,其耦合到所述第一处理资源;以及处理引擎,其用于:用所述第一处理资源来将从所述实时数据输入接收的实时数据流存储在所述非易失性存储器的所述机器学习数据结构中;以及用所述至少一个图形处理核心来对所述实时数据流的子集执行所述至少一个机器学习模型的操作,以针对所述实时数据流生成模型结果。4.根据权利要求3所述的系统,其中,所述实时数据流是实时视频数据流,所述实时数据流的所述子集对应于所述实时视频数据流的时间片,并且所述至少一个机器学习模型包括对象识别机器学习模型。5.根据权利要求1所述的系统,其中,所述机器学习数据结构包括至少两个机器学习模型,并且所述系统还包括处理引擎,所述处理引擎用于:用所述第一处理资源来在具有所述至少一个图形处理核心的所述第二处理资源上协调所述至少两个机器学习模型的执行和切换。6.根据权利要求1所述的系统,其中,所述机器学习数据结构用于存储机器学习模型集,并且所述系统还包括处理引擎,所述处理引擎用于:用所述第一处理资源来将实时数据流存储在所述机器学习数据结构中;用所述第一处理资源并且根据所述机器学习模型集来至少部分基于与所述实时数据相关联的数据类型来至少确定要执行的第一机器学习模型和第二机器学习模型;针对所述实时数据的每个相应子集并且在将所述实时数据存储在所述机器学习结构中的同时,执行以下操作:用所述第一处理资源来协调针对所述实时数据的所述相应子集的所述第一机器学习模型的执行,用所述第二处理资源的所述至少一个图形处理核心来对所述实时数据的所述相应子集执行所述第一机器学习模型的操作,以针对所述实时数据的所述相应子集生成相应第一模型结果,在执行所述第一机器学习模型之后,协调切换到所述第二机器学习模型的执行,以及用所述第二处理资源的所述至少一个图形处理核心来对所述实时数据的所述相应子集执行所述第二机器学习模型的操作,以针对所述实时数据的所述相应子集生成相应第二模型结果。7.根据权利要求6所述的系统,其中,所述处理引擎还用于:用所述第一处理资源来处理对应于所述实时数据的每个相应子集的所述相应第一模型结果和所述第二模型结果。8.根据权利要求1所述的系统,其中,所述机器学习数据结构用于存储机器学习数据索引,所述第一处理资源用于至少部分基于所述机器学习数据索引来访问所述机器学习数据结构,并且所述第二处理资源用于至少部分基于所述机器学习数据索引来访问所述机器学习数据结构。9.一种方法,包括:用耦合到非易失性存储器的第一处理资源来访问存储在所述非易失性存储器的共享的存储器空间中的机器学习数据结构;用包括耦合到所述非易失性存储器的至少一个图形处理核心的第二处理资源来访问所述机器学习数据结构;以及用所述第二处理资源的所述至少一个图形处理核心来对存储在所述机器学习数据结构中的数据集执行存储在所述机器学习数据结构中的至少两个机器学习模型的操作。10.根据权利要求9所述的方法,其中,执行所述至少两个机器学习模型的所述操作包括:对所述数据集执行第一机器学习模型的操作,以生成第一模型结果;以及在执行所述第一机器学习模型的操作之后,切换到对所述数据集执行第二机器学习模型的操作,以生成第二模型结果。11.根据权利要求10所述的方法,还包括:至少部分基于所述第一模型结果来更新所述第一机器学习模型;至少部分基于所述第二模型结果来更新所述第二机器学习模型;以及在更新所述第一机器学习模型和所述第二机器学习模型之后,对所述数据集执行所述第一机器学习模型和所述第二机器学习模型的所述操作,以生成更新的第一模型结果和更新的第二模型结果。12.根据权利要求9所述的方法,其中,所述数据集是实时数据流,用所述第一处理资源来访问所述机器学习数据结构包括:用所述第一处理资源来将所述实时数据流存储在所述机器学习数据结构中,以及存储在所述实时数据流上的所述至少两个机器学习模型的所述操作是在用所述第一处理资源来将所述实时数据流存储在所述机器学习数据结构中的同时用所述至少一个图形处理核心来执行的。13.根据权利要求10所述的方法,其中,所述机器学习数据结构存储机器学习模型集,并且所述方法还包括:至少部分基于所述数据集的数据类型来确定要对所述数据集执行的所述至少两个机器学习模型。14.一种非暂时性机器可读存储介质,其包括能够由系统的处理资源执行以使所述系统执行以下操作的指令:用所述系统的第一处理资源来访问存储在所述系统的非易失性存储器的共享的存储器空间中的机器学习数据结构;用所述第一处理资源来确定要针对存储在所述机器学习数据结构中的数据集执行的存储在所述机器学习数据结构中的机器学习模型集;用包括至少一个图形处理核心的所述系统的第二处理资源来访问所述机器学习数据结构;以及用所述第二处理资源的所述至少一个图形处理核心来对所述数据集执行所述机器学习模型集的所述操作,以针对所述机器学习模型集的每个机器学习模型生成模型结果。15.根据权利要求14所述的非暂时性机器可读存储介质,其中,用于用所述至少一个图形处理核心来对所述数据集执行所述机器学习模型集的所述操作的所述指令包括用于使所述系统执行以下操作的指令:针对所述数据集的每个数据子集并且在执行所述集的相应机器学习模型的所述操作之后,切换到用第二处理单元的所述至少一个图形处理核心来执行所述集的下一相应机器学习模型的所述操作。16.根据权利要求14所述的非暂时性机器可读存储介质,其中,所述数据集是实时数据流,并且所述机器可读存储介质还包括用于使所述系统执行以下操作的指令:用所述第一处理资源将所述实时数据流存储在所述非易失性存储器的所述机器学习数据结构中,其中,所述系统用于在将所述实时数据流存储在所述机器学习数据结构中的同时用所述第二处理单元的所述至少一个图形处理核心来对所述实时数据流执行所述机器学习模型集的所述操作。

百度查询: 惠普发展公司,有限责任合伙企业 共享的机器学习数据结构

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。