归一化 (Normalization):
属性在指定的最小值(通常为 1-0)之间缩放,这可以通过 preprocessing.MinMaxScaler 类来实现。
常用的最小规范化方法(x-min(x))/(max(x)-min(x))
python实现归一化的方法:
1、(0,1)标准化:
这是最简单最容易想到的方法,通过遍历特征向量中的每一个数据,记录Max和Min,并以Max-Min为基(即Min=0,Max=1)对数据进行归一化一站式加工:
def MaxMinNormalization(x,Max,Min):
x = (x - Min) / (Max - Min);
return x
2、Z-score标准化:
该方法通过给出原始数据的均值和标准差对数据进行归一化。处理后的数据符合标准正态分布,即均值为0,标准差为1。这里的关键是复合标准正态分布。我个人认为特征的分布在一定程度上发生了变化。变换函数为:
实现代码:
def Z_ScoreNormalization(x,mu,sigma):
x = (x - mu) / sigma;
return x
3、Sigmoid函数:
sigmoid函数是一个S形曲线的函数,是一个很好的阈值函数。它在 (0, 0.5) 处中心对称,在 (0, 0.5) 附近有一个比较大的斜率,当数据趋于正无穷和负无穷时,映射的值会趋向于 1 和 0,即我非常喜欢的一种“标准化方法”。
之所以加引号,是因为我觉得 Sigmoid 函数在阈值分割方面也有很好的表现。根据公式的变化,可以改变分割阈值。这里作为归一化方法,我们只考虑 (0, 0.5) 作为分割阈值。点情况:
实现代码:
def sigmoid(X,useStatus):
if useStatus:
return 1.0 / (1 + np.exp(-float(X)));
else:
return float(X)
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ python中的参数是如何显式输入的?11/03
- ♥ 如何用python在地图上绘制比例尺?12/07
- ♥ python django 框架中的单元测试是如何进行的?12/18
- ♥ 如何在python中输入数据08/20
- ♥ 如何在python中删除空字符串11/15
- ♥ 如何在 Python 中四舍五入?09/15
内容反馈