精通 Java 机器学习(五)
十、附录 A:线性代数
线性代数在机器学习中非常重要,它为我们提供了一系列工具,这些工具对于处理数据和从中提取模式非常方便。此外,当在许多机器学习中必须成批处理数据时,当在优化或数据预处理或分析中的任何数量的操作中实施软件解决方案时,使用“矢量化”形式作为传统循环结构的替代,可以获得很高的运行时效率。
下面我们将只考虑实数域。因此,向量表示一个由 n 个实数值组成的数组。矩阵
是一个由实数值组成的 m 行和 n 列的二维数组。
这里介绍了线性代数基础中的一些关键概念。
矢量
向量 x (小写,粗体,约定;等价地,可以看作是n-维空间中的一个点。通常,当我们说向量时,我们指的是列向量。列向量的转置是元素个数相同的行向量,排列成单行。
向量的标量积
也称为点积,标量积定义为两个长度相等的向量。运算的结果是一个标量值,并且是通过对向量的相应元素的乘积求和而获得的。因此,给定向量 x 和 y :
点积 x T y 给出为:
矩阵
一个矩阵是一个二维数组。每个元素都可以根据其行和列的位置进行索引。因此,一个 3×2 的矩阵:
矩阵的转置
交换矩阵中的行和列产生转置。因此, A 的转置是一个 2×3 矩阵:
矩阵加法
矩阵加法被定义为具有相同形状的两个矩阵的元素相加。设 A 和 B 为两个 m x n 矩阵。它们的和 C 可以写成如下:
C i,j = A i,j + B i,j
标量乘法
与标量相乘产生一个矩阵,其中每个元素由标量值缩放。这里 A 乘以标量值 d :
矩阵乘法
如果 A 的列数等于 B 的行数,则两个矩阵 A 和 B 可以相乘。如果 A 的尺寸为 m x n 并且 B 的尺寸为 n x p ,则产品 AB 的尺寸为 m x p :
矩阵产品的特性
分配性超过加法:A(B + C) = AB + AC
结合性:A(BC) = (AB)C
非交换性:AB ≠ BA
向量点积是可换的:xTy=yTx
积的转置是转置的积:(ABT =ATBT
线性变换
在线性代数中,矩阵和向量的乘积有着特殊的重要性。考虑 3×2 矩阵 A 和 2×1 向量 x 的乘积,产生 3×1 向量 y :
(三)
(R)
考虑前面的矩阵矢量积的两个视图是有用的,即列图像( C 和行图像( R )。在列图中,乘积可视为矩阵列向量的线性组合,而行图可视为矩阵行与向量的点积
矩阵求逆
矩阵与其逆矩阵的乘积就是单位矩阵。因此:
如果矩阵逆矩阵存在的话,它可以用来求解由前面的向量矩阵乘积方程表示的联立方程组。考虑一个方程组:
x 1 + 2 x 2 = 3
3 x 1 + 9 x 2 = 21
这可以表示为一个包含矩阵矢量积的等式:
我们可以通过将两边乘以矩阵逆来求解变量 x 1 和 x 2:
矩阵的逆矩阵可以用不同的方法计算。建议读者观看斯特朗教授的麻省理工学院讲座:bit.ly/10vmKcL。
特征分解
矩阵可以被分解成因子,这些因子可以给我们对矩阵所代表的转换的有价值的洞察力。作为特征分解的结果,获得特征值和特征向量。对于给定的方阵 A ,特征向量是一个非零向量,当乘以矩阵时,它被转换成自身的缩放版本。标量乘数是特征值。特征向量的所有标量倍数也是特征向量:
A****v=λv
在前面的例子中, v 是特征向量,λ是特征值。
矩阵 A 的特征值方程由下式给出:
(A**—λI)v= 0**
特征值的非零解由行列式表示的次数为 n 的特征多项式方程的根给出:
然后通过求解Av**=λv 中的 v 可以找到特征向量。**
一些矩阵,称为可对角化矩阵,可以完全由它们的特征向量和特征值构成。如果λ是矩阵 A 的特征值在其主对角线上的对角矩阵, Q 是列为 A 的特征向量的矩阵:
那么A = QλQ**-1。**
正定矩阵
如果一个矩阵只有正的特征值,则称这个矩阵为正定矩阵**。如果特征值为正或为零,则该矩阵称为正半定矩阵。对于正定矩阵,事实是:**
x**T??Ax≥0
奇异值分解
SVD 是任何矩形矩阵的一个分解,一个维度为 n x p 的**,并且被写成三个矩阵的乘积:**
U 定义为 n x n , S 为对角 n x p 矩阵, V 为 p x p 。 U 和 V 是正交矩阵;那就是:
S 的对角值称为 A 的奇异值。 U 的列称为 A 的左奇异向量, V 的列称为 A 的右奇异向量。左奇异向量是 A T A 的正交特征向量,右奇异向量是 AA T 的正交特征向量。
SVD 表示将原始数据扩展到一个坐标系中,使得协方差矩阵是一个对角矩阵。
十一、附录 B:概率
这里简单介绍一下概率的基本概念。
概率公理
Kolmogorov 的概率公理可以用可能事件的样本空间 S 、 E 1、 E 2、 E 3、… E n 和事件 E 的实值概率 P(E) 来表述。公理是:
- P(E) ≥ 0 对于所有的 eϵs
- P(S) = 1
总的来说,这些公理认为概率不能是负数——不可能事件的概率为零——样本空间之外的事件是不可能的,因为它是所考虑的可能性的宇宙,并且两个互斥事件中任何一个发生的概率等于它们各自概率的总和。
贝叶斯定理
以证据 X 为条件的事件 E 的概率与事件的先验概率和事件已经发生的证据的可能性成正比。这是贝叶斯定理:
P(X) 是归一化常数,也叫 X 的边际概率。 P(E) 为先验, P(X|E) 为似然。 P(E|X) 也叫后验概率。
用后验概率和先验概率表示的贝叶斯定理被称为贝叶斯法则。
密度估计
从总体中随机抽取样本数据,估计随机变量的隐藏概率密度函数,称为密度估计。高斯混合和核密度估计是用于特征工程、数据建模和聚类的例子。
给定随机变量 X 的概率密度函数 f(X) ,与 X 的值相关联的概率可以被发现如下:
密度估计可以是参数化的,其中假设数据来自已知的分布族,并且例如通过估计分布的参数来估计 f(x) ,并且在正态分布的情况下估计σ ² 。另一种方法是非参数的,其中没有对观察数据的分布进行假设,并且允许数据确定分布的形式。
意思是
随机变量的长期平均值被称为期望值或平均值。样本平均值是观测数据的相应平均值。
在离散随机变量的情况下,平均值由下式给出:
例如,掷出单个公平骰子的点数平均数是 3.5。
对于概率密度函数为 f(x) 的连续随机变量,均值为:
方差
方差是随机变量与其均值之差的平方的期望值。
在离散情况下,使用前面讨论的定义的平均值,以及概率质量函数 p(x) ,方差为:
在连续情况下,情况如下:
一些连续分布没有均值或方差。
标准偏差
标准偏差衡量数据相对于其平均值的分布程度。它是方差的平方根,与方差不同,它以与数据相同的单位表示。这里给出了离散和连续随机变量的标准偏差:
- 离散案例:
- 连续案例:
高斯标准差
从较大人口中随机抽取样本的标准差是人口标准差的有偏估计。基于特定的分布,对这种有偏估计的校正可以不同。对于高斯或正态分布,方差通过的值进行调整。
根据之前给出的定义,有偏估计值 s 由下式给出:
在上式中,是样本平均值。
使用贝塞尔修正的无偏估计值为:
协方差
在两个随机变量的联合分布中,随机变量与其各自均值的偏差乘积的期望称为协方差。因此,对于两个随机变量 X 和 Y ,等式如下:
=e[xy]–xμy
如果两个随机变量是独立的,那么它们的协方差为零。
相关系数
当协方差被两个随机变量的标准差的乘积归一化时,我们得到相关系数ρX,Y ,也称为皮尔逊积矩相关系数:
相关系数只能取-1 和 1 之间的值。系数+1 意味着随机变量之间存在完美的递增线性关系。-1 表示完美的递减线性关系。如果两个变量相互独立,则皮尔逊系数为 0。
二项分布
参数为 n 和 p 的离散概率分布。随机变量是一个二元变量,在单次试验中,结果的概率由 p 和1–p给出。概率质量函数给出了在 n 次独立试验中 k 次成功的概率。
参数: n,k
PMF:
其中:
这是二项式系数。
均值:EX=NP
方差:Var(X)=NP(1—p
泊松分布
泊松分布给出了一个事件在给定时间段或给定空间区域发生次数的概率。
参数λ是给定时间间隔内出现的平均次数。在该间隔内观察到的 k 个事件的概率质量函数为
PMF:
![Poisson distribution
均值:E[ X ] = λ
方差: Var(X) = λ
高斯分布
高斯分布,又称正态分布,是一种连续的概率分布。其概率密度函数用均值和方差表示如下:
平均:
标准偏差:σ
方差:σ2
标准正态分布是均值为 0,标准差为 1 的情况。标准正态分布的 PDF 如下所示:
中心极限定理
中心极限定理说,当你有几个独立且同分布的随机变量,其分布具有明确定义的均值和方差时,大量这些观察值的平均值(或总和)近似正态分布,而不考虑母分布。此外,极限正态分布与母体分布具有相同的均值,并且方差等于基础方差除以样本大小。
给定一个随机样本 X 1, X 2, X 3 … X n 用*=E**XI】和σ2*= Var(XI),样本均值:![Central limit theorem**大致正常
中心极限定理有几个变体,其中独立性或同分布的约束被放松,但收敛到正态分布仍然遵循。
误差传播
假设有一个随机变量 X ,它是多个观测值的函数,每个观测值都有自己的分布。给定组成 X 的测量量的相应值,关于 X 的平均值和方差有什么说法?这就是误差传播的问题。
假设 x 是通过观察变量 u 、 v 等确定的量:
x = f(u,v,)
让我们假设:
x 中关于 u 、 v 等的方差的不确定性可以用 x 的方差来表示:
从 x 的方差的泰勒展开式,我们得到如下结果:
这里,是协方差。
同样,我们可以确定平均值的传播误差。给定具有由 s i 表征的 N 测量值和xT4I 不确定度,可写出以下公式:
使用:
这些方程假设协方差为 0。
假设sI= s*——也就是说,所有的观测值都有相同的误差。*
然后,。
自
因此,。