CN113689322B - 绘图协议下的人工智能模型业务处理方法、装置及设备 - Google Patents

绘图协议下的人工智能模型业务处理方法、装置及设备 Download PDF

Info

Publication number
CN113689322B
CN113689322B CN202110995308.4A CN202110995308A CN113689322B CN 113689322 B CN113689322 B CN 113689322B CN 202110995308 A CN202110995308 A CN 202110995308A CN 113689322 B CN113689322 B CN 113689322B
Authority
CN
China
Prior art keywords
floating point
data
model
point number
digital floating
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.)
Active
Application number
CN202110995308.4A
Other languages
English (en)
Other versions
CN113689322A (zh
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.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information 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 Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202110995308.4A priority Critical patent/CN113689322B/zh
Publication of CN113689322A publication Critical patent/CN113689322A/zh
Application granted granted Critical
Publication of CN113689322B publication Critical patent/CN113689322B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computational Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Nonlinear Science (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本说明书实施例公开了一种绘图协议下的人工智能模型业务处理方法,包括:获取以第一数位浮点数表示的暂存数据,所述暂存数据是预先在指定的绘图协议下,对人工智能模型提供的多个以第一数位浮点数表示的模型数据进行融合处理得到的,所述融合处理包括第一数位浮点数向位数更小的第二数位浮点数的转换过程;将所述暂存数据转换为多个以第二数位浮点数表示的模型数据;对所述以第二数位浮点数表示的模型数据进行上采样处理,得到多个以第一数位浮点数表示的还原数据;通过在所述指定的绘图协议下利用所述还原数据进行计算,执行所述人工智能模型的推理过程。

Description

绘图协议下的人工智能模型业务处理方法、装置及设备
技术领域
本说明书涉及机器学习技术领域,尤其涉及一种绘图协议下的人工智能模型业务处理方法、装置及设备。
背景技术
人工智能是计算机科学的一个分支,用来生产出一种能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像处理、图像绘制、自然语言处理、图像绘制和专家系统等。人工智能模型即为经过训练得出的成熟模型。
人工智能模型进行业务处理时,为了追求较好的性能,对于带宽资源的需求很大,相应对于设备的要求也较高。基于此,需要性能和适用性更好的人工智能业务处理方案。
发明内容
本说明书一个或多个实施例提供了一种绘图协议下的人工智能模型业务处理方法、装置及设备,用于解决如下技术问题:需要性能和适用性更好的人工智能业务处理方案。
本说明书一个或多个实施例采用下述技术方案:
本说明书一个或多个实施例提供一种绘图协议下的人工智能模型业务处理方法,包括:
获取以第一数位浮点数表示的暂存数据,所述暂存数据是预先在指定的绘图协议下,对人工智能模型提供的多个以第一数位浮点数表示的模型数据进行融合处理得到的,所述融合处理包括第一数位浮点数向位数更小的第二数位浮点数的转换过程;
将所述暂存数据转换为多个以第二数位浮点数表示的模型数据;
对所述以第二数位浮点数表示的模型数据进行上采样处理,得到多个以第一数位浮点数表示的还原数据;
通过在所述指定的绘图协议下利用所述还原数据进行计算,执行所述人工智能模型的推理过程。
本说明书一个或多个实施例还提供一种绘图协议下的人工智能模型业务处理装置,包括:
数据获取单元,获取以第一数位浮点数表示的暂存数据,所述暂存数据是预先在指定的绘图协议下,对人工智能模型提供的多个以第一数位浮点数表示的模型数据进行融合处理得到的,所述融合处理包括第一数位浮点数向位数更小的第二数位浮点数的转换过程;
数据转换单元,将所述暂存数据转换为多个以第二数位浮点数表示的模型数据;
数据还原单元,对所述以第二数位浮点数表示的模型数据进行上采样处理,得到多个以第一数位浮点数表示的还原数据;
模型推理单元,通过在所述指定的绘图协议下利用所述还原数据进行计算,执行所述人工智能模型的推理过程。
本说明书一个或多个实施例还提供一种绘图协议下的人工智能模型业务处理设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
获取以第一数位浮点数表示的暂存数据,所述暂存数据是预先在指定的绘图协议下,对人工智能模型提供的多个以第一数位浮点数表示的模型数据进行融合处理得到的,所述融合处理包括第一数位浮点数向位数更小的第二数位浮点数的转换过程;
将所述暂存数据转换为多个以第二数位浮点数表示的模型数据;
对所述以第二数位浮点数表示的模型数据进行上采样处理,得到多个以第一数位浮点数表示的还原数据;
通过在所述指定的绘图协议下利用所述还原数据进行计算,执行所述人工智能模型的推理过程。
本说明书一个或多个实施例还提供的一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
获取以第一数位浮点数表示的暂存数据,所述暂存数据是预先在指定的绘图协议下,对人工智能模型提供的多个以第一数位浮点数表示的模型数据进行融合处理得到的,所述融合处理包括第一数位浮点数向位数更小的第二数位浮点数的转换过程;
将所述暂存数据转换为多个以第二数位浮点数表示的模型数据;
对所述以第二数位浮点数表示的模型数据进行上采样处理,得到多个以第一数位浮点数表示的还原数据;
通过在所述指定的绘图协议下利用所述还原数据进行计算,执行所述人工智能模型的推理过程。
本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:基于指定的绘图协议的在图像运算方面的优势,进行人工智能模型业务处理,将原本的矩阵运算转换为图像运算,以提高处理效率,在绘图协议下往往主要支持对位数较高的浮点数(称为第一数位浮点数)进行数据的存储与计算,在这种情况下,为了使带宽资源最大化利用,基于包括第一数位浮点数向位数更小的第二数位浮点数的转换过程的融合处理,将原始的模型数据数位降低融合后,暂时存储,在后续需要计算时再将暂存数据进行还原,得到多个以第一数位浮点数表示的还原数据,并由还原数据进行计算,以执行完成人工智能模型的推理过程。由此可以看出,在存储时降数位融合多个模型数据,用以缩减模型数据的数量,同时又不会受到绘图协议对于低数位浮点数可能存在的能力限制,尽可能地提升带宽资源利用率,在计算时尽量保证还原数据的真实,确保计算结果的准确性,以此整体增加人工智能模型业务处理的能力,如此,降低人工智能模型对设备的要求,使得人工智能模型甚至能够部署在用户终端并且高效运行,而不给用户终端带来太大压力。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本说明书一个或多个实施例提供的一种绘图协议下的人工智能模型业务处理方法的流程示意图;
图2示出了本说明书一个或多个实施例的具体实现场景的流程示意图;
图3为本说明书一个或多个实施例提供的一种绘图协议下的人工智能模型业务处理装置的结构示意图;
图4为本说明书一个或多个实施例提供一种绘图协议下的人工智能模型业务处理设备的结构示意图。
具体实施方式
本说明书实施例提供一种绘图协议下的人工智能模型业务处理方法、装置及设备。
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
图1为本说明书一个或多个实施例提供的一种绘图协议下的人工智能模型业务处理方法的流程示意图,该流程可以由绘图领域的计算设备(比如,绘图业务对应的服务器或者智能移动终端)执行,流程中的某些输入参数或者中间结果允许人工干预调节,以帮助提高准确性。
本说明书一个或多个实施例可以是在指定的绘图协议下执行。基于指定的绘图协议的特性,在人工智能模型业务处理时,需要根据第一数位浮点数进行数据的存储与计算,以保证带宽资源的最大化利用。
指定的绘图协议可以为WebGL(Web Graphics Library),WebGL是一种3D绘图协议。WebGL存在texture接口,该texture接口中的每一个像素点包含四个通道,而每个通道最高为32数位,可以在32数位内尽可能存储更多的数据。如果通道内存储数据的精度为float16,那么可以存储两个float16,带宽资源的占用是存储float32数据的2倍,同理uint8的带宽资源的占用是是存储float32数据的4倍。为保证带宽资源的最大化利用,可以将人工智能模型中数据的存储与计算都限定在float32的精度下进行。
WebGL还可以引入OpenGL ES(OpenGL for Embedded Systems)2.0的API,以兼容Web浏览器中渲染高性能的3D图形和2D图形,而无需使用插件。OpenGL ES是OpenGL三维图形API的子集,针对手机、PDA和游戏主机等嵌入式设备而设计。
S102,获取以第一数位浮点数表示的暂存数据,之后执行S104。
在本说明书一个或多个实施例中,上述提到的暂存数据是对人工智能模型提供的多个以第一数位浮点数表示的模型数据进行融合处理得到的。该暂存数据将多个模型数据进行融合,可以缩减模型数据的数量,从而减少带宽资源,增加人工智能模型业务处理的能力,降低人工智能模型对应的用户终端的运行压力。
下面对融合处理的相关内容详细说明:
将对多个以第一数位浮点数表示的模型数据通过绘图协议上传至处理器,在处理器内可以对模型数据进行编码,通过对编码后多个第一数位浮点数表示的模型数据进行降采样处理,以使第一数位浮点数对应转换第二数位浮点数,并将降采样处理后得到的多个第二数位浮点数合并为一个以第一数位浮点数表示的模型数据,作为暂存数据。其中,第一数位大于第二数位。
下面对融合处理的相关内容举例进行说明:
若第一数位为32位,第二数位为16位时,智能移动终端将2个以float32表示的模型数据通过WebGL的接口上传至GPU(用于图像计算的处理器)内,在GPU内对模型数据进行编码,对编码后的2个以float32表示的模型数据进行降采样处理,得到2个以float16表示的模型数据,并将2个以float16表示的模型数据合并为1个以float表示的模型数据,作为暂存数据。由于以float16表示的模型数据所占用的空间只有以float32表示的模型数据一半,所以将以float32表示的模型数据转化为以float16表示的模型数据可以提升一倍的GPU带宽。
对于人工智能模型进行绘图相关的业务处理时,现有技术是通过WASM(WebAssembly)进行混合精度计算。其中,WASM是基于CPU进行计算,由于硬件结构的问题,在模型推理性能不如基于GPU的WebGL,GPU进行并行计算的效果更好,更适合当前场景的计算。
下面对GPU的并行计算进行详细说明:
GPU可以通过计算向量化尽可能地达到并行化的效果。其中,计算向量化是指利用GLSL(OpenGL Shading Language,OpenGL着色语言)的vec2/vec4/matrix数据类型进行计算,比如,一次矩阵乘法:c=a1*b1+a2*b2+a3*b3+a4*b4;可以改为c=dot(vec4(a1,a2,a3,a4),vec4(b1,b2,b3,b4))。
此外,本说明书实施例进行数据的存储过程中,将多个以第一数位浮点数表示的模型数据分别降采样为以第二数位浮点数表示的模型数据,并将多个以第二数位浮点数表示的模型数据合并为一个以第一数位浮点数表示的模型数据,进而使得WebGL同样支持混合精度计算,可以减少模型数据存储时所占的空间,进而提升人工智能模型的执行性能。
关于上边提到的模型数据编码,下面举例进行说明:
若绘图协议为WebGL,处理器为GPU时。由于在GPU内所有的数据存储可以是通过WebGL的Texture接口上传至GPU,而Texture支持的格式为长n*宽m*通道4,若将3*224*224*150的四维矩阵数据存入GPU,需要对该矩阵数据进行编码,并将编码后的矩阵数据存进Texture内。
需要说明的是,多个以第二数位浮点数表示的模型数据合并为一个以第一数位浮点数表示的模型数据时,由于浮点数的自身特性,无法直接进行,需要将多个以第二数位浮点数表示的数据合并为一个中间数据,再由该中间数据转化为以第一数位浮点数表示的模型数据。
下面对于此种情况进行详细说明:
将降采样处理后得到的多个第二数位浮点数打包为一个指定数据类型表示的模型数据,作为第一中转数据,并利用预定浮点数位转换算法,通过针对第一中转数据执行关键操作,得到以第一数位浮点数表示的模型数据,作为暂存数据。打包时具体比如包括:根据降采样处理后得到的多个第二数位浮点数的阶码和/或尾数,对多个第二数位浮点数进行拼接处理,得到一个以关键操作支持的指定数据类型表示的模型数据,如此,一方面处理资源耗费较少,而且也便于后续更高效地进行还原。在拼接时,为了避免对第二数位浮点数进行运算(指定的绘图协议有可能不支持这样的运算),可以将第二数位浮点数转换为字符串(为了避免直接运算,甚至可以考虑通过光学字符识别进行转换),再根据字符串进行拼接。
其中,指定数据类型表示的模型数据支持关键操作,该关键操作可以是根据指定的浮点数位转换算法确定的,并且,该关键操作不支持浮点数据类型,即不支持将多个以第二数位浮点数表示的模型数据转化为一个以第一数位浮点数表示的模型数据,需要中转为指定数据类型表示的模型数据,再由指定数据类型表示的模型数据转化为一个以第一数位浮点数表示的模型数据。
需要说明的,浮点数位转换算法可以为预先设置的算法,用于对第一中转数据执行关键操作,得到以第一数位浮点数表示的模型数据,作为暂存数据。在确定出第一中转数据的具体数据类型时,该算法可以应用现有的函数实现。
进一步的,在WebGL所处的场景下,关键操作可以为位运算,指定数据类型为32位的整型。此时,可以根据WebGL内置的packHalf(n*16)函数执行步骤:对n个以float32表示的模型数据分别进行降采样处理,得到n个float16表示的模型数据,并将n个以float16表示的模型数据打包为一个以int32表示的模型数据;可以根据WebGL内置的intBitsToFloat函数执行步骤:将以int32表示的模型数据转化为以float32表示的模型数据(该数据为暂存数据)。
S104,将暂存数据转换为多个以第二数位浮点数表示的模型数据,之后执行S106。
与上述情况相似,在将一个以第一数位浮点数表示的模型数据(暂存数据)转化为多个以第二数位浮点数表示的模型数据时,由于浮点数的自身特性,同样无法直接进行,需要将以第一数位浮点数表示的数据转化为一个中间数据,再由该中间数据转化为多个以第二数位浮点数表示的模型数据。
S104执行时,可以先将暂存数据转化为以指定数据类型表示的模型数据,作为第二中转数据,并通过预定的浮点数位拆分算法将第二中转数据拆分为多个以第二数位浮点数表示的模型数据。其中,浮点数位拆分算法可以为预先设置的算法,用于将第二中转数据拆分为多个以第二数位浮点数表示的模型数据。在确定出第二中转数据的具体的数据类型时,该算法可以应用现有的函数实现。
进一步的,在WebGL所处的场景下,关键操作为位运算,指定数据类型为32位的整型时,可以根据WebGL内置的floatBitsToUint函数执行步骤:对以float32表示的暂存数据转化为以int32表示的模型数据,作为第二中转数据。
S106,对以第二数位浮点数表示的模型数据进行上采样处理,得到多个以第一数位浮点数表示的还原数据,之后执行S108。
进一步的,在WebGL所处的场景下,关键操作为位运算,指定数据类型为32位的整型时,可以根据WebGL内置的unpackHalf(n*16)函数执行步骤:将以int32表示的暂存数据拆分为n个以float16表示的数据,并将n个以float16表示的数据上采样为n个以float32表示的还原数据。
S108,通过在指定的绘图协议下利用还原数据进行计算,执行人工智能模型的推理过程。
在本说明书一个或多个实施例中,S108执行人工智能模型的推理过程时,可以根据多个以第一数位浮点数表示的还原数据,对应地确定人工智能模型的推理过程所需执行的矩阵运算,并根据指定的绘图协议,为该还原数据生成中间图像,并通过对该中间图像进行图像处理,执行上述的矩阵运算以完成人工智能模型的推理过程。
此外,本说明书一个或多个实施例可以应用于端智能引擎,该端智能引擎可以用于在用户终端上执行人工智能模型。
需要说明的是,端智能(On-Device Machine Learning)是指把机器学习的应用放在端侧实施。此处提到的端侧可以是移动终端,物联网设备等便携设备中。
现有的机器学习,基于模型存储空间、运行要求的限制,大都将人工智能模型放在服务端的。但服务端也存在设备庞大无法移动的缺陷,若多个位置需要用到服务端时,由于服务端无法移动,需要在多个位置部署相同功能的服务端。此时,若是可以将人工智能模型部署在端智能引擎,就可以避免在多个位置部署服务端。
相比服务端部署的方式,端智能引擎拥有更直接的用户特征,同时具备如下优势:
(1)实时性高,端侧可以直接将获取的数据进行处理,可节省数据的网络传输时间;
(2)节省资源,端侧可以针对特定的情况进行部署人工智能模型,可以充分利用端侧算力和存储空间;
(3)隐私性好,产生数据到消费数据都在端侧完成,避免传输引起的隐私泄露风险。
需要说明的是,端智能引擎在利用WebGL做高性能计算时,性能瓶颈在于GPU内存的I/O效率,利用混合精度计算可以极大提高GPU的I/O带宽,从而提升端智能引擎的计算性能。本说明书实施例可以支持混合精度计算,有利于端智能引擎的完好运行。
进一步的,图2示出了本说明书一个或多个实施例的具体实现场景的流程示意图,该实现场景可以为处于WebGL绘图协议下,对2个float32进行存储与计算操作,具体可以为:
数据存储过程执行S202~S208。
S202,将2个以float32表示的模型数据通过WebGL的接口上传至GPU内;
S204,在GPU内,将2个以float32表示的模型数据降采样为2个以float16表示的数据;
S206,将2个以float16表示的模型数据打包为1个以int32表示的数据;
S208,将1个以int32表示的模型数据转化为1个以float32表示的数据进行存储,记为暂存数据。
计算过程执行S210~S216
S210,取出1个以float32表示的暂存数据,并将1个以float32表示的暂存数据转化为1个以int32表示的数据;
S212,将1个以int32表示的数据拆分为2个以float16表示的数据;
S214,将2个以float16表示的数据上采样为2个以float32表示的还原数据;
S214,通过2个以float32表示的还原数据进行计算。
图3为本说明书一个或多个实施例提供的一种绘图协议下的人工智能模型业务处理装置的结构示意图,包括:数据获取单元302、数据转换单元304、数据还原单元306以及模型推理单元308。
数据获取单元302获取以第一数位浮点数表示的暂存数据,暂存数据是预先在指定的绘图协议下,对人工智能模型提供的多个以第一数位浮点数表示的模型数据进行融合处理得到的,融合处理包括第一数位浮点数向位数更小的第二数位浮点数的转换过程;
数据转换单元304将暂存数据转换为多个以第二数位浮点数表示的模型数据;
数据还原单元306对以第二数位浮点数表示的模型数据进行上采样处理,得到多个以第一数位浮点数表示的还原数据;
模型推理单元308通过在指定的绘图协议下利用还原数据进行计算,执行人工智能模型的推理过程。
进一步的,数据获取单元302执行融合处理时,具体包括:
对多个以第一数位浮点数表示的模型数据进行降采样处理,以使第一数位浮点数对应转换第二数位浮点数;
将降采样处理后得到的多个第二数位浮点数合并为一个以第一数位浮点数表示的模型数据,作为暂存数据。
进一步的,数据获取单元302执行将降采样处理后得到的多个第二数位浮点数合并为一个以第一数位浮点数表示的模型数据,作为暂存数据时,具体包括:
将降采样处理后得到的多个第二数位浮点数打包为一个以关键操作支持的指定数据类型表示的模型数据,作为第一中转数据,关键操作是根据指定的浮点数位转换算法确定的,关键操作不支持浮点数据类型;
利用预定浮点数位转换算法,通过针对第一中转数据执行关键操作,得到以第一数位浮点数表示的模型数据,作为暂存数据。
进一步的,数据获取单元302根据所述降采样处理后得到的多个第二数位浮点数的阶码和尾数,对所述多个第二数位浮点数进行拼接处理,得到一个以关键操作支持的指定数据类型表示的模型数据。
进一步的,数据转换单元304执行将暂存数据转换为多个以第二数位浮点数表示的模型数据时,具体包括:
将暂存数据转化为以关键操作支持的指定数据类型表示的模型数据,作为第二中转数据;
将第二中转数据拆分为多个以第二数位浮点数表示的模型数据。
进一步的,模型推理单元308执行通过在指定的绘图协议下利用还原数据进行计算,执行人工智能模型的推理过程时,具体包括:
根据还原数据,对应地确定人工智能模型的推理过程所需执行的矩阵运算;
根据指定的绘图协议,为还原数据生成中间图像,并通过对中间图像进行图像处理,执行矩阵运算以完成推理过程。
进一步的,关键操作包括位运算。
进一步的,第一数位为32位,第二数位为16位,指定数据类型为32位的整型。
进一步的,指定的绘图协议为webGL;
多个以第一数位浮点数表示的模型数据是通过webGL提供的接口上传至GPU,以便在GPU中进行融合处理。
进一步的,应用于端智能引擎,端智能引擎用于在用户终端上执行人工智能模型。
图4为本说明书一个或多个实施例提供一种绘图协议下的人工智能模型业务处理设备的结构示意图,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
获取以第一数位浮点数表示的暂存数据,所述暂存数据是预先在指定的绘图协议下,对人工智能模型提供的多个以第一数位浮点数表示的模型数据进行融合处理得到的,所述融合处理包括第一数位浮点数向位数更小的第二数位浮点数的转换过程;
将所述暂存数据转换为多个以第二数位浮点数表示的模型数据;
对所述以第二数位浮点数表示的模型数据进行上采样处理,得到多个以第一数位浮点数表示的还原数据;
通过在所述指定的绘图协议下利用所述还原数据进行计算,执行所述人工智能模型的推理过程。
本说明书一个或多个实施例还提供的一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
获取以第一数位浮点数表示的暂存数据,所述暂存数据是预先在指定的绘图协议下,对人工智能模型提供的多个以第一数位浮点数表示的模型数据进行融合处理得到的,所述融合处理包括第一数位浮点数向位数更小的第二数位浮点数的转换过程;
将所述暂存数据转换为多个以第二数位浮点数表示的模型数据;
对所述以第二数位浮点数表示的模型数据进行上采样处理,得到多个以第一数位浮点数表示的还原数据;
通过在所述指定的绘图协议下利用所述还原数据进行计算,执行所述人工智能模型的推理过程。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备、非易失性计算机存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
以上所述仅为本说明书的一个或多个实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书的一个或多个实施例可以有各种更改和变化。凡在本说明书的一个或多个实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。

Claims (19)

1.一种绘图协议下的人工智能模型业务处理方法,包括:
获取以第一数位浮点数表示的暂存数据,所述暂存数据是预先在指定的绘图协议下,对人工智能模型提供的多个以第一数位浮点数表示的模型数据进行融合处理得到的,所述融合处理包括第一数位浮点数向位数更小的第二数位浮点数的转换过程;
将所述暂存数据转换为多个以第二数位浮点数表示的模型数据;
对所述以第二数位浮点数表示的模型数据进行上采样处理,得到多个以第一数位浮点数表示的还原数据;
通过在所述指定的绘图协议下利用所述还原数据进行计算,执行所述人工智能模型的推理过程;
所述融合处理,具体包括:
对所述多个以第一数位浮点数表示的模型数据进行降采样处理,以使所述第一数位浮点数对应转换第二数位浮点数;
将所述降采样处理后得到的多个第二数位浮点数合并为一个以第一数位浮点数表示的模型数据,作为所述暂存数据;
所述第一数位浮点数的数位是所述绘图协议接口中每个通道的最高数位。
2.根据权利要求1所述的方法,所述将所述降采样处理后得到的多个第二数位浮点数合并为一个以第一数位浮点数表示的模型数据,作为所述暂存数据,具体包括:
将所述降采样处理后得到的多个第二数位浮点数打包为一个以关键操作支持的指定数据类型表示的模型数据,作为第一中转数据,所述关键操作是根据指定的浮点数位转换算法确定的,所述关键操作不支持浮点数据类型;
利用预定浮点数位转换算法,通过针对所述第一中转数据执行所述关键操作,得到以第一数位浮点数表示的模型数据,作为所述暂存数据。
3.根据权利要求2所述的方法,所述将所述暂存数据转换为多个以第二数位浮点数表示的模型数据,具体包括:
将所述暂存数据转化为以关键操作支持的指定数据类型表示的模型数据,作为第二中转数据;
将所述第二中转数据拆分为多个以第二数位浮点数表示的模型数据。
4.根据权利要求2所述的方法,所述将所述降采样处理后得到的多个第二数位浮点数打包为一个以关键操作支持的指定数据类型表示的模型数据,具体包括:
根据所述降采样处理后得到的多个第二数位浮点数的阶码和尾数,对所述多个第二数位浮点数进行拼接处理,得到一个以关键操作支持的指定数据类型表示的模型数据。
5.根据权利要求1所述的方法,所述通过在所述指定的绘图协议下利用所述还原数据进行计算,执行所述人工智能模型的推理过程,具体包括:
根据所述还原数据,对应地确定所述人工智能模型的推理过程所需执行的矩阵运算;
根据所述指定的绘图协议,为所述还原数据生成中间图像,并通过对所述中间图像进行图像处理,执行所述矩阵运算以完成所述推理过程。
6.根据权利要求2或3所述的方法,所述关键操作包括位运算。
7.根据权利要求2或3所述的方法,所述第一数位为32位,所述第二数位为16位,所述指定数据类型为32位的整型。
8.根据权利要求1~5任一项所述的方法,所述指定的绘图协议为webGL;
所述多个以第一数位浮点数表示的模型数据是通过webGL提供的接口上传至GPU,以便在所述GPU中进行所述融合处理。
9.根据权利要求1~5任一项所述的方法,应用于端智能引擎,所述端智能引擎用于在用户终端上执行所述人工智能模型。
10.一种绘图协议下的人工智能模型业务处理装置,包括:
数据获取单元,获取以第一数位浮点数表示的暂存数据,所述暂存数据是预先在指定的绘图协议下,对人工智能模型提供的多个以第一数位浮点数表示的模型数据进行融合处理得到的,所述融合处理包括第一数位浮点数向位数更小的第二数位浮点数的转换过程;
数据转换单元,将所述暂存数据转换为多个以第二数位浮点数表示的模型数据;
数据还原单元,对所述以第二数位浮点数表示的模型数据进行上采样处理,得到多个以第一数位浮点数表示的还原数据;
模型推理单元,通过在所述指定的绘图协议下利用所述还原数据进行计算,执行所述人工智能模型的推理过程;
所述数据获取单元执行所述融合处理时,具体包括:
对所述多个以第一数位浮点数表示的模型数据进行降采样处理,以使所述第一数位浮点数对应转换第二数位浮点数;
将所述降采样处理后得到的多个第二数位浮点数合并为一个以第一数位浮点数表示的模型数据,作为所述暂存数据;
所述第一数位浮点数的数位是所述绘图协议接口中每个通道的最高数位。
11.根据权利要求10所述的装置,所述数据获取单元执行所述将所述降采样处理后得到的多个第二数位浮点数合并为一个以第一数位浮点数表示的模型数据,作为所述暂存数据时,具体包括:
将所述降采样处理后得到的多个第二数位浮点数打包为一个以关键操作支持的指定数据类型表示的模型数据,作为第一中转数据,所述关键操作是根据指定的浮点数位转换算法确定的,所述关键操作不支持浮点数据类型;
利用预定浮点数位转换算法,通过针对所述第一中转数据执行所述关键操作,得到以第一数位浮点数表示的模型数据,作为所述暂存数据。
12.根据权利要求11所述的装置,所述数据转换单元执行所述将所述暂存数据转换为多个以第二数位浮点数表示的模型数据时,具体包括:
将所述暂存数据转化为以关键操作支持的指定数据类型表示的模型数据,作为第二中转数据;
将所述第二中转数据拆分为多个以第二数位浮点数表示的模型数据。
13.根据权利要求11所述的装置,所述数据获取单元根据所述降采样处理后得到的多个第二数位浮点数的阶码和尾数,对所述多个第二数位浮点数进行拼接处理,得到一个以关键操作支持的指定数据类型表示的模型数据。
14.根据权利要求10所述的装置,所述模型推理单元执行所述通过在所述指定的绘图协议下利用所述还原数据进行计算,执行所述人工智能模型的推理过程时,具体包括:
根据所述还原数据,对应地确定所述人工智能模型的推理过程所需执行的矩阵运算;
根据所述指定的绘图协议,为所述还原数据生成中间图像,并通过对所述中间图像进行图像处理,执行所述矩阵运算以完成所述推理过程。
15.根据权利要求11或12所述的装置,所述关键操作包括位运算。
16.根据权利要求11或12所述的装置,所述第一数位为32位,所述第二数位为16位,所述指定数据类型为32位的整型。
17.根据权利要求10~14任一项所述的装置,所述指定的绘图协议为webGL;
所述多个以第一数位浮点数表示的模型数据是通过webGL提供的接口上传至GPU,以便在所述GPU中进行所述融合处理。
18.根据权利要求10~14任一项所述的装置,应用于端智能引擎,所述端智能引擎用于在用户终端上执行所述人工智能模型。
19.一种绘图协议下的人工智能模型业务处理设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
获取以第一数位浮点数表示的暂存数据,所述暂存数据是预先在指定的绘图协议下,对人工智能模型提供的多个以第一数位浮点数表示的模型数据进行融合处理得到的,所述融合处理包括第一数位浮点数向位数更小的第二数位浮点数的转换过程;
将所述暂存数据转换为多个以第二数位浮点数表示的模型数据;
对所述以第二数位浮点数表示的模型数据进行上采样处理,得到多个以第一数位浮点数表示的还原数据;
通过在所述指定的绘图协议下利用所述还原数据进行计算,执行所述人工智能模型的推理过程;
所述融合处理,具体包括:
对所述多个以第一数位浮点数表示的模型数据进行降采样处理,以使所述第一数位浮点数对应转换第二数位浮点数;
将所述降采样处理后得到的多个第二数位浮点数合并为一个以第一数位浮点数表示的模型数据,作为所述暂存数据;
所述第一数位浮点数的数位是所述绘图协议接口中每个通道的最高数位。
CN202110995308.4A 2021-08-27 2021-08-27 绘图协议下的人工智能模型业务处理方法、装置及设备 Active CN113689322B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110995308.4A CN113689322B (zh) 2021-08-27 2021-08-27 绘图协议下的人工智能模型业务处理方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110995308.4A CN113689322B (zh) 2021-08-27 2021-08-27 绘图协议下的人工智能模型业务处理方法、装置及设备

Publications (2)

Publication Number Publication Date
CN113689322A CN113689322A (zh) 2021-11-23
CN113689322B true CN113689322B (zh) 2024-02-02

Family

ID=78583423

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110995308.4A Active CN113689322B (zh) 2021-08-27 2021-08-27 绘图协议下的人工智能模型业务处理方法、装置及设备

Country Status (1)

Country Link
CN (1) CN113689322B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107204776A (zh) * 2016-03-18 2017-09-26 余海箭 一种基于浮点数情况的Web3D数据压缩算法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9508185B2 (en) * 2011-05-02 2016-11-29 Sony Interactive Entertainment Inc. Texturing in graphics hardware
EP2963885A1 (en) * 2014-07-03 2016-01-06 HOB GmbH & Co. KG A client-server-communication system running a client-side-script-program
JP7013017B2 (ja) * 2018-03-20 2022-01-31 国立研究開発法人産業技術総合研究所 演算システム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107204776A (zh) * 2016-03-18 2017-09-26 余海箭 一种基于浮点数情况的Web3D数据压缩算法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
J2ME浮点计算的简单实现;雷宏洲;;计算机与信息技术(11);全文 *

Also Published As

Publication number Publication date
CN113689322A (zh) 2021-11-23

Similar Documents

Publication Publication Date Title
Huang et al. 3d point cloud geometry compression on deep learning
EP4138391A1 (en) Mimic compression method and apparatus for video image, and storage medium and terminal
US9064311B2 (en) Method for compressing/decompressing a three-dimensional mesh
JP2015504545A (ja) 予測位置符号化
CN111402380B (zh) 一种gpu压缩纹理处理方法
CN107154062A (zh) 一种WebP有损压缩算法的实现方法、装置及系统
CN111754405A (zh) 图像降分辨率及复原方法、设备及可读存储介质
JP2018110390A (ja) ピクセルリストを符号化及び復号する方法と装置
CN112132158A (zh) 一种基于自编码网络的可视化图片信息嵌入方法
CN111355965A (zh) 一种基于深度学习的图像压缩还原方法及装置
CN110930408B (zh) 基于知识重组的语义图像压缩方法
CN113689322B (zh) 绘图协议下的人工智能模型业务处理方法、装置及设备
CN112887722A (zh) 一种图像无损压缩方法
CN111050170A (zh) 基于gan的图片压缩系统构建方法、压缩系统及方法
CN114501011B (zh) 图像压缩方法、图像解压缩方法及装置
CN115239563A (zh) 一种基于神经网络的点云属性有损压缩装置及方法
JP7090285B2 (ja) 復元性の高い画像の圧縮と解凍
CN114140363B (zh) 视频去模糊方法及装置、视频去模糊模型训练方法及装置
CN115052148B (zh) 一种基于模型分割压缩自编码器的图像压缩算法
CN115311138B (zh) 图像超分辨率方法及装置
CN116016920A (zh) 一种图像编码方法、解码方法及相关设备
CN116828166A (zh) 一种基于帧间复用的体积视频编解码方法
KR20220141843A (ko) 텍스처 맵핑 애플리케이션들을 위한 블록 압축된 텍스처의 초해상화
KR20230031797A (ko) 피처 맵 압축을 위한 방법, 장치 및 기록 매체
CN117793353A (zh) 双目图像的压缩方法及电子设备

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
GR01 Patent grant
GR01 Patent grant