数据的标准化:

将数据按比例缩放,使之落入一个小的特定区间,一般目的在于:去除数据的单位限制,转化为无量纲的纯数值,便于不同单位或量级的指标能够进行比较和加权。数据的归一化便是一个典型的案例。

数据的归一化:

  1. 把数转换为(0,1)之间的小数
  2. 把有量纲的表达式转换为无量纲的表达式

归一化的好处:在多指标评价体系中,由于个评价指标的性质,通常具有不同的量纲和数量级。当各指标间的水平相差很大时,如果直接用原始指标值进行分析,就会突出数值较高的指标在综合分析中的作用,相对削弱值水平低指标的作用,因此,为了保证结果的可靠性,需要对原始数据进行标准化处理。

经验上来说,归一化就是让不同维度之间的特征在数值上有一定比较性,可以大大提高分类器的准确性。

1.1 数据标准化

  1. Min-Max标准化

    Min-Max标准化是指对原始数据进行线性变换,将值映射到[0,1]之间

  2. Z-Score标准化

    Z-Score标准化是指:基于原始数据的均值(mean)和标准差(standard deviation)来进行数据的标准化。其主要目的是将不同量级的数据统一化为同一个量级,统一用计算出的Z-Score值衡量,保证了数据间具有可比性。

  3. 小数定标(Decimal scaling)标准化

  4. 均值归一法(Mean normalization)

    下图的 u是表示均值,value表示在一组数据中第i个元素的值


通过原始数据中的均值、最大值和最小值来进行数据标准化。(上述两条公式都是差不多的)

  1. 向量归一化

  2. 指数转换
    指数转换是指:通过对原始数据进行相应的指数函数变换来进行数据的标准化。常见的指数转换函数方法如下所示:

    lg函数:

    计算公式:

    x为原始数据中的一个数据,Xmax表示原始数据中的最大值

    Softmax函数:

    计算公式:
    x′=ex/i=1∑n​exi​
    x为原始数据中的一个数据,e为自然函数,分母表示的是原始数据中每个数据被e求指数后的和。分子表示的是原始数据中的一个数据被e求指数。

    Sigmoid函数:

    计算公式:
    x′=1/(1+e−x)
    同样,x为原始数据中的一个常数,e为自然常数。

1.2 实现

[python金融风控评分卡模型和数据分析(加强版)](https://ke.qq.com/course/package/43071)import numpy as np
import math
'''
around(arr,decimals=?)?表示保留多少位小数
'''class Datanorm:def __init__(self):self.arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])self.x_max = self.arr.max() self.x_min = self.arr.min() self.x_mean = self.arr.mean() self.x_std = self.arr.std() def Min_MaxNorm(self):arr = np.around(((self.arr - self.x_min) / (self.x_max - self.x_min)), decimals=4)print("Min_Max标准化:{}".format(arr))def Z_ScoreNorm(self):arr = np.around((self.arr - self.x_mean) / self.x_std, decimals=4)print("Z_Score标准化:{}".format(arr))def Decimal_ScalingNorm(self):power = 1maxValue = self.x_maxwhile maxValue / 10 >= 1.0:power += 1maxValue /= 10arr = np.around((self.arr / pow(10, power)), decimals=4)print("小数定标标准化:{}".format(arr))def MeanNorm(self):first_arr = np.around((self.arr-self.x_mean) / (self.x_max - self.x_min), decimals=4)second_arr = np.around((self.arr - self.x_mean)/self.x_max, decimals=4)print("均值归一法:\n公式一:{}\n公式二:{}".format(first_arr, second_arr))def Vector(self):arr = np.around((self.arr/self.arr.sum()), decimals=4)print("向量归一法:{}".format(arr))def exponeential(self):first_arr = np.around(np.log10(self.arr) / np.log10(self.x_max), decimals=4)second_arr = np.around(np.exp(self.arr)/sum(np.exp(self.arr)), decimals=4)three_arr = np.around(1/(1+np.exp(-1*self.arr)), decimals=4)print("lg函数:{}\nSoftmax函数:{}\nSigmoid函数:{}\n".format(first_arr,second_arr,three_arr))if __name__ == "__main__":a = Datanorm()a.Min_MaxNorm()a.Z_ScoreNorm()a.Decimal_ScalingNorm()a.MeanNorm()a.Vector()a.exponeential()

1.3 参考文献

1.数据的标准化
转载:https://blog.csdn.net/weixin_42792088/article/details/103971069

数据标准化的常见方法(Min-Max标准化、Z-Score标准化等)相关推荐

  1. 数据预处理的常见方法

    数据预处理 定义内涵 用户从多种渠道收集的数据可能包含噪音,或是存在不一致.不完整等问题,无法直接 进行训练.为了提高数据的质量,在将数据交给模型训练之前,需要对数据预处理.数据预 处理是指在数据分析 ...

  2. java 类型转换方法_java数据类型转换的常见方法

    public class Testfun { public static void main(String[] args) { // (一)跨Number父类的类型转换 // 1.str转int =& ...

  3. python中常用的内置方法(min,max,sum,梅举,zip)

  4. 数据缺失,数据异常,数据标准化的处理方法

    数据缺失 一.缺失值产生的原因 缺失值的产生的原因多种多样,主要分为机械原因和人为原因.机械原因是由于机械原因导致的数据收集或保存的失败造成的数据缺失,比如数据存储的失败,存储器损坏,机械故障导致某段 ...

  5. 归一化的好处及归一化,标准化的处理方法

    归一化后有两个好处 1. 提升模型的收敛速度 如下图,x1的取值为0-2000,而x2的取值为1-5,假如只有这两个特征,对其进行优化时,会得到一个窄长的椭圆形,导致在梯度下降时,梯度的方向为垂直等高 ...

  6. Sklearn标准化和归一化方法汇总(2):Min-Max归一化

    Sklearn中与特征缩放有关的五个函数和类,全部位于sklearn.preprocessing包内.作为一个系列文章,我们将逐一讲解Sklearn中提供的标准化和归一化方法,以下是本系列已发布的文章 ...

  7. python归一化处理_详解python实现数据归一化处理的方式:(0,1)标准化

    在机器学习过程中,对数据的处理过程中,常常需要对数据进行归一化处理,下面介绍(0, 1)标准化的方式,简单的说,其功能就是将预处理的数据的数值范围按一定关系"压缩"到(0,1)的范 ...

  8. Sklearn标准化和归一化方法汇总(3):范数归一化

    Sklearn中与特征缩放有关的五个函数和类,全部位于sklearn.preprocessing包内.作为一个系列文章,我们将逐一讲解Sklearn中提供的标准化和归一化方法,以下是本系列已发布的文章 ...

  9. python归一化后全部都是0咋办_详解python实现数据归一化处理的方式:(0,1)标准化...

    在机器学习过程中,对数据的处理过程中,常常需要对数据进行归一化处理,下面介绍(0, 1)标准化的方式,简单的说,其功能就是将预处理的数据的数值范围按一定关系"压缩"到(0,1)的范 ...

最新文章

  1. 20年的人工智能设计总结:向产品中注入人工智能的指南
  2. python学习音频-详解python播放音频的三种方法
  3. 基于单目视觉的智能车辆视觉导航系统设计
  4. Android数据库高手秘籍
  5. c# winForm DotNetBar控件之SuperGridControl
  6. 【移动通信】天线原理
  7. python代码用c语言封装_使用C语言扩展Python程序的简单入门指引
  8. 一鼓作气 博客--第六篇 note6
  9. Fiddle用于移动端抓包
  10. 你会接受同门师兄的追求吗?
  11. 信息学奥赛一本通 1091:求阶乘的和 / 2026:【例4.12】阶乘和 / OpenJudge NOI 1.5 34
  12. DROP TABLE ** CASCADE CONSTRAINTS PURGE删除表的时候级联删除从表外键
  13. SAP MM ‘Pricing Date Control‘字段的理解
  14. 静态路由及默认路由实验配置
  15. JHipster中文官网
  16. 用128行代码实现一个文字冒险游戏
  17. 苹果闪存性能测试软件,IphoneXS64GB VS 256GB 性能测试?,苹果不想让你知道的事!...
  18. GitHub上十大热门Python项目
  19. 谷歌I/O大会发布语言模型LaMDA2,以及更多打开想象力的落地应用
  20. 联想Y470 非虚拟机安装苹果Mac OS X Mavericks 10.9.1教程详解(文字+图片),通俗易懂亲自动手——序列一之综述简介,硬盘分区

热门文章

  1. 繁易平台对接阿里云平台: MQTT方式
  2. 我的Linux PC开发环境
  3. 2021年机械员-岗位技能(机械员)考试题及机械员-岗位技能(机械员)免费试题
  4. ace缓存扩展接口_Laravel框架中实现使用阿里云ACE缓存服务
  5. 面向对象:13、内部类
  6. Google Nexus 4 Android4.4 刷机
  7. 35岁只是普通程序员,还有救吗?
  8. 吴恩达机器学习课程全(python实现)
  9. 硕士论文中期汇报ppt_华北理工大学附属唐山市人民医院硕士学位论文开题、中期汇报会圆满结束...
  10. 大学生蓝桥杯比赛时间2020_【足球比赛】我院参加2020年滨州学院“校长杯”大学生足球比赛...