机器学习总结(基础):偏差和方差、iid、分布
偏差和方差
在监督机器学习中,我们为训练数据提供标签以构建f(x)机器学习模型。
均方误差由方差和偏差组成。由于噪声与机器学习模型无关,并且在训练机器学习模型时不可减少,因此我们可以从讨论中忽略它。
方差是对采样数据变化敏感的误差。如果机器学习训练数据集太小,则复杂模型容易过度拟合。一旦发生这种情况,如果对不同的训练数据进行采样,模型预测可能会发生显著变化。
在N 1-D的训练数据输入下,我们可以用一个N阶多项式完美地拟合一个机器学习模型。下面的红色矩形区域过度拟合,如果ground truth更接近线性方程,则会导致错误的预测。如果最后2个数据点不包含在训练数据集中,或者在红色矩形区域内采样更多的数据点,预测结果将会不同。简而言之,如果机器学习模型是复杂的,并且没有足够的数据来拟合它,那么训练的方差就会很大。
另一方面,当模型不够复杂,无法做出准确预测时,就会出现偏差。如果x的ground truth在下面的圆心附近,偏差会将答案朝一个特定的方向移动,而方差则会将预测散布在ground truth周围。
下面是模型复杂性的演示。随着复杂度的提高,它会更好地拟合训练数据,直到过拟合。此时,训练误差继续减小。但是当我们使用不用于训练的数据点来验证机器学习模型时,验证误差很大,并且随着迭代次数的增加而增加。
下图总结了模型复杂性、偏差和方差之间的关系。减小方差的方法是增加训练数据集的大小,降低模型的复杂度或增加正则化。
独立同分布(iid)
在许多机器学习(ML)问题中,我们假设数据点来自相同的数据分布,并且观测值不影响其他观测值。
这是一个简单的概念,许多机器学习(ML)和深度学习(DL)算法的成功很大程度上取决于它。当数据点和训练批次接近i.i.d时,模型训练更加稳定。
当我们掷100次骰子时,每个数据点都来自相同的分布。当掷骰子的时候,结果是独立于之前的结果的,因此掷骰子是i.i.d。但是,如果我们从一副纸牌中抽取而不进行替换,采样分布就会发生变化,因此不是i.i.d。这样的假设可以在很多情况下简化我们的数学运算。例如,最大似然估计(MLE)中的联合分布可以简化为独立事件的乘法。
这很关键。通过将模型分解为可管理的独立子组件,我们可以显著降低复杂性
协变量偏移
然而,如果我们有一个用骰子训练的模型,如果我们在推理时间内的输入具有不同的分布,那么预测将是错误的,比如庄家切换到一个有偏差的骰子。这就是协变量偏移。最近,有一篇关于在医学领域使用深度学习的报告。虽然深度学习(DL)预测的准确性似乎很高,但在其他医院却显示出不一致的结果。结果发现,一些模型被从少数医院收集的数据过度拟合。当该模型适用于移动设备使用频率较高的地区时,准确度会下降。这是一个协变量偏移问题!
在一些机器学习(ML)或深度学习(DL)问题中,状态可能是高度相关的。时间序列模型的相关性更高。如果我们在优化这些模型时使用梯度下降法,则i.i.d.假设不成立,相应的训练可能非常不稳定。
分布
在这一节中,我们将讨论高斯分布、伽马分布、β分布、狄里克莱分布等分布,不同的分布有不同的参数和不同的形状,用于不同的目的。找到合适的模型可以大大简化计算
期望
对于连续随机变量,f(x)的期望值为
对于离散随机变量,它是
方差和协方差
对于连续随机变量,它是
协方差表明两个变量是正相关还是负相关。如果它为零,则它们是无关的。
方差可以表示为下面的等式
这种形式化对于许多证明是很方便的,包括找到 MLE估计的偏差和方差。
X&Y的协方差是
样本方差
样本方差是通过采样m个数据点来估计总体方差的方法。
但是,采样数据的平均值与数据本身相关。因此,(xᵢ-μ)²将小于总体的数量。为了弥补这一点,我们需要将其除以m-1而不是m(证明)。但是对于样本均值,我们只需要将总和除以m,估计是无偏的。
相关性
协方差显示变量之间的关系,但不能很好地量化变量。每个变量可以是不同的比例(或单位)。相关性对协方差进行归一化,使得每个变量对应于相同的比例。
高斯分布/正态分布
在高斯分布中,68%的数据在1σ内,95%的数据在2σ内。标准正态分布为μ=0和σ=1。
多元高斯分布
多元高斯分布使用高斯模型模拟多变量分布。下图是双变量高斯分布,涉及两个随机变量。
多元高斯分布定义为
其中Σ是协方差矩阵。 该矩阵中的每个元素记录两个随机变量的相关性。我们可以通过下面的来进行采样多元高斯分布
协方差矩阵可以用相关性表示。这是一个二元高斯分布的例子。
中心极限定理
考虑掷骰子,如果骰子是公平的,则掷出的值均匀分布。让我们多次掷骰子并平均结果。我们多次重复实验并收集所有汇总结果。当我们绘制这些结果时,我们将认识到结果是高斯分布的。中心极限定理说:
大量相同分布的随机变量的和倾向于高斯分布。
即我们可以有许多独立的随机变量,比如说每个变量代表一个抛出的结果。当我们将它们加在一起并将其归一化(平均值)时,经过多次试验后的归一化结果往往是高斯分布。该定理推广到自变量的任何分布。因此,无论骰子是公平的,有偏的还是任何数据分布,归一化结果都是高斯分布的。这意味着单个变量可能具有不同的数据分布,但我们可以使用高斯分布来模拟其聚合结果。
如果随机变量已经是高斯分布,且方差为σ²,则归一化结果将是
即聚合结果的方差随着较大样本量的平均值而下降。两个高斯分布变量的和或差也是高斯分布的。
伯努利分布
伯努利分布是具有两种可能结果的事件的离散分布,一个具有概率φ而另一个具有1-φ。
分布也可以写成:
二项分布
二项分布是独立伯努利试验的综合结果。例如,我们掷硬币n次,然后模拟有x次反面的机会。
其中p是反面的概率。二项分布的均值和方差是
伯努利分布中θ的方差是:
分类分布
伯努利分布仅有两种可能的结果。在分类分布中,我们有K个可能的结果,概率为p 1,p 2 p 3,...和pk,所有这些概率加起来为1。
多项式分布
多项式分布是二项分布的推广。它有k个可能的结果。
假设这些结果分别与概率p 1,p 2,...和pk相关。我们收集大小为n的样本,xᵢ表示结果i的计数。联合概率是
在贝叶斯推理中,我们经常通过Beta分布对此概率进行建模(稍后讨论)。
其中
Beta分布
Beta分布的定义与二项分布非常相似。beta分布定义为:
B是归一化因子
它对下面的分子进行归一化,因此计算结果f是概率分布。如果我们将f(x)除以所有可能的x,它等于1。
当a = b = 1时,f(x)对于所有x都是常数,因此,分布是均匀分布的。Beta分布中的两个参数a和b极大地改变了分布的形状。如下所示,Beta分布可以模拟许多形状的分布,包括U形和均匀分布。
二项分布具有与Beta分布类似的形式(红色下划线)。因此,很容易同时操作二项分布和Beta分布。
此外,可以训练上述Beta分布中的θ以在二项分布中对参数p进行建模。Beta分布可以被认为是对分布上的分布进行建模。简而言之,我们可以通过调整a和b来使用Beta分布来学习二项分布的p。简而言之,Beta分布模拟了二项分布的p的所有可能值及其确定性。
如前所述,后者通常是难以处理的。但是,如果我们能用特殊的分布对似然和先验进行建模,我们可以用解析的方法很容易地解决后验问题。
我们将在贝叶斯推理中进一步阐述它。但作为预览,后验非常简单:
Beta分布的均值和方差为:
其中ψ是Digamma函数:
给定观测数据,我们可以利用上述方程逆向设计模型参数。
Dirichlet分布
如果Beta分布是二项分布,则Dirichlet分布是多项式分布。
Dirichlet分布
其中α是Dirichlet分布的参数。它控制分布的形状。由于θ有3个分量,α也由3个值组成,因此我们可以很容易地控制θ的分布形状。Dirichlet分布定义为:
我们可以看到Dirichlet分布与下面的多项式分布之间有着密切的相似性。这就是为什么通过调整α的值来使用它来学习多项式分布是一个很好的选择。
在视觉上,θ1,θ2,θ3的可能值位于三角形平面上,以强制执行这些值总和为1的约束。对于K变量,所有采样值都位于(K -1)-simplex内。即所有K变量总和为1。
下图显示了K = 1和K = 3的一些可能的形状(不同的αᵢ)。如图所示,它可以表示均匀分布,单峰形状和多个模态形状。Dirichlet分布允许我们模拟不同形状的概率分布(给定θ1,θ2,θ3,...总是加1)。
要理解α与形状之间的关系,首先让我们总结一下它的一些属性。
当所有αᵢ都相等时,E(θ ₁)=E(θ ₂)=E(θ ₃),即要使θ ₁,θ ₂,θ ₃均匀分布,我们可以设置所有αᵢ等于1。如果我们想要一个特定的类型,我们使相应的αᵢ远大于1并且也远高于其他αⱼ(假设αⱼ≥1)。
当θᵢ接近0时,p(θᵢ)将接近无穷大,即θᵢ等于0的概率很高。
让所有αᵢ相等,并将其命名为α。这是Dirichlet分布的一种特殊情况,称为对称Dirichlet分布。α不是向量,而是用标量来建模。如下所示,随着我们增加α,我们将非常稀疏的分布变为均匀分布。当α很小时,单个样本中的大多数值xᵢ为零。随着它的增加,分布变得均匀。
dirichlet分布的参数可以重新表示为α和n(α’ᵢ → α nᵢ)的乘积,其中α是称为浓度参数(稀疏性度量)的标量,n是称为其元素总和为1的基度量的向量。
泊松分布
泊松分布模拟在固定时间间隔内发生的给定数量事件的概率。
当事件数量与持续时间尺度相比相对较小时,事件在特定持续时间内发生x次的概率为:
这是不同λ的概率质量函数。
泊松过程是事件以恒定平均速率独立地和连续地发生的方法。
在泊松过程中,
- 您知道平均事件发生率。
- 事件是随机的,彼此独立。事件的发生不会影响另一个事件的发生。
- 等待时间的分布是无记忆的。无论你等待多久都没关系,未来的分布仍然是一样的,即
指数和拉普拉斯分布
指数分布是泊松过程中下一个事件发生之前等待时间的概率分布。该等待时间被建模为具有指数分布的随机变量。如前所述,等待时间的这种分配是无记忆的。即使在过去20分钟内没有发生任何事件,PDF也是一样的。下图显示了分布的形状和数学定义。
对于λ= 0.1,等待超过15的机会是0.22。
拉普拉斯分布也称为双指数分布,可以认为是两个背靠背粘合在一起的指数分布。
Gamma分布
指数分布和卡方分布是Gamma分布的特例。Gamma分布可以被认为是k个独立的指数分布随机变量的总和。
直观地说,它是第k个事件发生的等待时间的分布。这是Gamma分布的数学定义。
Gamma分布通常使用许多不同的符号:
α通常被写成k,这是第k个事件。如图所示,α控制形状。k=1是具有指数衰减形状的指数分布。随着k的增加,曲线的偏度减小。分布将与累积分布趋于平稳。
它看起来更接近中心极限定理所建议的正态分布。
接下来,我们分别确定k=2和绘制β=1和2。如下图所示,形状保持不变。但如果我们更靠近x轴和y轴上的单位,随着β的增加,值的扩展会减小。直观地说,当事件率增加时,预期等待时间减少。
如果两条曲线具有相同的比例,则第二个图中的值范围将更窄。
根据α和β的值,可以看大一部分正在增长,而另一部分正在衰减。因此它可以模拟大范围的密度形状。
根据定义,如果x为负,伽马分布的密度为零。在建模实际问题时,这是一个很好的约束条件,X和高度一样,永远不能为负。这是伽马分布的不同参数图。
Gamma分布的期望和方差是:
卡方分布
假设Z 1,Z 2,...和ZK是ķ个独立随机变量,每个都具有标准正态分布。我们对每个变量进行平方并将它们相加。我们多次重复这些实验,平方结果的分布称为卡方分布²,k是自由度数。以下是具有不同k值的数学定义及其分布图。
让我们用一个k为3的例子来说明它。在每次测试中,我们抽取3名学生。我们把它们的体重归一化,平方,然后加在一起。假设它们的体重(磅)是(165,175,145)和归一化值(0.17,0.5,-0.5)。它的平方和是0.53。我们重复运行1000次并绘制结果。它应该看起来像上面的淡蓝色曲线,k=3。
让我们绘制100个学生样本(i从1到100)并计算下面的卡方统计量。如果该值过高,则表明它在表示总体方面是一个糟糕的样本。
卡方分布是偏态的。但毫不奇怪,随着自由度的增加,分布看起来更接近正态分布。简而言之,如果样本量增加,我们应该期望分布接近正态分布。
卡方检验的另一个重要应用是对独立性的检验。
卡方分布是Gamma分布的一个特例。当α=v/2和β=1/2时,gamma(α,β)随机变量是具有v自由度的卡方随机变量。
Dirac分布
归一化因子
许多分布可以表示为
其中分子是非归一化分布。在许多概率模型中,我们首先对非归一化分布进行建模,然后对所有可能的x求和,以创建归一化因子。这将我们的结果转化为概率,对于所有可能的x,p(x)总和为1 。例如,使用图模型,我们使用Graph对问题进行建模,分子是从中导出的因子。
在图模型中,这个归一化因子取决于我们如何对因子(θ)建模,因此,我们将其称为配分函数(z(θ))。一般来说,配分函数或标准化因子很难计算。在所有x上求和或积分是不容易的。
但对于众所周知的分布,我们可以首先关注计算分布参数,如μ,σ²,可以从这些参数中轻松找到归一化因子。
小结