为什么我们必须对人工神经网络的输入进行归一化? [英] Why do we have to normalize the input for an artificial neural network?

查看:579
本文介绍了为什么我们必须对人工神经网络的输入进行归一化?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是关于神经网络理论的主要问题:

It is a principal question, regarding the theory of neural networks:

为什么我们必须对神经网络的输入进行归一化?

Why do we have to normalize the input for a neural network?

我了解有时,例如当输入值是非数字时,必须执行某些转换,但是当我们有数字输入时?为什么数字必须在一定间隔内?

I understand that sometimes, when for example the input values are non-numerical a certain transformation must be performed, but when we have a numerical input? Why the numbers must be in a certain interval?

如果数据不规范会怎样?

What will happen if the data is not normalized?

推荐答案

如果输入变量是线性组合的(如在MLP中),则为 至少从理论上讲,很少有必要严格标准化输入.这 原因是输入向量的任何重新缩放都可以通过以下方式有效地撤消 更改相应的权重和偏差,让您获得准确的 与以前一样的输出.但是,有多种实用的 标准化输入可以使培训更快并减少培训的原因 陷入局部最优的机会.此外,体重下降和贝叶斯 使用标准化输入可以更方便地进行估算.

If the input variables are combined linearly, as in an MLP, then it is rarely strictly necessary to standardize the inputs, at least in theory. The reason is that any rescaling of an input vector can be effectively undone by changing the corresponding weights and biases, leaving you with the exact same outputs as you had before. However, there are a variety of practical reasons why standardizing the inputs can make training faster and reduce the chances of getting stuck in local optima. Also, weight decay and Bayesian estimation can be done more conveniently with standardized inputs.

这篇关于为什么我们必须对人工神经网络的输入进行归一化?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆