归一化(Normalization)
归一化可以指把一组数据缩放到[0,1]的范围内,或者自定义的某个范围内。也可以指对一组数据缩放,使其的和为1。
其目的是通过把有量纲表达式变为无量纲表达式,有利于不同量纲数据之间的比较、展示等。
主要的归一化算法有:
1.线性转换,即min-max归一化(常用方法)
x'=(x-min)/(max-min)
2.平均归一化
x' = (x - μ) / (MaxValue - MinValue)
3. 对数函数转换
x'=log10(x)
4.反余切函数转换
x'=atan(x)*2/π
标准化(Standardization)
数据的标准化是通过处理使数据变得较为稳定,没有特别大或特别小的异常值。
主要方法:
1.z-score标准化,即零-均值标准化
x'=(x-μ)/σ
是统计处理的一种常用方法,基于正态分布的假设,将原始数据变换为均值为0、标准差为1的符合标准正态分布的数据。但即使数据不服从正态分布,也可以用此法。特别适用于数据的最大值和最小值未知,或存在孤立点。
2.小数定标标准化(decimalscaling)
x'=x/10^j (j确保max(|x'|)<1)
本质上就是移动x的小数位置进行标准化。
举个例子:假定A的值由-436到214,A的最大绝对值为436,为使用小数定标标准化,我们用每个值除以1000(即,j=3),这样,-436被标准化为-0.436。
3.对数Logistic模式
x'=1/(1+e^(-x))
这种方法把数据移动到0~1区间。本质上是在保留了数据相对大小关系信息的基础上,对数据进行二分类。
正则化:要求一个逻辑回归问题,假设一个函数,覆盖所有可能:y=wx,其中w为参数向量,x为已知样本的向量,用yi表示第i个样本的真实值,用f(xi)表示样本的预测值,从而确定损失函数L(yi,f(xi))=yi−sigmoid(xi)。该损失函数代表一种误差。对于该模型y=wx的所有样本的损失平均值,我们称为经验损失(empirical loss)。
显然,经验损失(或称经验风险)最小化(empirical risk minimization)就是求解最优模型的原则。为了达到这个目的,模型的设定会越来越复杂,最后可能造成模型只适用于当前的样本集,即出现过拟合(over fitting)问题。
为了解决过拟合问题,通常有两种办法,第一是减少样本的特征维度;第二就是正则化(又称惩罚“penalty”)。正则化的一般形式是在整个平均损失函数后增加一个正则项(常见L2范数正则化,也有其他形式的正则化,它们的作用也不同。详见http://blog.csdn.net/zouxy09/article/details/24971995/)
λ=0代表不进行正则化;=1通常代表合适的惩罚;举个例子=100的时候,会因为过度惩罚而造成“欠拟合”问题。