1.Min-Max scaling将该样本每个特征下的最大值与最小值之差作为缩放倍数,每个特征下没有任何一个数会超过其最值之差,所以作为分母;分子是每个特征下的值与最小值之差。全为0的特征,缩放后值为0。取值范围[0,1]代码表现如下:

# 引用相应的库,numpy用于生成缺失值,引用sklearn.processing库,其中包含绝大部分数据与处理方法
from sklearn import preprocessing
import numpy as np# 原始数据X
X = np.array([[3, -2., 2.], [2., 0., 0.], [-1, 1., 3.]])  # 按行表示,按列计算
# 初始化数据预处理器,本例中为最小最大值缩放
min_max_scaler = preprocessing.MinMaxScaler()
# 数据转换并打印
X_minmax = min_max_scaler.fit_transform(X)
print("缩放规范化结果如下:\n")
print(X_minmax)
# 输出其缩放倍数
print("输出其缩放倍数:\n")
print(min_max_scaler.scale_)
# 输出其最小值
print("输出每一列的最小调整:\n")
print(min_max_scaler.min_)
print("输出每一列的最小值:\n")
print(min_max_scaler.data_min_)

输出结果:

缩放规范化结果如下:[[1.         0.         0.66666667][0.75       0.66666667 0.        ][0.         1.         1.        ]]
输出其缩放倍数:[0.25       0.33333333 0.33333333]
输出每一列的最小调整:[0.25       0.66666667 0.        ]
输出每一列的最小值:[-1. -2.  0.]

2.MAxAbsolute Scaling执行效率更高。它在分子上减少了减法运算,分母上也仅采用特征的最大值的绝对值。取值范围[-1,1],分布以0为中心,更稀疏、合理。代码实现如下:

# 引用相应的库,numpy用于生成缺失值,引用sklearn.processing库,其中包含绝大部分的数据与处理方法
from sklearn import preprocessing
import numpy as np
#原始数据X
X = np.array([[3, -2., 2.], [2., 0., 0.], [-1, 1., 3.]])  # 按行表示,按列计算
# 初始化数据预处理器,本例中为最大绝对值缩放
max_abs_scaler = preprocessing.MaxAbsScaler()
#数据转换并打印
X_maxabs=max_abs_scaler.fit_transform(X)
print(X_maxabs)

输出结果如下:

[[ 1.         -1.          0.66666667][ 0.66666667  0.          0.        ][-0.33333333  0.5         1.        ]]

对于希望数据分布到特定的取值范围之间的特殊要求,MaxMin Scaling可以预先设置特定的范围,添加一个x_scale表示设定最大值与最小值之后的缩放变换输出(在第一块代码的基础上)

from sklearn import preprocessing
import numpy as np# 原始数据X
X = np.array([[3, -2., 2.], [2., 0., 0.], [-1, 1., 3.]])  # 按行表示,按列计算
# 初始化数据预处理器,本例中为最小最大值缩放
min_max_scaler = preprocessing.MinMaxScaler()
# 变式 添加x_scale改变缩放变换输出
# 初始化数据预处理器,用MaxMinScaling配置feature——range可转化之后的输出范围
min_max_scaler=preprocessing.MinMaxScaler(feature_range=(-2,6))
# 数据转换并打印
X_minmax=min_max_scaler.fit_transform(X)
print("feature_range=-2,6")
print(X_minmax)

输出结果:

feature_range=-2,6
[[ 6.         -2.          3.33333333][ 4.          3.33333333 -2.        ][-2.          6.          6.        ]]

该方法存在问题,一旦样本某特征的数值超出最大最小值的边界,转化后的特征值存在不稳定的情况(在第一块代码的基础上)

from sklearn import preprocessing
import numpy as np# 原始数据X
X = np.array([[3, -2., 2.], [2., 0., 0.], [-1, 1., 3.]])  # 按行表示,按列计算
# 初始化数据预处理器,本例中为最小最大值缩放
min_max_scaler = preprocessing.MinMaxScaler()
# 引入新数据,数据超出边界,输出特征值不稳定
X_new=np.array([[-3.,-1.,4.]])
X_new_minmax=min_max_scaler.transform(X_new)
print("缩放规范化效果如下:")
print(X_new_minmax)

输出:

缩放规范化效果如下:
[[-6.          0.66666667  8.66666667]]

笔记4.3.1缩放规范化--最小值最大值缩放和最大绝对值缩放相关推荐

  1. 机器学习数据预处理之缺失值:最小值最大值填充

    机器学习数据预处理之缺失值:最小值最大值填充 garbage in, garbage out. 没有高质量的数据,就没有高质量的数据挖掘结果,数据值缺失是数据分析中经常遇到的问题之一.当缺失比例很小时 ...

  2. 象棋中常用的最小值最大值算法及剪枝算法

    1.象棋中通常需要推算当前局面下,每走一步之后的局面分,通常我们可以设定考虑几步棋,通常我们所说的算棋,而计算机的AI算法中最常用的就是最大值最小值算法,而剪枝算法是对最大值最小值算法的一种优化. 如 ...

  3. 机器学习特征工程之特征缩放+无量纲化:最大绝对值缩放(MaxAbsScaler)

    机器学习特征工程之特征缩放+无量纲化:最大绝对值缩放(MaxAbsScaler) 在Andrew Ng的机器学习课程里面,讲到使用梯度下降的时候应当进行特征缩放(Feature Scaling).进行 ...

  4. php 改变图片的宽高,php缩放图片(根据宽高的等比例缩放)示例

    php缩放图片(根据宽高的等比例缩放)示例 发布于 2014-12-07 08:53:31 | 149 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hyperte ...

  5. 【zabix笔记】折线图展示平均值、最大值与最小值

    上周看到zabix显示CPU使用时间指标,利用三条不同颜色的折线叠加显示了平均值.最大值与最小值,以及工作日/非工作日几项信息,非常受启发. 在上图中,深绿色的线显示平均值,浅绿色和深粉色的线分别显示 ...

  6. OpenCV 找出图像中最小值最大值函数minMaxLoc的使用

    功能:从一个矩阵中找出全局的最大值和最小值. 函数cv::minMaxLoc找出最大和最小元素的值和他们的位置.极值是遍历整个矩阵找到,或者当掩码不是一个空矩阵时,是通过遍历指定矩阵区域找到. 函数不 ...

  7. opencv(10) OpenCV 找出图像中最小值最大值函数minMaxLoc

    参数说明: 参数1 a 输入单通道矩阵. 参数2 minVal 返回最小值的指针; 如果不需要输入NULL. 参数3 maxVal 返回最大值的指针; 如果不需要输入NULL. 参数4 minIdx ...

  8. 【OpenGL学习笔记⑥】——3D变换【旋转的正方体 实现地月系统 旋转+平移+缩放】

    ✈️ 文章目录 零. 成果预览图 一.3D立方体的顶点数组 二.纹理旋转 三.纹理缩放 四.画n个3D图形 五.轨道的数学公式 六.深度缓冲(Z 缓冲) 七.完整代码 八.参考附录: 神器的正方体 ☁ ...

  9. 线段树 区间修改 最小值+最大值 最假女选手

    最假女选手 题目描述 在刚刚结束的水题嘉年华的压轴节目放水大赛中,wyywyy如愿以偿的得到了最假女选手的奖项.但是作为主办人的 C_SUNSHINE为了证明wyywyy确实在放水,决定出一道基础题考 ...

最新文章

  1. IOS开发笔记10-Object-C中的对象
  2. [HDOJ4006]The kth great number
  3. python魔法方法好难_一篇干货好文,轻松掌握python魔法方法
  4. 代码覆盖率工具 Istanbul 入门教程
  5. 非Java专家的APM:什么泄漏?
  6. 简易有WEB文件服务器,Python实现简易版的Web服务器(推荐).pdf
  7. 服务器响应HTTP的类型ContentType大全
  8. 云计算的概念_云计算概念掀起涨停潮 美利云奠定板块龙头地位
  9. leetcode hot100(第二部分) + python(c++)
  10. Github客户端使用教程
  11. 计蒜客挑战难题:元素移除
  12. apriori数据集_关联分析——基于Apriori算法实现
  13. QDomNode读取xml
  14. Oracle数据同步接口中,对于NUMBER、DATE类型数据,从resultSet中直接获取造成精度丢失的解决方案
  15. 一文了解attention
  16. 如何在微软的下载商店找到下载的图片?
  17. 计算机涨跌公式,计算机今日涨跌公式,怎么算 股票的涨跌停板 公式是怎么的?...
  18. LSTM的优点和缺点
  19. 阿里云国际版云计算应用在企业领域的优势有哪些
  20. IOS系统通话录音功能的实现方案

热门文章

  1. 360与百度研发工程师的待遇,工作环境全面对比
  2. pantum打印机驱动安装m6506_一键完成 驱动轻松装_奔图 M6506NW_办公打印评测试用-中关村在线...
  3. 迅捷在线压缩批量压缩PDF文件的方法是什么
  4. OAuth 2.0 教程
  5. 亚太元宇宙新纪元峰会于1月12日在上海淳大万丽酒店盛大召开
  6. Java毕业设计-外卖点餐管理系统
  7. PS A11选区和选框工具
  8. 如何统计每个小时用户在线人数?
  9. 解决MySql登录 提示caching_sha2_password
  10. Python 入门 26 —— ASCII 编码、Unicode 编码、 UTF-32、 UTF-16、 UTF-8、 GB2312 编码、 GBK 编码