【发布时间】:2017-06-16 22:44:54
【问题描述】:
我正在尝试使用 Keras 设计一个优先考虑预测性能的神经网络,但通过进一步减少每层的层数和节点数,我无法获得足够高的准确度。我注意到我的很大一部分权重实际上为零(> 95%)。有没有办法修剪密集层以希望减少预测时间?
【问题讨论】:
-
“有效为零”究竟是什么意思?您使用哪些图层类型?你试过什么?
-
@MartinThoma 我使用的是基本的
Dense层。大多数权重要么等于零,要么非常接近于零,以至于将它们设置为零不会改变任何输入的网络输出。然而,在不增加平均测试用例损失的情况下,不能从网络中删除单个节点。我的假设是,在大多数权重无用的时候,稀疏网络在预测方面会更有效。 -
“非常接近于零,以至于将它们设置为零不会改变任何输入的网络输出”——这是什么意思? 10^-5? 10^-6? 10^-100?
-
@MartinThoma 我认为“无关阈值”大约是
< 10^-15,根据经验确定 -
您现在可以使用 keras 修剪神经网络
标签: python-3.x neural-network keras pruning