我用C ++创建了一个神经网络,用于近似加法函数 y = x + y 。我使用了具有5个神经元的单个隐藏层。 x和y的值在0到10的范围内。因此,在训练之前,我通过最大值(2x10)归一化训练数据(输入和输出数据)。
我的模型做出预测后(介于0和1之间),我将其乘以2x20来对预测进行归一化。但是,我的结果仍然显示出变化。
即,如果应该将结果(y)预测为8,则我的网络给出-12。同样,我得到的不是19,而是-19。为了纠正这种变化,我在预测值上增加了20。这是我得到的:
忽略标题,f(x)= sin(x),其中,蓝色显示实际结果,红色显示预测值(添加后手动20条)
我的问题是:我的网络预测良好吗?并且“手动向结果中添加20”是否正常?