机器学习中的数学(1):法协方差定义和协方差矩阵计算过程实例

  1. 协方差的定义

在概率论和统计学中用于衡量两个变量的总体误差。而方差是协方差的一种特殊情况,即当两个变量是相同的情况。
协方差表示的是两个变量的总体的误差,这与只表示一个变量误差的方差不同。 如果两个变量的变化趋势一致,也就是说如果其中一个大于自身的期望值,另外一个也大于自身的期望值,那么两个变量之间的协方差就是正值。 如果两个变量的变化趋势相反,即其中一个大于自身的期望值,另外一个却小于自身的期望值,那么两个变量之间的协方差就是负值。

2 协方差矩阵实例

1.协方差公式:

这里写图片描述
如果一个变量是增加的趋势,另一个也是增加的趋势,证明是正相关,如果另一个朝相反的趋势,是负相关;如果协方差的值是0,证明他们不相关。
站在大数据的基础上考虑问题,使用机器学习算法挖掘数据,一般样本会有多个特征,如果用矩阵表示就是多维数据。

2.协方差矩阵:由数据集中两两变量的协方差组成。矩阵的第(i,j)(i,j)个元素是数据集中第ii和第jj个元素的协方差。例如,三维数据的协方差矩阵如下所示:
公式:
这里写图片描述

举个例子:有4个样本,每一行代表一个样本有3个特征:
第一个样本 2 , 0 , -1.4
第二个样本 2.2.,0.2 , -1.5
第三个样本 2.4., 0.1 , -1
第三个样本 1.9., 0 , -1.2
。。。。。一维 二维 三维

计算上面的矩阵的协方差,

重点是具体怎么算的呐?我被它难住就在这里,因为你需要处理样本的特征,并验证特征之间是否有关联性啊,解:
三维数据(三列元素),第一列均值2.125,第二列均值0.075,第三列均值 -1.275。
根据公式计算:
这里写图片描述
计算每个元素。

import numpy as np
X = [[2, 0, -1.4],
    [2.2, 0.2, -1.5],
    [2.4, 0.1, -1],
    [1.9, 0, -1.2]]
print(np.mean(X,axis=0))
print(np.cov(np.array(X).T))
  1. numpy mean函数的axis参数

numpy提供的函数里含有一堆参数,有利于计算多维矩阵的求和、方差以及协方差。
axis=0,那么输出矩阵是1行,求每一列的平均(按照每一行去求平均);axis=1,输出矩阵是1列,求每一行的平均(按照每一列去求平均)。还可以这么理解,axis是几,那就表明哪一维度被压缩成1。
结果:
[ 2.125 0.075 -1.275]
[[ 0.04916667 0.01416667 0.01916667]
[ 0.01416667 0.00916667 -0.00583333]
[ 0.01916667 -0.00583333 0.04916667]]

参考链接:
链接1
链接2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值