机器学习 - 标准差
什么是标准差?
标准差是一个描述值分散程度的数字。
标准差低表示大多数数字都接近平均值。
标准差高表示值分布在更广的范围内。
示例:这次我们记录了 7 辆车的速度
speed = [86,87,88,86,87,85,86]
标准差是
0.9
这意味着大多数值都在平均值 86.4 的 0.9 范围内。
让我们用一组范围更广的数字来做同样的事情
speed = [32,111,138,28,59,77,97]
标准差是
37.85
这意味着大多数值都在平均值 77.4 的 37.85 范围内。
如您所见,较高的标准差表示值分布在更广泛的范围内。
NumPy 模块有一个方法可以计算标准差
示例
使用 NumPy 的 std()
方法来查找标准差
import numpy
speed = [86,87,88,86,87,85,86]
x = numpy.std(speed)
print(x)
自己尝试 »
方差
方差是另一个指示值分散程度的数字。
实际上,如果您取方差的平方根,您就会得到标准差!
或者反过来,如果您将标准差乘以自身,您将得到方差!
要计算方差,您必须执行以下操作
1. 找到平均值
(32+111+138+28+59+77+97) / 7 = 77.4
2. 对于每个值:找到与平均值的差值
32 - 77.4 = -45.4
111 - 77.4 = 33.6
138 - 77.4 = 60.6
28 - 77.4 = -49.4
59 - 77.4 = -18.4
77 - 77.4 = - 0.4
97 - 77.4 = 19.6
3. 对于每个差值:找到平方值
(-45.4)2 = 2061.16
(33.6)2 = 1128.96
(60.6)2 = 3672.36
(-49.4)2 = 2440.36
(-18.4)2 = 338.56
(- 0.4)2 = 0.16
(19.6)2 = 384.16
4. 方差是这些平方差的平均数
(2061.16+1128.96+3672.36+2440.36+338.56+0.16+384.16)
/ 7 = 1432.2
幸运的是,NumPy 有一个方法可以计算方差
示例
使用 NumPy 的 var()
方法来查找方差
import numpy
speed = [32,111,138,28,59,77,97]
x = numpy.var(speed)
print(x)
自己尝试 »
标准差
正如我们所学,找到标准差的公式是方差的平方根
√1432.25 = 37.85
或者,如之前的示例所示,使用 NumPy 来计算标准差
示例
使用 NumPy 的 std()
方法来查找标准差
import numpy
speed = [32,111,138,28,59,77,97]
x = numpy.std(speed)
print(x)
自己尝试 »
符号
标准差通常用符号 Sigma 表示:σ
方差通常用符号 Sigma 平方表示:σ2
章节总结
标准差和方差是机器学习中经常使用的术语,因此了解如何获取它们以及它们背后的概念非常重要。