机器学习笔记1—z-score(matlab)

简介

对于一个向量X,可以利用z-score方法将其标准化为X‘,向量X中的每一个值x转化为x’的计算公式如下:x’=(x-mean(X))./std(X)
所以,可以理解为z-score 标准化(正太标准化)是基于原始数据的均值(mean)和标准差(standard deviation)进行数据的标准化。

matlab使用方法

  • 输入是向量
>> a=[1,2,3]

a =
     1     2     3
     
>> b=zscore(a)

b =

    -1     0     1

>> 
  • 输入是矩阵(默认是使用矩阵a每一列的向量来计算)
>> a=[1,2,3;4,5,6]

a =

     1     2     3
     4     5     6 
     
>> b=zscore(a)

b =

   -0.7071   -0.7071   -0.7071
    0.7071    0.7071    0.7071
    
>>
  • 输入是矩阵,想要使用矩阵a每一行的向量来计算,使用方法如下
>> a=[1,2,3;4,5,6]

a =

     1     2     3
     4     5     6

>> b=zscore(a, 0, 2)

b =

    -1     0     1
    -1     0     1

  • 讲解:Z = zscore(X,flag,dim)
  • flag参数:
    • 如果flag为0(默认值),则zscore使用样本标准差对X进行缩放,在标准差公式的分母中使用n -1。 zscore(X,0)与 zscore(X)相同。
    • 如果flag为1,则zscore使用总体标准差对X进行缩放,其中n为标准差公式的分母。
  • dim参数:
    • 如果dim = 1,则zscore使用沿矩阵X 列 的平均值和标准偏差,如果dim = 2,则zscore使用沿矩阵X 行 的平均值和标准偏差。

zscore使用场景

可通过zscore将两组或多组数据转化为无单位的zscore分值,使得数据标准统一化。若转换后,某些数值较大,则表明偏离均值较远,则可舍去这几组数据。

参考博客:
数据标准化方法z-score讲解(matlab)
3.4.2数据标准化(一) - Z-Score标准化

你可能感兴趣的:(机器学习)