首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >神经网络混淆

神经网络混淆
EN

Data Science用户
提问于 2016-08-03 19:15:41
回答 1查看 1.6K关注 0票数 9

对神经网络进行训练,使神经网络连接权值上的误差函数最小化。在某些应用中,这些权数可被视为知识产权。是否有一种方法来加密这些权重,并且仍然有一个可操作的神经网络?

一些背景:我试图扩展一个神经网络算法,但是现在我们正在一个集中的服务器上做所有的计算,它被困住了。我们可以将计算转移到客户端,但我们不希望有人解压缩可执行文件并获取网络的权重。有没有办法分发“加密的神经网络”,使我们的IP受到保护?

我要澄清的是:我指的不是对加密数据进行操作的“不经意”神经网络,而是指神经网络本身的权重。

我对其他的混淆技术没意见。

编辑:我找到了本论文,但它声明

在协议的最后,用户只知道最终的NN输出,而所有的内部计算都是保密的。这样,就可以防止恶意用户提供一组被正确选择的假输入来泄露网络机密。本文还勾勒出了一种可以混淆网络拓扑结构的解决方案,但这一方向的深入研究还有待于进一步的研究。

表示这篇文章是关于一个相关概念的,但是我正在寻找一个拓扑被混淆的资源。

EN

回答 1

Data Science用户

发布于 2016-08-03 19:54:17

我的答案只适用于一个利基,数据库服务器市场。如果要将权重存储在Server数据库中,则可以使用透明数据加密(TDE)。这将对整个数据库进行加密,以便只有授权用户才能读取其内容;还可以对单个列进行加密以进一步限制访问,这样即使是授权用户也无法在不首先解密表的情况下读取表的内容。

下面是关于如何使用TDE的一些文档的链接。它实际上很容易使用,但是和任何东西一样,在设置它时有一些潜在的“难题”。有关我遇到的一些人的简短列表,请参阅我的专栏TDE中的问题:如何完全恢复加密的服务器数据库

通常,您不必在前端应用程序中进行任何编码(例如,带有电子表格的GUI用户访问界面等)。使用启用TDE的数据库;访问数据的用户只需要足够的权限.我知道,像VB和C#这样的.Net语言也有自己的加密命令,如果出于某种原因需要在前端进行加密,您也可以利用这些命令;我怀疑其他编程生态系统(如Java等)也有自己的对应程序。我还相当肯定,server在数据库服务器市场上的竞争对手,如甲骨文和MySQL,都有自己的数据库加密版本,但我不熟悉它们的工作方式。我坚信,在适当的时候,许多神经网络和其他机器学习算法最终会运行在这类数据库服务器上,因为这和其他许多优点。我确信Oracle等有类似于Server的免费版本的数据库,它允许您存储和操作大约10 GB的数据库。如果这是您的神经网络的足够空间,那么您就可以将它们设置在专用服务器上,而不必为数据库服务器许可证付费。免责声明:我与微软没有任何联系,也不可能从中获利;我只是非常了解这一项技术。我用它来加密我自己的神经网络权重,所以我从个人经验中知道这个解决方案会很好的工作。

如果您只是将权重存储在文件中而不是数据库中,那么您可能可以使用磁盘和文件加密软件,例如TrueCrypt或EFS和BitLocker for Windows。我在网络方面很薄弱,所以我不能评论整个互联网的传输安全,尽管我怀疑SSL等技术会起作用。我希望这能帮到你。

票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/13175

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档