1.缩放层(scaling layer)
实际上,将输入值进行缩放,使其具有适当的范围,可以方便计算。
在神经网络中,可以将缩放函数视为连接到神经网络输入的一层。缩放层包含输入量的一些基本统计学信息,包括平均值、标准差、最小值和最大值。
实践中常用的一些缩放方法如下:
- 最大最小值缩放
- 均值和标准差缩放
- 标准差缩放
最大最小值缩放
最大最小值缩放法产生一个大小在-1和1之间的数据集。该方法通常用于具有均匀分布的变量。
均值和标准差缩放
平均值和标准差缩放法对输入进行缩放,以使它们的平均值为0,标准差为1。此方法通常应用于具有正态(或高斯)分布的变量。
标准差缩放
标准差缩放法产生标准差为1的输入。通常将其应用于半正态分布,即变量遵循以0为中心的正态分布,但仅取正值。
所有缩放方法都是线性的,并且通常会产生相似的结果。在所有情况下,数据集中的数据缩放必须与神经网络中的输入缩放同步。
2.缩放还原层(unscaling layer)
神经网络缩放后的输出值经反缩放还原成原始数值单位。
在神经网络的上下文中,缩放还原函数可理解为连接感知器层输出的缩放还原层。缩放还原层包含输出量的一些基本统计信息,包括平均值、标准差、最小值和最大值。
实践中常用的四种缩放还原方法如下:
- 最大最小值缩放还原法
- 均值和标准差缩放还原法
- 标准差缩放还原法
- 对数缩放还原法
最大最小值缩放还原法
先前缩放为[-1,+1]的变量,经缩放还原,转换成原始范围内的输出。
均值和标准差缩放还原法
均值和标准差缩放还原法将原先缩放成均值0、标准差1的变量还原。
标准差缩放还原法
标准差缩放还原法将原先缩放成标准差1的变量还原,从而产生原始范围内的输出值。
对数缩放还原法
对数法将原先进行了对数变换的变量还原。
任何情况下,数据集内目标值的缩放必须与神经网络的输出还原同步。