一句话:提出 CustomDLCoder,自动将端侧 DL 模型转换为无显式模型的定制纯代码程序,兼顾安全与性能。
端侧部署的深度学习模型(如 TFLite)易被攻击者从应用或设备中提取,进而发起对抗等攻击,而现有防护无法完全阻止。本文提出 CustomDLCoder,自动解析端侧 DL 模型,提取其后端计算代码并进行配置,进而合成一个无需保留显式模型表示的定制可执行程序来部署模型。该程序既隐藏模型信息以抵御模型嗅探等攻击,又去除模型解析与预处理步骤,仅保留数据计算。实验表明,相比 TFLite,该方法在 x86-64 与 ARM64 上分别加速推理 21.0% 和 24.3%,并降低内存消耗 68.8% 和 36.0%。
Recent studies show that on-device deployed deep learning (DL) models, such as those of Tensor Flow Lite (TFLite), can be easily extracted from real-world applications and devices by attackers to generate many kinds of adversarial and other attacks. Although securing deployed on-device DL models has gained increasing attention, no existing methods can fully prevent these attacks. Traditional software protection techniques have been widely explored. If on-device models can be implemented using pure code, such as C++, it will open the possibility of reusing existing robust software protection techniques. However, due to the complexity of DL models, there is no automatic method that can translate DL models to pure code. To fill this gap, we propose a novel method, CustomDLCoder, to automatically extract on-device DL model information and synthesize a customized executable program for a wide range of DL models. CustomDLCoder first parses the DL model, extracts its backend computing codes, configures the extracted codes, and then generates a customized program to implement and deploy the DL model without explicit model representation. The synthesized program hides model information for DL deployment environments since it does not need to retain explicit model representation, preventing many attacks on the DL model. In addition, it improves ML performance because the customized code removes model parsing and preprocessing steps and only retains the data computing process. Our experimental results show that CustomDLCoder improves model security by disabling on-device model sniffing. Compared with the original on-device platform (i.e., TFLite), our method can accelerate model inference by 21.0% and 24.3% on x86-64 and ARM64 platforms, respectively. Most importantly, it can significantly reduce memory consumption by 68.8% and 36.0% on x86-64 and ARM64 platforms, respectively.
DOI 原文 ·
@inproceedings{paperbot8447,
title = {Model-less Is the Best Model: Generating Pure Code Implementations to Replace On-Device DL Models},
author = {Mingyi Zhou and Xiang Gao and Pei Liu and John Grundy and Chunyang Chen and Xiao Chen and Li Li},
booktitle = {ISSTA},
year = {2024},
doi = {10.1145/3650212.3652119}
}