无法近似具有 1 个隐藏层的神经网络中的简单乘法函数

Bra*_* Ds 3 neural-network deep-learning azure-machine-learning-service

我只是想测试神经网络近似乘法函数(回归任务)的效果如何。我正在使用 Azure 机器学习工作室。我有 6500 个样本,1 个隐藏层(每个隐藏层我测试了 5 /30 /100 个神经元),没有标准化。默认参数 学习率 - 0.005,学习迭代次数 - 200,初始学习权重 - 0.1,动量 - 0 [描述]。我的准确度非常差,接近 0。 同时,增强决策森林回归显示出非常好的近似值。

我究竟做错了什么?这个任务对于 NN 来说应该很容易。

Bra*_* Ds 5

大乘法函数梯度迫使网络几乎立即进入某种可怕的状态,其中所有隐藏节点的梯度为零。我们可以使用两种方法:

1) 除以常数。我们只是在学习之前将所有内容分开,然后将其相乘。

2)进行对数归一化。它将乘法变成加法:

m = x*y => ln(m) = ln(x) + ln(y).
Run Code Online (Sandbox Code Playgroud)