使用ReLu返回NaN的机器学习

时间:2017-08-10 14:12:42

标签: machine-learning neural-network

我想弄清楚整个机器学习的东西,所以我正在进行一些测试。我想让它学习窦功能(带弧度角)。神经网络是:

1输入(弧度角)/ 2隐藏层/ 1输出(预测窦)

对于我正在使用的壁球激活: RELU ,请注意当我使用Logistic函数而不是RELU时,脚本正在运行。

为了做到这一点,我做了一个从0开始并在180结束的循环,它将以弧度(radian = loop_index * Math.PI / 180)转换数字,然后它就是&#l; ll基本上做这个弧度角的窦,并存储弧度和窦结果。

所以我的表格对于一个条目看起来像这样:{input:[RADIAN ANGLE],输出:[sin(radian)]}

for(var i = 0; i <= 180; i++) {
    radian = (i*(Math.PI / 180));
    train_table.push({input:[radian],output:[Math.sin(radian)]})
}

我使用此表来训练我的神经网络,使用交叉熵,学习率为0.3,迭代次数为20000次。

问题在于,当我试图预测它返回的任何东西时它会失败&#34; NaN&#34;

我正在使用框架Synaptic(https://github.com/cazala/synaptic),这里是我的代码的JSfiddle:https://jsfiddle.net/my7xe9ks/2/

0 个答案:

没有答案