【AI实战】机器学习数据处理之数据归一化、标准化

机器学习数据处理之数据归一化、标准化

本文介绍三种归一化、标准化的方法。

1.min-max标准化(Min-max normalization)

对原始数据的线性变换,使结果落到[0,1]区间,转换函数如下:
x ∗ = x − m i n m a x − m i n x^*=\frac{x-min}{max-min} x=maxminxmin

  • 注意事项
    max,min 必须是固定的

2.z-score(标准差) 标准化

对原始数据的均值(mean)和标准差(standard deviation)进行数据的标准化。

经过处理的数据符合标准正态分布,即均值为0,标准差为1,其转化函数为:
x ∗ = x − μ σ x^* = \frac{x - μ }{σ} x=σxμ
其中μ为所有样本数据的均值,σ为所有样本数据的标准差。

3.nonlinearity(非线性) 归一化

非线性归一化方法经常用在数据分化比较大的场景,有些数值很大,有些很小。通过一些数学函数,将原始值进行映射。

该方法包括 log,正切等,需要根据数据分布的情况,决定非线性函数的曲线:

  • 对数函数转换方法
    比如 y = l n ( x ) y = ln(x) y=ln(x),对应的归一化方法为:
    x ∗ = l n ( x ) l n ( m a x ) x^*= \frac{ln(x)}{ln(max)} x=ln(max)ln(x)
    其中 m a x max max 表示样本数据的最大值, x ∗ x^* x 为标准化后值, x x x 为输入值,并且所有样本数据均要大于等于1.

  • 反正切函数转换方法
    利用反正切函数可以实现数据的归一化,即
    x ∗ = a r c t a n ( x ) ∗ ( 2 / p i ) x^*= arctan(x)*(2/pi) x=arctan(x)(2/pi)
    使用这个方法需要注意的是如果想映射的区间为[0,1],则数据都应该大于等于0,小于0的数据将被映射到[-1,0]区间上.

  • L2范数归一化方法
    L2范数归一化就是特征向量中每个元素均除以向量的L2范数:
    x i ∗ = x i n o r m ( x ) x_i^*= \frac{x_i}{norm(x)} xi=norm(x)xi
    其中,向量 x ( x 1 , x 2 , . . . , x n ) x(x_1,x_2,...,x_n) x(x1,x2,...,xn)的L2范数定义为:
    n o r m ( x ) = x 1 2 + x 2 2 + . . . + x 1 n norm(x)=\sqrt{x_1^2+x_2^2+...+x_1^n} norm(x)=x12+x22+...+x1n
    特点:转换后的数据 x ∗ x^* x平方和为1

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

szZack

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值