我有一个训练有素的神经网络,由大约40个输入神经元组成,让我按照模式对一些项目进行分类。每个神经元接收一些单独的输入参数值。我很确定并非所有输入参数对于实现最终结果都很重要,所以如果我排除它们,我的网络应该产生几乎相同的结果。什么是摆脱网络中不必要的输入神经元的最有效和最快速的方法,最好不要重新训练整个网络?谢谢
答案 0 :(得分:1)
两个答案可以轻松快速地完成:
你可以,如果你必须训练你的NN(你必须重新训练它,如果你修剪它),用一个固定阈值下的重量切断连接,然后,删除没有连接的神经元
您可以为输入神经元的每个子集计算Shapley值,并修剪那些具有“坏”值的值:http://en.wikipedia.org/wiki/Shapley_value
答案 1 :(得分:1)
从真实的测试数据产生40个不同的测试集
每组只有一个输入值随机化
使用“训练有素的NN”
测试这些数据集比较结果