CN110070176A - 离线模型的处理方法、离线模型的处理装置及相关产品 - Google Patents

离线模型的处理方法、离线模型的处理装置及相关产品 Download PDF

Info

Publication number
CN110070176A
CN110070176A CN201910316537.1A CN201910316537A CN110070176A CN 110070176 A CN110070176 A CN 110070176A CN 201910316537 A CN201910316537 A CN 201910316537A CN 110070176 A CN110070176 A CN 110070176A
Authority
CN
China
Prior art keywords
information
model
version information
line model
version
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
CN201910316537.1A
Other languages
English (en)
Inventor
不公告发明人
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.)
Cambricon Technologies Corp Ltd
Beijing Zhongke Cambrian Technology Co Ltd
Original Assignee
Beijing Zhongke Cambrian Technology Co Ltd
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 Beijing Zhongke Cambrian Technology Co Ltd filed Critical Beijing Zhongke Cambrian Technology Co Ltd
Priority to CN201910316537.1A priority Critical patent/CN110070176A/zh
Publication of CN110070176A publication Critical patent/CN110070176A/zh
Priority to US17/440,529 priority patent/US11983535B2/en
Priority to PCT/CN2020/080447 priority patent/WO2020192587A1/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种离线模型的处理方法、离线模型的处理装置及相关产品,其中,相关产品包括组合处理装置,所述组合处理装置包括该离线模型的处理装置,通用互联接口和其它处理装置;所述离线模型的处理装置与所述其它处理装置进行交互,共同完成用户指定的计算操作。本申请实施例可以根据运行离线模型的运行时库的不同版本,生成与之对应的离线模型,可以提高所生成的离线模型的适用性。

Description

离线模型的处理方法、离线模型的处理装置及相关产品
技术领域
本申请涉及信息处理技术领域,具体涉及一种网络离线模型的处理方法、离线模型的处理装置及相关产品。
背景技术
随着信息技术的不断发展,电子设备(例如:手机、平板等)中包括可运行人工智能应用的人工智能处理装置。人工智能处理装置中可以加载神经网络对应的离线模型,通过运行离线模型实现不同的神经网络任务。人工智能处理装置自身的运行环境的不同,例如所加载的运行时库的版本不同,导致人工智能处理装置只能运行对应版本的离线模型。若人工智能处理装置不能及时更新运行时库,将无法运行较高版本的离线模型。
发明内容
本申请实施例提供了一种网络离线模型的处理方法、离线模型的处理装置及相关产品,可以根据运行离线模型的运行时库的不同版本,生成与之对应的离线模型,可以提高所生成的离线模型的适用性。
第一方面,本申请实施例提供了一种网络离线模型的处理方法,其中:
获取运行离线模型的运行时库的版本信息,以及所述离线模型的模型信息;
根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型。
结合本发明实施例第一方面,在本发明实施例第一方面的第一种可能的实现方式中,所述机器学习库中包括接口函数,所述接口函数用于调用不同版本信息对应的功能集合,所述根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型,包括:
通过所述接口函数调用所述机器学习库中与所述版本信息对应的功能集合;
根据所述版本信息对应的功能集合和所述模型信息,生成与所述版本信息对应的离线模型。
结合本发明实施例第一方面,在本发明实施例第一方面的第二种可能的实现方式中,所述机器学习库中包括环境变量,所述环境变量用于调用不同版本信息对应的功能集合,所述调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型,包括:
通过所述环境变量调用所述机器学习库中与所述版本信息对应的功能集合;
根据所述版本信息对应的功能集合和所述模型信息,生成与所述版本信息对应的离线模型。
结合本发明实施例第一方面,在本发明实施例第一方面的第三种可能的实现方式中,所述方法还包括:
当不给出运行离线模型的运行时库的版本信息时,根据离线模型的模型信息,调用机器学习库中与运行时库的最新版本信息对应的功能集合,生成与运行时库的最新版本信息对应的离线模型。
结合本发明实施例第一方面,在本发明实施例第一方面的第四种可能的实现方式中,所述模型信息包括:模型结构信息、权值数据、输入输出数据。
结合本发明实施例第一方面,在本发明实施例第一方面的第五种可能的实现方式中,所述功能集合包括:通用算子集合、功能算子集合。
结合本发明实施例第一方面,在本发明实施例第一方面的第六种可能的实现方式中,所述方法还包括:
基于所述版本信息对应的运行时库,运行所述离线模型。
第二方面,本申请实施例提供一种离线模型的处理装置,其中:
获取单元,用于获取运行离线模型的运行时库的版本信息,以及所述离线模型的模型信息;
生成单元,用于根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型。
结合本发明实施例第二方面,在本发明实施例第二方面的第一种可能的实现方式中,所述机器学习库中包括接口函数,所述接口函数用于调用不同版本信息对应的功能集合,在所述根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型方面,所述生成单元,具体用于通过所述接口函数调用所述机器学习库中与所述版本信息对应的功能集合;根据所述版本信息对应的功能集合和所述模型信息,生成与所述版本信息对应的离线模型。
结合本发明实施例第二方面,在本发明实施例第二方面的第二种可能的实现方式中,在所述根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型方面,所述生成单元,具体用于通过所述环境变量调用所述机器学习库中与所述版本信息对应的功能集合;根据所述版本信息对应的功能集合和所述模型信息,生成与所述版本信息对应的离线模型。
结合本发明实施例第二方面,在本发明实施例第二方面的第三种可能的实现方式中,所述生成单元,还用于当不给出运行离线模型的运行时库的版本信息时,根据离线模型的模型信息,调用机器学习库中与运行时库的最新版本信息对应的功能集合,生成与运行时库的最新版本信息对应的离线模型。
结合本发明实施例第二方面,在本发明实施例第二方面的第四种可能的实现方式中,所述模型信息包括:模型结构信息、权值数据、输入输出数据。
结合本发明实施例第二方面,在本发明实施例第二方面的第五种可能的实现方式中,所述功能集合包括:通用算子集合、功能算子集合。
结合本发明实施例第二方面,在本发明实施例第二方面的第六种可能的实现方式中,所述装置还包括:
运行单元,用于基于所述版本信息对应的运行时库,运行所述离线模型。
第三方面,本申请实施例提供一种人工智能处理装置,包括处理器、存储器、通信接口以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置由所述处理器执行,所述程序包括用于执行如第一方面所述的方法。
第四方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的方法。
第五方面,本申请实施例提供一种组合处理装置,其特征在于,所述组合处理装置包括如第二方面所述的离线模型的处理装置,通用互联接口和其它处理装置;
所述离线模型的处理装置与所述其它处理装置进行交互,共同完成用户指定的计算操作。
可以看出,在本申请实施例中,获取运行离线模型的运行时库的版本信息,以及所述离线模型的模型信息,然后根据所述模型信息和所述版本信息调用机器学习库中与所述版本信息对应的功能集合生成与所述版本信息对应的离线模型。如此,本申请实施例可以根据运行离线模型的运行时库的不同版本,生成与之对应的离线模型,可以提高所生成的离线模型的适用性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种离线模型的处理方法的流程示意图;
图2为本申请实施例提供的另一种离线模型的处理方法的流程示意图;
图3为本申请实施例提供的一种离线模型的处理装置的结构示意图;
图4为本申请实施例提供的一种人工智能处理装置的结构示意图;
图5为本申请实施例提供的一种组合处理装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结果或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本申请中的人工智能处理装置可以包括服务器、智能手机(如Android手机、iOS手机、Windows Phone手机等)、平板电脑、掌上电脑、台式电脑、笔记本电脑、移动互联网设备MID(Mobile Internet Devices,MID)或穿戴式设备等,上述电子设备仅是举例,而非穷举,包含但不限于上述人工智能处理装置。
人工智能处理装置的处理器可包括通用处理器和人工智能处理器。
其中,通用处理器中可以包括中央处理单元CPU(Central Processing Unit,CPU)、图形处理单元GPU(Graphics Processing Unit,GPU)和/或图像处理单元IPU(ImageProcessing Unit,IPU)中的一种或几种的组合。
人工智能处理器包括机器学习处理器单元MLU(Machine Learning ProcessingUnit,MLU),其中,人工智能处理器可由多个MLU集成,组成为一个具有多核的人工智能处理器。
下面对本申请实施例提供的离线模型的处理方法的具体流程进一步进行说明。
请参阅图1,图1为本申请实施例提供的一种离线模型的处理方法的流程示意图,该方法应用于人工智能处理装置。具体的,该方法包括如步骤S101~S102中所示的内容,其中:
步骤S101、获取运行离线模型的运行时库的版本信息,以及所述离线模型的模型信息。
在本申请中,离线模型包括编译完成的二进制机器指令,可在人工智能处理器上直接运行。该离线模型可包括模型结构信息、权值数据、输入输出数据,该离线模型也可包括离线模型的版本信息、机器学习处理指令的版本信息等模型信息,在此不做限定。
其中,模型结构信息可以包括神经网络模型对应的层结构。例如,该离线模型中包含卷积层、归一化层、缩放层和全连接层。
权值数据包括各个层对应的权值。
输入输出数据可包括输入输出数据规模,例如,图像数据的输入尺寸为50mm*50mm,像素值范围为(-1024,3071)。该输入输出数据还可包括输入输出数量信息,即定义几个输入数据,几个输出数据等。
在本申请中,离线模型可以通过机器学习库(Machine learning Library)和运行时库(Runtime Library)生成。具体为机器学习库和运行时库把执行神经网络模型计算所使用的数据和指令等一系列数据打包生成离线模型。
其中,机器学习库还用于在人工智能处理器上加速各种机器学习或者深度学习算法。该机器学习库提供了一套高效、通用、灵活的、可扩展的编程接口,其上层的机器学习应用可以直接采用各种编程框架(例如TensorFlow、Caffe、MXNet等)的编程接口,也可以使用机器学习库提供的接口直接编程。
在本申请中,运行时库还用于完成通用处理器和人工智能处理器之间的交互。该运行时库提供了一套面向人工智能处理器的接口,本申请对于运行时库的接口也不做限定,例如,加载离线模型的接口,调用该接口可使该人工智能处理器中加载离线模型等。
需要说明的是,运行时库可脱离机器学习库,单独使用离线模型文件完成神经网络的计算。以人工智能处理装置中的手机为例,该手机仅包括运行时库,在手机下载人工智能应用时,通过该手机中的运行时库运行该人工智能应用中包括的离线模型。而该人工智能应用中的离线模型是通过开发端的人工智能处理装置中的运行时库和机器学习库生成,再通过运行时库将该离线模型打包于该人工智能应用中。
在本申请中,运行离线模型的运行时库的版本信息为待运行该离线模型的其它人工智能处理装置的运行时库的版本信息。
步骤S102、根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型。
在本申请中,功能集合可以包括不同的运算处理功能集合。
在一种可能的示例中,所述功能集合包括通用算子集合和功能算子集合。
其中,通用算子集合包括离线模型中各个版本均需使用的运算处理功能,例如:加法、乘法等较常用运算的处理功能。功能算子集合包括离线模型中指定版本需使用的运算处理单元,例如:卷积、向量内积、排序等不太常用运算的处理单元。
在本申请中,可预先定义不同版本信息对应的功能集合,例如:版本信息为1对应的功能集合为第一功能集合,版本信息为2对应的功能集合为第二功能集合,版本信息为3对应的功能集合为第三功能集合。若版本信息为2,则可调用机器库中的第二功能集合,如此,该第二功能集合结合离线模型的模型信息升级可生成该版本信息对应的离线模型,从而提高了离线模型的生成效率。
本申请对于生成与版本信息对应的离线模型的方法不做限定,在一种可能的示例中,所述根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型,包括:通过接口函数调用所述机器学习库中与所述版本信息对应的功能集合;根据所述版本信息对应的功能集合和所述模型信息,生成与所述版本信息对应的离线模型。
其中,机器学习库中包括接口函数,所述接口函数用于调用不同版本信息对应的功能集合。
举例来说,假设版本信息为1对应的功能集合为第一功能集合,版本信息为2对应的功能集合为第二功能集合,版本信息为3对应的功能集合为第三功能集合。若版本信息为2,则通过接口函数(例如:cnrtGetModelLevelFromFile())调用第二功能集合,从而可基于该第二功能集合和离线模型的模型信息生成该版本信息对应的离线模型。可以理解,直接通过接口函数调用运行离线模型的运行时库的版本信息对应的功能集合,可提高生成离线模型的效率。
在另一种可能的示例中,所述调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型,包括:通过环境变量调用所述机器学习库中与所述版本信息对应的功能集合;根据所述版本信息对应的功能集合和所述模型信息,生成与所述版本信息对应的离线模型。
其中,机器学习库中包括环境变量(environment variables),所述环境变量用于调用不同版本信息对应的功能集合。
也就是说,通过环境变量调用各个版本信息对应的功能集合,如此,可通过接口函数直接调用目标版本对应的功能集合,以提高生成离线模型的效率。
举例来说,假设版本信息为1对应的功能集合为第一功能集合,版本信息为2对应的功能集合为第二功能集合,版本信息为3对应的功能集合为第三功能集合,其中环境变量对应版本信息。若版本信息为2,则可通过环境变量(例如:CNML_MODEL_LEVEL=2)调用第二功能集合,从而可基于该第二功能集合和离线模型的模型信息生成与该版本信息对应的离线模型。可以理解,直接通过环境变量调用运行离线模型的运行时库的版本信息对应的功能集合,可提高生成离线模型的效率。
在如图1所示的离线模型的处理方法中,在获取离线模型的模型信息和待生成的离线模型的版本信息之后,可根据该模型信息和该版本信息调用机器学习库中与该版本信息对应的功能集合生成与该版本信息对应的离线模型。如此,本申请实施例可以根据运行离线模型的运行时库的不同版本,生成与之对应的离线模型,可以提高所生成的离线模型的适用性。
举例来说,假设开发者的人工智能处理装置中机器学习库的版本信息为8,运行时库的版本信息为5,而客户端中运行时库的版本信息为2。可见,客户端对应的运行时库的版本低于人工智能处理装置的版本,则客户端无法直接运行与该人工智能处理装置中运行时库的最新版本信息对应的离线模型。在实施本实施例之后,可生成与客户端中的运行时库的版本信息对应的离线模型。由于客户端中的运行时库的版本信息等于该新生成的离线模型的版本信息,则该客户端中的运行时库可运行该新生成的离线模型,可以提高所生成的离线模型的适用性。
在一种可能的示例中,所述方法还包括:基于所述版本信息对应的运行时库,运行所述离线模型。
可以理解,采用该版本信息对应的运行时库运行该离线模型,由于版本信息一致,离线模型可以被正常使用,以完成神经网络异构计算。
参阅图2,图2为本申请实施例提供的另一种离线模型的处理方法的流程示意图,该方法应用于人工智能处理装置,具体的,该方法包括如步骤S201~S202中所示的内容:
步骤S201、当不给出运行离线模型的运行时库的版本信息时,获取所述离线模型的模型信息。
其中,离线模型的模型信息可参照步骤S101的描述,在此不再赘述。
步骤S202、调用机器学习库中与运行时库的最新版本信息对应的功能集合,生成与运行时库的最新版本信息对应的离线模型。
其中,功能集合的描述也可参考步骤S102的描述,在此不再赘述。
在本申请中,运行时库的最新版本信息为当前人工智能处理装置中运行时库的最高版本。对于生成与运行时库的最新版本信息对应的离线模型的方法不做限定,可参照生成与版本信息对应的离线模型的方法,在此也不再赘述。
在如图2所示的离线模型的处理方法中,当未获取运行离线模型的运行时库的版本信息时,直接调用该机器学习库中与运行时库的最新版本信息对应的功能集合生成与该版本信息对应的离线模型。也就是说,在默认情况下,直接生成与最新版本信息的运行时库对应的离线模型,采用最新版本信息对应的离线模型可提高运行效率。
参阅图3,图3示出了上述实施例中所涉及的离线模型的处理装置300的一种可能的功能单元组成框图,离线模型的处理装置300包括:
获取单元301,用于获取运行离线模型的运行时库的版本信息,以及所述离线模型的模型信息;
生成单元302,用于根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型。
在一种可能的示例中,所述机器学习库中包括接口函数,所述接口函数用于调用不同版本信息对应的功能集合,在所述根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型方面,所述生成单元302,具体用于通过所述接口函数调用所述机器学习库中与所述版本信息对应的功能集合;根据所述版本信息对应的功能集合和所述模型信息,生成与所述版本信息对应的离线模型。
在一种可能的示例中,所述机器学习库中包括接口函数,所述接口函数用于调用不同版本信息对应的功能集合,在所述根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型方面,所述生成单元302,具体用于通过所述环境变量调用所述机器学习库中与所述版本信息对应的功能集合;根据所述版本信息对应的功能集合和所述模型信息,生成与所述版本信息对应的离线模型。
在一种可能的示例中,所述生成单元302,还用于当不给出运行离线模型的运行时库的版本信息时,根据离线模型的模型信息,调用机器学习库中与运行时库的最新版本信息对应的功能集合,生成与运行时库的最新版本信息对应的离线模型。
在一种可能的示例中,所述模型信息包括:模型结构信息、权值数据、输入输出数据。
在一种可能的示例中,所述功能集合包括:通用算子集合、功能算子集合。
在一种可能的示例中,所述装置300还包括:
运行单元303,用于基于所述版本信息对应的运行时库,运行所述离线模型。
参阅图4,图4为本申请实施例提供的一种人工智能处理装置的结构示意图,如图4所示,该人工智能处理装置包括处理器、存储器、通信接口以及一个或多个程序。其中,上述处理器包括通用处理器和人工智能处理器。上述一个或多个程序不同于上述一个或多个应用程序,且上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述程序包括用于执行以下步骤的指令:
获取运行离线模型的运行时库的版本信息,以及所述离线模型的模型信息;
根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型。
在一种可能的示例中,所述机器学习库中包括接口函数,所述接口函数用于调用不同版本信息对应的功能集合,在所述根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型方面,上述程序具体用于执行以下步骤的指令:
通过所述接口函数调用所述机器学习库中与所述版本信息对应的功能集合;
根据所述版本信息对应的功能集合和所述模型信息,生成与所述版本信息对应的离线模型。
在一种可能的示例中,所述机器学习库中包括接口函数,所述接口函数用于调用不同版本信息对应的功能集合,在所述根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型方面,上述程序具体用于执行以下步骤的指令:
通过所述环境变量调用所述机器学习库中与所述版本信息对应的功能集合;
根据所述版本信息对应的功能集合和所述模型信息,生成与所述版本信息对应的离线模型。
在一种可能的示例中,上述程序还用于执行以下步骤的指令:
当不给出运行离线模型的运行时库的版本信息时,根据离线模型的模型信息,调用机器学习库中与运行时库的最新版本信息对应的功能集合,生成与运行时库的最新版本信息对应的离线模型。
在一种可能的示例中,所述模型信息包括:模型结构信息、权值数据、输入输出数据。
在一种可能的示例中,所述功能集合包括:通用算子集合、功能算子集合。
在一种可能的示例中,上述程序还用于执行以下步骤的指令:
基于所述版本信息对应的运行时库,运行所述离线模型。
本申请实施例还提供一种计算机可读存储介质,其中,该计算机可读存储介质存储用于存储计算机程序,其中,该计算机程序被处理器执行,以实现如上述方法实施例中记载的任何一种离线模型的处理方法的部分或全部步骤。
本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序可操作来使计算机执行如上述方法实施例中记载的任何一种离线模型的处理方法的部分或全部步骤。
本申请实施例还提供一种组合处理装置,其包括上述的离线模型的处理装置,通用互联接口和其它处理装置。所述离线模型的处理装置与所述其它处理装置进行交互,共同完成用户指定的操作。图5为组合处理装置的示意图。
其中,其它处理装置包括CPU、GPU、神经网络处理器等通用/专用处理器中的一种或以上的处理器类型。其它处理装置所包括的处理器数量不做限制。其它处理装置作为离线模型的处理装置与外部数据和控制的接口,包括数据搬运,完成对本离线模型的处理装置的开启、停止等基本控制;其它处理装置也可以和离线模型的处理装置协作共同完成运算任务。
通用互联接口,用于在所述离线模型的处理装置与其它处理装置间传输数据和控制指令。该离线模型的处理装置从其它处理装置中获取所需的输入数据,写入离线模型的处理装置片上的存储装置;可以从其它处理装置中获取控制指令,写入离线模型的处理装置片上的控制缓存;也可以读取离线模型的处理装置的存储模块中的数据并传输给其它处理装置。
在一种可能的示例中,如图5所示,该组合处理装置还可以包括存储装置,存储装置分别与所述离线模型的处理装置和所述其它处理装置连接。存储装置用于保存在所述离线模型的处理装置和所述其它处理装置的数据,尤其适用于所需要运算的数据在本离线模型的处理装置或其它处理装置的内部存储中无法全部保存的数据。
该组合处理装置可以作为手机、机器人、无人机、视频监控设备等设备的片上系统,有效降低控制部分的核心面积,提高处理速度,降低整体功耗。此情况时,该组合处理装置的通用互联接口与设备的某些部件相连接。某些部件譬如摄像头,显示器,鼠标,键盘,网卡,无线保真(Wireless-Fidelity,Wi-Fi)接口。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件程序模块的形式实现。
所述集成的单元如果以软件程序模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器、随机存取器、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种离线模型的处理方法,其特征在于,包括:
获取运行离线模型的运行时库的版本信息,以及所述离线模型的模型信息;
根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型。
2.根据权利要求1所述的方法,其特征在于,所述机器学习库中包括接口函数,所述接口函数用于调用不同版本信息对应的功能集合,所述根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型,包括:
通过所述接口函数调用所述机器学习库中与所述版本信息对应的功能集合;
根据所述版本信息对应的功能集合和所述模型信息,生成与所述版本信息对应的离线模型。
3.根据权利要求1所述的方法,其特征在于,所述机器学习库中包括环境变量,所述环境变量用于调用不同版本信息对应的功能集合,所述调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型,包括:
通过所述环境变量调用所述机器学习库中与所述版本信息对应的功能集合;
根据所述版本信息对应的功能集合和所述模型信息,生成与所述版本信息对应的离线模型。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当不给出运行离线模型的运行时库的版本信息时,根据离线模型的模型信息,调用机器学习库中与运行时库的最新版本信息对应的功能集合,生成与运行时库的最新版本信息对应的离线模型。
5.根据权利要求1所述的方法,其特征在于,所述模型信息包括:模型结构信息、权值数据、输入输出数据。
6.根据权利要求1所述的方法,其特征在于,所述功能集合包括:通用算子集合、功能算子集合。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
基于所述版本信息对应的运行时库,运行所述离线模型。
8.一种离线模型的处理装置,其特征在于,包括:
获取单元,用于获取运行离线模型的运行时库的版本信息,以及所述离线模型的模型信息;
生成单元,用于根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型。
9.根据权利要求8所述的装置,其特征在于,所述机器学习库中包括接口函数,所述接口函数用于调用不同版本信息对应的功能集合,在所述根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型方面,所述生成单元,具体用于通过所述接口函数调用所述机器学习库中与所述版本信息对应的功能集合;根据所述版本信息对应的功能集合和所述模型信息,生成与所述版本信息对应的离线模型。
10.根据权利要求8所述的装置,其特征在于,所述机器学习库中包括环境变量,所述环境变量用于调用不同版本信息对应的功能集合,在所述根据所述模型信息和所述版本信息,调用机器学习库中与所述版本信息对应的功能集合,生成与所述版本信息对应的离线模型方面,所述生成单元,具体用于通过所述环境变量调用所述机器学习库中与所述版本信息对应的功能集合;根据所述版本信息对应的功能集合和所述模型信息,生成与所述版本信息对应的离线模型。
CN201910316537.1A 2019-03-22 2019-04-18 离线模型的处理方法、离线模型的处理装置及相关产品 Pending CN110070176A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201910316537.1A CN110070176A (zh) 2019-04-18 2019-04-18 离线模型的处理方法、离线模型的处理装置及相关产品
US17/440,529 US11983535B2 (en) 2019-03-22 2020-03-20 Artificial intelligence computing device and related product
PCT/CN2020/080447 WO2020192587A1 (zh) 2019-03-22 2020-03-20 人工智能计算装置及相关产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910316537.1A CN110070176A (zh) 2019-04-18 2019-04-18 离线模型的处理方法、离线模型的处理装置及相关产品

Publications (1)

Publication Number Publication Date
CN110070176A true CN110070176A (zh) 2019-07-30

Family

ID=67368098

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910316537.1A Pending CN110070176A (zh) 2019-03-22 2019-04-18 离线模型的处理方法、离线模型的处理装置及相关产品

Country Status (1)

Country Link
CN (1) CN110070176A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110766145A (zh) * 2018-12-29 2020-02-07 中科寒武纪科技股份有限公司 一种人工智能处理器的学习任务编译方法及相关产品

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060247818A1 (en) * 2001-05-04 2006-11-02 Hasan Talat F Systems and methods for metrology recipe and model generation
CN104866341A (zh) * 2015-05-07 2015-08-26 北京金山安全软件有限公司 一种组件升级方法、装置及终端
CN108734288A (zh) * 2017-04-21 2018-11-02 上海寒武纪信息科技有限公司 一种运算方法及装置
CN108764487A (zh) * 2018-05-29 2018-11-06 北京百度网讯科技有限公司 用于生成模型的方法和装置、用于识别信息的方法和装置
CN108897587A (zh) * 2018-06-22 2018-11-27 北京优特捷信息技术有限公司 可插拔式机器学习算法运行方法、装置及可读存储介质
CN109255234A (zh) * 2018-08-15 2019-01-22 腾讯科技(深圳)有限公司 机器学习模型的处理方法、装置、介质及电子设备
CN109634843A (zh) * 2018-10-31 2019-04-16 中国科学院软件研究所 一种面向ai芯片平台的分布式自动化软件测试方法及平台

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060247818A1 (en) * 2001-05-04 2006-11-02 Hasan Talat F Systems and methods for metrology recipe and model generation
CN104866341A (zh) * 2015-05-07 2015-08-26 北京金山安全软件有限公司 一种组件升级方法、装置及终端
CN108734288A (zh) * 2017-04-21 2018-11-02 上海寒武纪信息科技有限公司 一种运算方法及装置
CN108764487A (zh) * 2018-05-29 2018-11-06 北京百度网讯科技有限公司 用于生成模型的方法和装置、用于识别信息的方法和装置
CN108897587A (zh) * 2018-06-22 2018-11-27 北京优特捷信息技术有限公司 可插拔式机器学习算法运行方法、装置及可读存储介质
CN109255234A (zh) * 2018-08-15 2019-01-22 腾讯科技(深圳)有限公司 机器学习模型的处理方法、装置、介质及电子设备
CN109634843A (zh) * 2018-10-31 2019-04-16 中国科学院软件研究所 一种面向ai芯片平台的分布式自动化软件测试方法及平台

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110766145A (zh) * 2018-12-29 2020-02-07 中科寒武纪科技股份有限公司 一种人工智能处理器的学习任务编译方法及相关产品

Similar Documents

Publication Publication Date Title
US11640528B2 (en) Method, electronic device and computer readable medium for information processing for accelerating neural network training
Paternò et al. End-user development for personalizing applications, things, and robots
CN111260764B (zh) 一种制作动画的方法、装置及存储介质
CN108958729B (zh) 一种数据处理方法、装置及存储介质
CN111190741B (zh) 基于深度学习节点计算的调度方法、设备及存储介质
CN111966361B (zh) 用于确定待部署模型的方法、装置、设备及其存储介质
CN111694617B (zh) 网络离线模型的处理方法、人工智能处理装置及相关产品
US11763146B1 (en) Processing loops in computational graphs
CN109766196A (zh) 一种任务调度方法、装置及设备
CN116467061B (zh) 一种任务执行的方法、装置、存储介质及电子设备
CN104025046A (zh) 利用调回的isa桥接
Ralph et al. Is requirements engineering inherently counterproductive?
EP4222598A1 (en) Optimizing job runtimes via prediction-based token allocation
CN110070176A (zh) 离线模型的处理方法、离线模型的处理装置及相关产品
CN101356503B (zh) 数据处理系统和数据处理方法
CN112764729B (zh) 应用软件开发方法、装置、计算机设备及可读存储介质
CN115373646A (zh) 扩展信息方法、装置和相关产品
CN110287437A (zh) 网页截图方法、装置、存储介质及终端
WO2020192587A1 (zh) 人工智能计算装置及相关产品
CN115762515B (zh) 用于语音识别的神经网络的处理和应用方法、装置及设备
CN107145372A (zh) 信息生成方法和装置
CN110149356A (zh) 一种网络请求异常状态统一处理方法及装置
CN113778458B (zh) 数据处理器功能开发系统、方法及计算设备
CN112256243B (zh) 行为定制方法、装置、设备和存储介质
Acosta et al. Parallel implementations of the particle filter algorithm for android mobile devices

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
CB02 Change of applicant information

Address after: 100000 room 644, No. 6, No. 6, South Road, Beijing Academy of Sciences

Applicant after: Zhongke Cambrian Technology Co., Ltd

Address before: 100000 room 644, No. 6, No. 6, South Road, Beijing Academy of Sciences

Applicant before: Beijing Zhongke Cambrian Technology Co., Ltd.

CB02 Change of applicant information
RJ01 Rejection of invention patent application after publication

Application publication date: 20190730

RJ01 Rejection of invention patent application after publication