我想弄清楚这整个机器学习的东西,所以我正在做一些测试。我想让它学习窦功能(用弧度角度)。该神经网络是:使用ReLu机器学习返回NaN
1输入(弧度角)/ 2个隐藏层/ 1输出(窦的预测)
对于壁球激活我使用:RELU并注意到这一点很重要当我使用Logistic函数而不是RELU时,脚本正在工作。所以要做到这一点,我已经做了一个循环,开始于0,并在180结束,它将翻译弧度(弧度= loop_index * Math.PI/180)的数字,然后它将基本上做这个弧度角的正弦,并存储弧度和正弦结果。
所以,我的表是这样的一个条目:{输入:[RADIAN ANGLE],输出:[罪(弧度)]}
for(var i = 0; i <= 180; i++) {
radian = (i*(Math.PI/180));
train_table.push({input:[radian],output:[Math.sin(radian)]})
}
我用这个表来训练使用过我的神经网络Entropy,学习率为0.3,迭代次数为20000次。
的问题是,它失败了,当我试图预测任何事情,它返回“南”
我使用的框架突触(https://github.com/cazala/synaptic)这里是我的代码的jsfiddle:https://jsfiddle.net/my7xe9ks/2/
你需要分享完整的代码,而不仅仅是这部分,这似乎毫不相关恕我直言。 –
添加语言标签可能会有所帮助。那是JavaScript?你在使用哪个库?你如何计算交叉熵? –
我使用JavaScript使用此框架:https://github.com/cazala/synaptic,这里是我的代码jsfiddle:https://jsfiddle.net/my7xe9ks/2/ – Raphael