2016-06-20 21 views
1

我正在研究一个Neural Network模型,我想知道我该如何缩放输入。缩放不同尺度的输入神经网络

现在,我只需将所有输入作为输入缩放为mean = 0/std(Standard Deviation) = 1。但是,我的输入不是全部normally分布式。有些通常是分布式的,有些是线性分布的。

我该如何处理和缩放我的输入?是否可以用mean = 0 & std = 1来缩放一些输入并线性缩放其他输入?

谢谢! Paul

回答

0

缩放可以用于构建神经网络的唯一附加值是避免训练错误和更快收敛。理论上,不管使用比例如何(或者对于不同的输入神经元使用不同的比例缩放方法),您都应该得到相同的结果。只要你不改变你的数据的基本结构,它应该没问题。

理想情况下,您应该使用单一缩放方法,而不考虑输入的分布情况,因为它旨在使所有输入可以相互比较。您也可以选择不同的缩放方法。对于你的问题没有一个正确的答案,大多数答案都倾向于使用一些经验信息来选择缩放方法。这取决于你的数据。

统计上讲,你应该首先通过训练一个网络来开始你的模型创建,而不是缩放。如果万一你的网络不收敛,你可以尝试通过使用迭代次数和初始权重来解决训练问题。如果这不起作用,那么继续进行缩放,并最终进行区分缩放。