总的来说,我是数据科学和神经网络的新手。环顾四周,许多人说最好在使用 NN 做任何事情之间对数据进行规范化。我了解规范化输入数据的用途。
但是我真的看不出标准化输出数据有什么帮助。
我还用一个简单的数据集尝试了这两种情况,并且得到了相同的结果。唯一的区别是,在一些奇怪的问题中,很难将输出重新转换回来。
你能给我一些关于为什么我们也应该标准化输出的直觉吗?
或者为什么它无动于衷?
总的来说,我是数据科学和神经网络的新手。环顾四周,许多人说最好在使用 NN 做任何事情之间对数据进行规范化。我了解规范化输入数据的用途。
但是我真的看不出标准化输出数据有什么帮助。
我还用一个简单的数据集尝试了这两种情况,并且得到了相同的结果。唯一的区别是,在一些奇怪的问题中,很难将输出重新转换回来。
你能给我一些关于为什么我们也应该标准化输出的直觉吗?
或者为什么它无动于衷?
那篇论文给出了一个很好的答案,我引用的地方。Should I standardize the target variables (column vectors)?
在该页面中搜索。
标准化目标变量通常更便于获得良好的初始权重,而不是必要的。但是,如果您有两个或多个目标变量,并且您的误差函数像通常的最小(均值)平方误差函数一样对尺度敏感,那么每个目标相对于其他目标的可变性会影响网络对该目标的学习程度。如果一个目标的范围是 0 到 1,而另一个目标的范围是 0 到 1,000,000,则网络将花费大部分精力来学习第二个目标,以排除第一个目标。因此,必须重新调整目标的比例,以便它们的可变性反映它们的重要性,或者至少与它们的重要性不成反比。如果目标同等重要,则通常应将它们标准化为相同的范围或相同的标准差。