混淆我的DL模型和Python的最佳方法?

问题描述

因此,我将向我的深度学习模型授予预先训练的权重,以将其部署到客户。深度学习模型的使用将在该客户的服务器上完成。出于安全原因,我想知道如何对我的Python代码和模型进行模糊处理,以使如果有人可能想要对其进行反向工程变得更加困难。

到目前为止,我已经使用Cython将我的Python脚本(用于处理数据和调用模型)编译为C。我还遵循Making an executable in Cython生成可执行文件。我还能做些什么来更好或更有效地进行混淆?

此外,我更担心混淆预训练模型的权重。我有ONNX和Tensorflow Lite格式的模型。保护我的模型的最佳方法是什么(对于ONNX和Tensorflow Lite)?

请注意,这些模型是要在实时设置中部署的-因此持续加载模型并不是很好。

解决方法

签出https://pypi.org/project/pyarmor/

afaik无法对其进行解密