因为公司项目需求,我也跟着学习了机器学习方面的知识,狠狠补了一下数学知识。统计学是关于认识客观现象总体数量特征和数量关系的科学。它是通过搜集、整理、分析统计资料,认识客观现象数量规律性的方法论科学,方差、标准差、均值都是统计学的基础。
均值、标准差、方差都是为了通过数据计算出样本集合的潜在信息,我们可通过潜在信息判断数据的相关性。
但是均值、标准差、方差都只适用于一维数据,比如给一组体重【105,110,120,130】,便可适用于利用方差标准差来进行计算。但如果现在还有一组身高呢,比如【172,178,180,182】,想通过这两组数据来获得身高和体重的相关性,就无法通过方差和标准差来计算了。所以,面对这样的数据集,就需要利用我们的协方差。
我们先来看看协方差的基本性质:
Cov(x,y)便是求得体重和身高的相关性,若为整数,说明体重随身高的增长而增长,若为负数,则体重随身高的增长而降低 。
下面我们运用python的numpy库来试验一下:
import numpy
首先导入我们的NumPy库,NumPy是Python语言的一个扩充程序库。支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数。
x=[100,90,110,120,140,130] //定义一组体重
y=[65,60,55,50,51,45] //定义一组身高
z=[1,0,1,1,1,1] //定义一组性别
f=[s,y,z]
a=numpy.cov(f) //运用cov求得协方差矩阵
print(a)
运行之后得到以下结果,那该如何解析呢?
我们通过cov函数求得协方差矩阵,而协方差矩阵的特性便是对角线是各个维度的方差
得出的结果便是与以上一一对应,由此我们可以得到多个weidu维度偏离其均值的程度,度量多个维度之间关系的统计量,且由此可见,协方差矩阵是一个对称矩阵。