《机器学习:算法视角(原书第2版)》 —2.4.2 方差与协方差
2.4.2 方差与协方差
如果给出一组随机数,那么我们就已经知道如何计算集合的均值以及中位数。 但是,还有其他有用的统计数据可以计算,其中一个是期望(expectation)。期望这个名称显示了大多数概率论的***根源,因为它描述了你可以期望赢得的金额。 计算过程为将每种可能性的收益与该可能性发生的概率相乘,然后将它们全部加在一起。因此,如果在街上你碰到有人以1美元的价格出售抽奖券,并且告诉你奖金为10万美元,而且他们正在销售20万张抽奖券,那么可以计算出你的抽奖券的预期价值:
(2.21)
其中,-1是抽奖券的价格,在200000中有199999次没有赢得奖金,且99999是奖金减去抽奖券的费用。请注意,预期值不是一个真正的值:无论发生什么,你都不会真正得到50美分。如果我们只是计算一组数字的期望值,那么最终将得到平均值。
数据集的方差是度量数据分布的,通过集合中每个元素与集合的期望值(平均值,μ)之间的平方距离总和来计算:
(2.22)
方差的平方根σ被称为标准差(standard deviation)。方差是观察变量相对于其平均值的变化。我们可以推广这一点来看两个变量如何变化,这被称为协方差(covariance),度量两个变量的依赖程度(在统计意义上)。 它的计算方法是:
(2.23)
其中v是集合{yi}的均值。如果两个变量是独立的,那么协方差是0(被称为两个变量不相关);而如果它们同时增加和减少,那么协方差是正的;如果一个上升而另一个下降,则协方差是负的。
协方差可用于查看一组数据中所有变量对之间的相关性。我们需要计算每对的协方差,然后将这些协方差组合成一个协方差矩(covariancematrix)写成:
其中xi是描述第i个变量元素的列向量,μi是它们的均值。注意,矩阵是方阵,矩阵主对角线上的元素等于方差,并且是对称的,因为cov(xi,xj)=cov(xj,xi)。等式(2.24)也可以写成矩阵的形式Σ=E[(X-E[X])(X-E[X])T],变量X的均值是E(X)。
我们将在第6章中看到协方差矩阵还有其他用途,但是现在我们只考虑它告诉我们的关于数据集的内容。从本质上讲,它说明了数据在每个数据维度上的变化情况。如果我们想再次考虑距离,这是很有用的。假设给出图2-13所示的两个数据集和测试点(图中用大“X”标记),并询问“X”是否是数据的一部分。对于左边的图,你可能会说是,而对于右图,你会说不是,即使这两个点距离数据中心的距离相同。 图2-13 两个不同的数据集和一个测试点出现这种情况的原因是,除了查看均值之外,你还查看了测试点与实际数据点扩散程度的相关位置。如果数据非常紧密,那么测试点必须接近平均值,而如果数据非常分散,则测试点与平均值的距离无关紧要。我们可以考虑使用它来构建一个距离度量。这种度量方法在1936年被提出来,并称为马氏距离(Mahalanobis distance),公式如下:
(2.25)
其中x是数据的列向量,μ是均值的列向量,Σ-1是协方差矩阵的逆。如果我们将协方差矩阵设置为单位矩阵,则马氏距离退化为欧式距离。
计算马氏距离需要一些相当高配置的计算机来计算协方差矩阵和它的逆。 幸运的是,这些在NumPy中很容易做到。有一个函数可以估计数据集的协方差矩阵(对于数据矩阵x,调用函数np.cov(x)),且其逆是np.linalg.inv(x)。当然,逆不一定都存在。
我们现在将考虑概率分布,它描述的是在可能的特征值范围内发生某事物的概率。有很多概率分布通常足以拥有名称,但有一个比其他任何名称更为人所知,因为它经常发生;因此,这是我们唯一关注的概率分布。
- 点赞
- 收藏
- 关注作者
评论(0)