随着计算密集型机器学习应用程序(例如执行实时语言翻译的聊天机器人)的激增,设备制造商通常会采用专门的硬件组件来快速移动和处理这些系统所需的大量数据。
为这些组件(称为深度神经网络加速器)选择最佳设计具有挑战性,因为它们可能具有广泛的设计选项。当设计人员试图添加加密操作以保护数据免受攻击者攻击时,这个难题变得更加棘手。
现在,麻省理工学院的研究人员开发了一种搜索引擎,可以有效地识别深度神经网络加速器的最佳设计,从而在提高性能的同时保持数据安全性。
他们的搜索工具称为SecureLoop,旨在考虑添加数据加密和身份验证措施将如何影响加速器芯片的性能和能源使用。工程师可以使用此工具获得针对其神经网络和机器学习任务量身定制的加速器的最佳设计。
与不考虑安全性的传统调度技术相比,SecureLoop 可以提高加速器设计的性能,同时保护数据。
使用SecureLoop可以帮助用户提高要求苛刻的AI应用的速度和性能,例如自动驾驶或医学图像分类,同时确保敏感的用户数据免受某些类型的攻击。
“如果你有兴趣进行计算,以保持数据的安全性,那么我们之前用于寻找最佳设计的规则现在被打破了。因此,所有这些优化都需要针对这组新的、更复杂的约束进行定制。这就是[主要作者] Kyungmi 在这篇论文中所做的,“麻省理工学院计算机科学和电气工程实践教授、SecureLoop 论文的合著者 Joel Emer 说。
Emer与主要作者Kyungmi Lee一起撰写了这篇论文,Kyungmi Lee是一名电气工程和计算机科学研究生;Mengjia Yan,Homer A. Burnell 电气工程和计算机科学职业发展助理教授,计算机科学和人工智能实验室 (CSAIL) 成员;资深作者、麻省理工学院工程学院院长、Vannevar Bush电气工程与计算机科学教授Anantha Chandrakasan。该研究将在IEEE/ACM微架构国际研讨会上发表。
“社区被动地接受了将加密操作添加到加速器会带来开销。他们认为这只会在设计权衡空间中引入很小的差异。但是,这是一种误解。事实上,加密操作会严重扭曲节能加速器的设计空间。Kyungmi 在识别这个问题方面做得非常出色,“Yan 补充道。
安全加速
深度神经网络由处理数据的多层互连节点组成。通常,一层的输出成为下一层的输入。数据被分组到称为tile的单元中,用于在片外存储器和加速器之间进行处理和传输。神经网络的每一层都可以有自己的数据切片配置。
深度神经网络加速器是一种具有一系列计算单元的处理器,可在网络的每一层中并行执行乘法等操作。加速器计划描述了如何移动和处理数据。
由于加速器芯片上的空间非常宝贵,因此大多数数据存储在片外存储器中,并在需要时由加速器获取。但是,由于数据存储在片外,因此它们容易受到攻击者的攻击,攻击者可能会窃取信息或更改某些值,从而导致神经网络出现故障。
“作为芯片制造商,您无法保证外部设备或整个操作系统的安全性,”Lee 解释道。
制造商可以通过向加速器添加经过身份验证的加密来保护数据。加密使用密钥对数据进行加密。然后,身份验证将数据切割成统一的块,并为每个数据块分配一个加密哈希值,该数据块与数据块一起存储在片外存储器中。
当加速器获取加密的数据块(称为身份验证块)时,它会在处理原始数据之前使用密钥来恢复和验证原始数据。
但是身份验证块和数据切片的大小不匹配,因此一个块中可能有多个切片,或者一个切片可能被拆分为两个块。加速器不能任意抓取身份验证块的一小部分,因此它最终可能会抓取额外的数据,这会消耗额外的能量并减慢计算速度。
此外,加速器仍然必须对每个身份验证块运行加密操作,这增加了更多的计算成本。
高效的搜索引擎
通过SecureLoop,麻省理工学院的研究人员寻求一种方法,可以识别最快、最节能的加速器时间表,这种方法可以最大限度地减少设备由于加密和身份验证而访问片外存储器以获取额外数据块所需的次数。
他们首先增强了Emer和他的合作者之前开发的现有搜索引擎,称为Timeloop。首先,他们添加了一个模型,可以解释加密和身份验证所需的额外计算。
然后,他们将搜索问题重新表述为一个简单的数学表达式,这使得SecureLoop能够以比搜索所有可能的选项更有效的方式找到理想的真实块大小。
“根据你分配这个块的方式,不必要的流量可能会增加或减少。如果你巧妙地分配加密块,那么你可以获取少量的额外数据,“Lee说。
最后,他们采用了一种启发式技术,确保SecureLoop识别出一个计划,该计划可以最大限度地提高整个深度神经网络的性能,而不仅仅是单个层。
最后,搜索引擎输出一个加速器计划,其中包括数据平铺策略和身份验证块的大小,为特定的神经网络提供最佳的速度和能源效率。
“这些加速器的设计空间是巨大的。Kyungmi 所做的是想出一些非常实用的方法,使搜索变得容易,这样她就可以找到好的解决方案,而不需要详尽地搜索空间,“Emer 说。
在模拟器中进行测试时,SecureLoop发现,与其他不考虑安全性的方法相比,计划速度提高了33.2%,并且表现出了50.2%的能量延迟积(与能源效率相关的指标)。
研究人员还使用SecureLoop来探索在考虑安全性时加速器的设计空间如何变化。Lee说,他们了解到,为加密引擎分配更多的芯片区域,并为片上存储器牺牲一些空间,可以带来更好的性能。
未来,研究人员希望使用SecureLoop来寻找能够抵御侧信道攻击的加速器设计,当攻击者可以访问物理硬件时,就会发生侧信道攻击。例如,攻击者可以监控设备的功耗模式以获取机密信息,即使数据已被加密。他们还扩展了SecureLoop,以便将其应用于其他类型的计算。
这项工作部分由三星电子和韩国高级研究基金会资助。
新闻旨在传播有益信息,英文版原文来自https://news.mit.edu/2023/accelerating-ai-tasks-while-preserving-data-security-1030