神经网络-检查节点激活

时间:2019-11-21 13:21:15

标签: python neural-network artificial-intelligence

我参与了一个研究项目,该项目正在研究在安全关键环境中使用神经网络。这项研究的一部分监管框架针对状态,即系统内不得存在任何休眠代码。必须贯穿系统的每个部分,并且该途径必须是可测试/可验证的。

显然,神经网络由许多节点组成。输入/输出节点易于测试激活,但是有人知道测试隐藏层节点激活的方法吗?

很明显,激活取决于节点的输入值和激活函数,对此可能存在数学方法。

最终,代码将使用C / C ++,但我们正在使用Python进行NN开发。因此,涉及相关工具集的任何想法都将不胜感激。如果可以帮助进行此测试,我还可以将NN结构和矩阵导出/导入到另一个包或环境中。

希望你们都将充满创意,因为Google没有提供任何东西。 :(

谢谢。

1 个答案:

答案 0 :(得分:1)

以某种方式techytushar的评论使我的大脑进入了新的推理领域,我认为这非常有帮助:

所以我要解决的问题是:“不能有任何休眠代码。”是永远无法访问的C行或数组元素。

因此,当训练后的NN作为已编译的C应用程序运行时,该应用程序将计算每个神经元的值并评估其激活函数,而与节点的输入值无关。因此,实际上在这方面没有休眠代码或数组元素之类的东西。那时该节点的激活仅是对/错输出。下一刻可能会改变。即使在数学上始终不激活结果,也将重新计算所有结果。

因此,问题就从这个主题移开了,以确保节点激活的任何组合都不会导致系统处于危险状态。那不是原始问题的主题,所以我想我可以在此下画一条线...?