深度学习模型的执行制造技术

技术编号:26531823 阅读:57 留言:0更新日期:2020-12-01 14:13
根据本公开的实现,提出了一种深度学习模型的执行的方案。在该方案中,响应于深度学习模型的卷积层的卷积操作被触发,在计算设备的受信任执行环境(TEE)中,基于卷积层的输入和参数值集合来顺序执行多个分区卷积操作。给定分区卷积操作的执行包括:将输入中要由给定分区卷积操作的参数值子集处理的输入部分存储在TEE的受保护存储区中,通过输入部分和针对给定分区卷积操作的参数值子集的单个矩阵相乘操作来确定给定分区卷积操作的结果,参数值子集被表示为矩阵,以及从受保护存储区移除输入部分。通过合并多个分区卷积操作的结果来确定卷积操作的结果。由此,可以在安全程度高但存储资源有限的TEE中加快模型执行速度、提高存储空间效率。

【技术实现步骤摘要】
深度学习模型的执行
技术介绍
深度学习作为机器学习的一个分支,近年来不断得到发展并且当前已经被广泛用于不同领域和实现中。深度学习模型可以被设计用于实现各种各样的任务,包括计算机视觉处理、语音识别、自然语言处理等。这样的任务有时可能是各种终端,诸如移动电话、物联网(IoT)应用中期望执行的任务。深度学习模型的执行,特别是复杂或者被更精密配置的大模型的执行将要求较高的计算和存储资源。
技术实现思路
根据本公开的实现,提出了一种用于深度学习模型的执行的方案。在该方案中,响应于深度学习模型的卷积层的卷积操作被触发,在计算设备的受信任执行环境(TEE)中,基于卷积层的输入和参数值集合来顺序执行多个分区卷积操作。给定分区卷积操作的执行包括:将输入中要由给定分区卷积操作的参数值子集处理的输入部分存储在TEE的受保护存储区中,通过输入部分和针对给定分区卷积操作的参数值子集的单个矩阵相乘操作来确定给定分区卷积操作的结果,参数值子集被表示为矩阵,以及从受保护存储区移除输入部分。通过合并多个分区卷积操作的结果来确定卷积操作的结果。由此,可以在安全程度高但存储资源有限的TEE中本文档来自技高网...

【技术保护点】
1.一种计算机实现的方法,包括:/n响应于深度学习模型的卷积层的卷积操作被触发,在计算设备的受信任执行环境(TEE)中,基于所述卷积层的输入和参数值集合来顺序执行多个分区卷积操作,所述多个分区卷积操作使用由所述参数值集合划分的不同参数值子集,所述多个分区卷积操作中的给定分区卷积操作的执行包括:/n将所述输入中要由所述给定分区卷积操作的参数值子集处理的输入部分存储在所述TEE的受保护存储区中,所述输入部分被表示为矩阵,/n通过所述输入部分和针对所述给定分区卷积操作的参数值子集的单个矩阵相乘操作来确定所述给定分区卷积操作的结果,所述参数值子集被表示为矩阵,以及/n从所述受保护存储区移除所述输入部分...

【技术特征摘要】
1.一种计算机实现的方法,包括:
响应于深度学习模型的卷积层的卷积操作被触发,在计算设备的受信任执行环境(TEE)中,基于所述卷积层的输入和参数值集合来顺序执行多个分区卷积操作,所述多个分区卷积操作使用由所述参数值集合划分的不同参数值子集,所述多个分区卷积操作中的给定分区卷积操作的执行包括:
将所述输入中要由所述给定分区卷积操作的参数值子集处理的输入部分存储在所述TEE的受保护存储区中,所述输入部分被表示为矩阵,
通过所述输入部分和针对所述给定分区卷积操作的参数值子集的单个矩阵相乘操作来确定所述给定分区卷积操作的结果,所述参数值子集被表示为矩阵,以及
从所述受保护存储区移除所述输入部分;以及
通过合并所述多个分区卷积操作的结果来确定所述卷积操作的结果,以作为所述卷积层的输出。


2.根据权利要求1所述的方法,其中所述多个分区卷积操作的数目基于所述受保护存储区的可用存储空间大小被确定。


3.根据权利要求1所述的方法,其中将所述输入部分存储在所述受保护存储区中包括:
基于所述参数值集合的尺寸和所述输入的尺寸,将所述输入转换成输入矩阵,所述输入矩阵的行或列中的元素在所述卷积操作中要被用于与所述参数值集合中的相应参数值顺序相乘;
基于所述多个分区卷积操作的数目和所述给定卷积操作在所述多个分区卷积操作中的排序顺序,从所述输入矩阵确定与所述参数值子集对应的输入部分;以及
将所确定的所述输入部分存储在所述受保护存储区中。


4.根据权利要求1所述的方法,其中所述参数值集合被存储在所述TEE外部的存储区,所述方法还包括:
响应于确定所述给定分区卷积操作要被执行,从所述TEE外部的存储区将所述参数值子集加载到所述受保护存储区中。


5.根据权利要求4所述的方法,其中将所述参数值子集加载到所述受保护存储区中还包括:
在所述TEE中执行对所述参数值子集的完整性校验,包括:
计算所述参数值子集的完整性校验值,
将所计算的完整性校验值与在所述受保护存储区中存储的预期完整性校验值进行比较,以及
响应于所计算的完整性校验值与所述预期完整性校验值匹配,确认所述参数值子集的完整性;以及
响应于确认所述参数值子集的完整性,将所述参数值子集存储到所述受保护存储区中。


6.根据权利要求5所述的方法,还包括:
在确定所述给定分区卷积操作的结果之后,从所述受保护存储区移除所述参数值子集。


7.根据权利要求5所述的方法,其中计算所述参数值子集的完整性校验值包括:
通过对所述参数值子集执行哈希运算来确定所述完整性校验值。


8.根据权利要求4所述的方法,其中将所述参数值子集加载到所述受保护存储区中包括:
与所述多个分区卷积操作中在所述给定分区卷积操作之前的分区卷积操作的执行并行地,将所述参数值子集加载到所述受保护存储区中。


9.根据权利要求5所述的方法,其中在所述TEE中执行对所述参数值子集的完整性校验包括与以下各项并行地在所述TEE中执行对所述参数值子集的完整性校验:
所述多个分区卷积操作中在所述给定分区卷积操作之前的分区卷积操作的执行,以及
另一参数值子集到所述受保护存储区的加载,所述另一参数值子集将在所述多个分区卷积操作中在所述给定分区卷积操作之后的分区卷积操作中被使用。


10.根据权利要求1所述的方法,其中所述参数值集合包括:所述深度学习模型的已训练的参数值集合,或者所述深度学习模型的正在训练的参数值集合。


11.根据权利要求1所述的方法,其中所述卷积层的所述输入被存储在所述受保护存储区中,所...

【专利技术属性】
技术研发人员:刘云新张霖涛
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1