[Machine Learning] Learning with Noisy Data

文章目录

  • [Probabilistic Perspective of Noise](#Probabilistic Perspective of Noise)
  • [Bias and Variance](#Bias and Variance)
  • [Robustness among Surrogate Loss Functions](#Robustness among Surrogate Loss Functions)
  • NMF

Probabilistic Perspective of Noise

假设数据来源于一个确定的函数,叠加了高斯噪声。我们有:
y = h ( x ) + ϵ y = h(x) + \epsilon y=h(x)+ϵ

其中 ϵ ∼ N ( 0 , β − 1 ) \epsilon \sim \mathcal{N}(0, \beta^{-1}) ϵ∼N(0,β−1)

等价地,给定输入 x x x,以及函数 h h h 和噪声的精度 β \beta β, y y y 的条件分布可以写作:
p { y ∣ x , h , β } = N ( y ∣ h ( x ) , β − 1 ) p\{y|x, h, \beta\} = \mathcal{N}(y|h(x), \beta ^ {-1}) p{y∣x,h,β}=N(y∣h(x),β−1)

即 y y y 的条件分布是以 h ( x ) h(x) h(x) 为均值、以 β − 1 \beta^{-1} β−1 为方差的正态分布。

我们现在有一个由 n n n 个数据点组成的数据集 S = { ( x 1 , y 1 ) , ... , ( x n , y n ) } S = \{(x_1,y_1), \ldots, (x_n,y_n)\} S={(x1,y1),...,(xn,yn)}。我们假设数据点是独立同分布的,即每个数据点的生成不依赖于其他数据点。因此,整个数据集 S S S 的似然是所有单个数据点似然的乘积:
p ( S ∣ X , h , β − 1 ) = ∏ i = 1 n p ( y i ∣ h ( x i ) , β − 1 ) p(S|X, h, \beta^{-1}) = \prod\limits_{i=1}^n p(y_i|h(x_i), \beta^{-1}) p(S∣X,h,β−1)=i=1∏np(yi∣h(xi),β−1)

这个似然模型告诉我们,对于给定的函数 h h h 和噪声精度 β \beta β,数据集 S S S 的"可能性"或"合理性"是多少。

假设我们的模型参数为 h h h,先验分布为 p ( h ) p(h) p(h),那么基于贝叶斯定理,参数 h h h 的后验分布为:
p ( h ∣ S ) = p ( S ∣ h ) p ( h ) p ( S ) p(h|S) = \frac{p(S|h) p(h)}{p(S)} p(h∣S)=p(S)p(S∣h)p(h)

其中, p ( S ∣ h ) p(S|h) p(S∣h) 是似然, p ( S ) p(S) p(S) 是边缘似然,与参数 h h h 无关。

MAP估计就是找到使后验分布 p ( h ∣ S ) p(h|S) p(h∣S) 最大的参数 h h h。由于分母 p ( S ) p(S) p(S) 与 h h h 无关,所以MAP估计等价于:
h MAP = arg max ⁡ h p ( S ∣ h ) p ( h ) h_{\text{MAP}} = \argmax_{h} p(S|h) p(h) hMAP=hargmaxp(S∣h)p(h)

取负对数,问题可以转化为:
h MAP = arg min ⁡ h { − ln ⁡ p ( S ∣ h ) − ln ⁡ p ( h ) } h_{\text{MAP}} = \argmin_{h} \{-\ln p(S|h) - \ln p(h)\} hMAP=hargmin{−lnp(S∣h)−lnp(h)}

为了解决这个优化问题,你通常需要的是:

  1. 一个关于似然的负对数的表达式
  2. 一个关于先验的负对数的表达式

回顾我们的似然模型:
p ( S ∣ X , h , β − 1 ) = ∏ i = 1 n N ( y i ∣ h ( x i ) , β − 1 ) p(S|X, h, \beta^{-1}) = \prod_{i=1}^n \mathcal{N}(y_i|h(x_i), \beta^{-1}) p(S∣X,h,β−1)=i=1∏nN(yi∣h(xi),β−1)

根据正态分布的定义:
N ( y ∣ h ( x ) , β − 1 ) = β 2 π exp ⁡ ( − β ( y − h ( x ) ) 2 2 ) \mathcal{N}(y|h(x), \beta^{-1}) = \frac{\beta}{\sqrt{2\pi}} \exp\left(-\frac{\beta (y - h(x))^2}{2}\right) N(y∣h(x),β−1)=2π βexp(−2β(y−h(x))2)

因此,我们可以写出似然函数为:
p ( S ∣ X , h , β − 1 ) = ∏ i = 1 n β 2 π exp ⁡ ( − β ( y i − h ( x i ) ) 2 2 ) p(S|X, h, \beta^{-1}) = \prod_{i=1}^n \frac{\beta}{\sqrt{2\pi}} \exp\left(-\frac{\beta (y_i - h(x_i))^2}{2}\right) p(S∣X,h,β−1)=i=1∏n2π βexp(−2β(yi−h(xi))2)

对似然函数取对数,我们得到:
ln ⁡ p ( S ∣ X , h , β − 1 ) = ∑ i = 1 n ln ⁡ β 2 π − β ( y i − h ( x i ) ) 2 2 \ln p(S|X, h, \beta^{-1}) = \sum_{i=1}^n \ln \frac{\beta}{\sqrt{2\pi}} - \frac{\beta (y_i - h(x_i))^2}{2} lnp(S∣X,h,β−1)=i=1∑nln2π β−2β(yi−h(xi))2

将上述式子进一步拆分并合并相似的项,我们可以得到:
ln ⁡ p ( S ∣ X , h , β − 1 ) = n ln ⁡ β − n 2 ln ⁡ ( 2 π ) − β 2 ∑ i = 1 n ( y i − h ( x i ) ) 2 \ln p(S|X, h, \beta^{-1}) = n \ln \beta - \frac{n}{2} \ln(2\pi) - \frac{\beta}{2} \sum_{i=1}^n (y_i - h(x_i))^2 lnp(S∣X,h,β−1)=nlnβ−2nln(2π)−2βi=1∑n(yi−h(xi))2

此时, − β 2 ∑ i = 1 n ( y i − h ( x i ) ) 2 -\frac{\beta}{2} \sum_{i=1}^n (y_i - h(x_i))^2 −2β∑i=1n(yi−h(xi))2就是我们定义的风险 R S ( h ) R_S(h) RS(h)的部分,它表示模型在训练数据上的平均误差。

因此,我们有:
− ln ⁡ p ( S ∣ h ) = − n 2 ln ⁡ β + n 2 ln ⁡ ( 2 π ) + β 2 n R S ( h ) -\ln p(S|h) = -\frac{n}{2} \ln \beta + \frac{n}{2} \ln(2\pi) + \frac{\beta}{2} n R_S(h) −lnp(S∣h)=−2nlnβ+2nln(2π)+2βnRS(h)

这就是似然的负对数的表达式。

为了完整地解决优化问题,你还需要一个先验的负对数形式。比如,如果 h h h的先验是高斯分布,那么负对数先验的形式会是 h h h的二次函数。

结合似然和先验的负对数形式,你可以使用优化技巧(例如梯度下降)来求解 h MAP h_{\text{MAP}} hMAP。这样得到的 h MAP h_{\text{MAP}} hMAP既考虑了数据的似然,又考虑了先验知识,从而可能得到更好、更稳定的估计结果。

Bias and Variance

当 λ \lambda λ 很小或为0时:模型可能会过于复杂,拟合训练数据中的每一个细节,包括噪声。这会导致低偏差但高方差,即模型容易过拟合。

当 λ \lambda λ 很大时:模型会变得过于简单,参数值会被强烈地压缩,导致模型不能很好地捕获数据中的模式。这会导致高偏差但低方差,即模型容易欠拟合。

Robustness among Surrogate Loss Functions

在许多优化问题中,直接对目标函数进行操作可能会非常困难。可能是因为这个函数在数学上很复杂,或者它涉及到的计算量太大,导致直接优化不切实际。在这些情况下,转化或重参数化问题可以使其更容易处理。

在这里,考虑 g ( t ) = f ( t h ) g(t) = f(th) g(t)=f(th) 是一个这样的尝试。通过引入新的变量 t t t 并考虑如何改变 h h h 的长度(即通过 t t t 来缩放),我们试图在某种程度上简化问题。

当 t = 1 t=1 t=1 时,我们实际上是在查看原始函数 f f f 在点 h h h 的行为。如果 g ′ ( 1 ) = 0 g'(1) = 0 g′(1)=0,那么我们知道 f f f 在 h h h 这点取得极值(可能是最小值或最大值)。因此,这个技巧为我们提供了另一种方式来寻找 f ( h ) f(h) f(h) 的最小值点,而不是直接对 f f f 进行操作。

现在考虑四种损失函数及其对应的 g ′ ( 1 ) g'(1) g′(1):

  1. 最小二乘损失 (Least squares loss) :
    ℓ ( h ( x i ) , y i ) = ( y i − h ( x i ) ) 2 \ell(h(x_i), y_i) = (y_i - h(x_i))^2 ℓ(h(xi),yi)=(yi−h(xi))2

    这意味着,
    g ′ ( 1 ) = − 2 ∑ i = 1 n ( y i − h ( x i ) ) h ( x i ) g'(1) = -2 \sum_{i=1}^n (y_i - h(x_i)) h(x_i) g′(1)=−2i=1∑n(yi−h(xi))h(xi)

  2. 绝对损失 (Absolute loss) :
    ℓ ( h ( x i ) , y i ) = ∣ y i − h ( x i ) ∣ \ell(h(x_i), y_i) = |y_i - h(x_i)| ℓ(h(xi),yi)=∣yi−h(xi)∣

    这的导数与误差的符号有关。

  3. Cauchy损失 (Cauchy loss) :
    ℓ ( h ( x i ) , y i ) = log ⁡ ( 1 + ( y i − h ( x i ) ) 2 σ 2 ) \ell(h(x_i), y_i) = \log(1 + \frac{(y_i - h(x_i))^2}{\sigma^2}) ℓ(h(xi),yi)=log(1+σ2(yi−h(xi))2)

    其中, σ \sigma σ是一个正的常数。

  4. Correntropy损失 (Welsch loss) :
    ℓ ( h ( x i ) , y i ) = σ 2 2 ( 1 − exp ⁡ ( − ( y i − h ( x i ) ) 2 σ 2 ) ) \ell(h(x_i), y_i) = \frac{\sigma^2}{2}(1 - \exp(-\frac{(y_i - h(x_i))^2}{\sigma^2})) ℓ(h(xi),yi)=2σ2(1−exp(−σ2(yi−h(xi))2))

对于每个损失函数, g ′ ( 1 ) g'(1) g′(1)都会有一个与 c i = ( y i − h ( x i ) ) ( − h ( x i ) ) c_i = (y_i - h(x_i))(- h(x_i)) ci=(yi−h(xi))(−h(xi))相关的项。这个项可以被看作是数据点 ( x i , y i ) (x_i, y_i) (xi,yi)对损失函数的贡献与 h ( x i ) h(x_i) h(xi)的关系。具体地说, c i c_i ci可以被看作为两部分的乘积:

  • ( y i − h ( x i ) ) (y_i - h(x_i)) (yi−h(xi)):这是观测值 y i y_i yi与预测值 h ( x i ) h(x_i) h(xi)之间的误差。此误差项衡量了模型在特定数据点上的预测准确性。

  • − h ( x i ) - h(x_i) −h(xi):这是模型预测的负值,这种乘积形式通常是为了衡量模型的响应强度和误差之间的关系。在某些情境中,更强烈的模型响应(无论正负)可能与更大的误差相关。

整体来说, c i c_i ci是一个衡量在数据点 ( x i , y i ) (x_i, y_i) (xi,yi)上模型响应强度与模型误差之间关系的量。不同的损失函数会对这些项赋予不同的权重,当误差(或噪声)增大时,某些损失函数会对这些项赋予更小的权重,从而更"鲁棒"。

NMF

  1. 标准的NMF (Basic NMF) :

    使用欧氏距离或Frobenius范数来最小化重建误差。此方法对噪声敏感。
    min ⁡ W , H ∥ X − W H ∥ F 2 subject to W ≥ 0 , H ≥ 0 \min_{W,H} \|X - WH\|_F^2 \text{ subject to } W \geq 0, H \geq 0 W,Hmin∥X−WH∥F2 subject to W≥0,H≥0

  2. L1-Norm Regularized Robust NMF :

    在NMF的基础上加入L1正则化项,旨在捕获噪声和离群值。
    min ⁡ W , H , E ∥ X − W H − E ∥ F 2 + λ ∥ E ∥ 1 subject to W ≥ 0 , H ≥ 0 \min_{W,H,E} \|X - WH - E\|_F^2 + \lambda \|E\|_1 \text{ subject to } W \geq 0, H \geq 0 W,H,Emin∥X−WH−E∥F2+λ∥E∥1 subject to W≥0,H≥0

  3. L1-Norm Based NMF :

    使用L1范数来衡量重建误差,使得分解更加鲁棒,尤其是对噪声和离群值。L1范数倾向于产生稀疏的解。
    min ⁡ W , H ∥ X − W H ∥ 1 subject to W ≥ 0 , H ≥ 0 \min_{W,H} \|X - WH\|_1 \text{ subject to } W \geq 0, H \geq 0 W,Hmin∥X−WH∥1 subject to W≥0,H≥0

  4. L2,1-Norm Based NMF :

    使用L2,1范数来增强鲁棒性。L2,1范数可以鼓励列的稀疏性,使得某些特定的特征在所有样本上都为零,这有助于去除离群值带来的影响。
    min ⁡ W , H ∥ X − W H ∥ 2 , 1 subject to W ≥ 0 , H ≥ 0 \min_{W,H} \|X - WH\|_{2,1} \text{ subject to } W \geq 0, H \geq 0 W,Hmin∥X−WH∥2,1 subject to W≥0,H≥0

  5. Truncated Cauchy NMF :

    这种方法使用截断的Cauchy损失来增加鲁棒性。与L1和L2范数相比,Cauchy损失更能够容忍较大的离群值,因此这种方法在面对有很多噪声和离群值的数据时更为鲁棒。

  6. Hypersurface Cost Based NMF :

    通过在损失函数中加入超曲面成本项来增加鲁棒性。此方法试图找到描述数据变化的超曲面,从而更好地应对噪声和离群值。

相关推荐
艾派森10 分钟前
大数据分析案例-基于随机森林算法的智能手机价格预测模型
人工智能·python·随机森林·机器学习·数据挖掘
1 小时前
开源竞争-数据驱动成长-11/05-大专生的思考
人工智能·笔记·学习·算法·机器学习
忘梓.1 小时前
划界与分类的艺术:支持向量机(SVM)的深度解析
机器学习·支持向量机·分类
Chef_Chen1 小时前
从0开始机器学习--Day17--神经网络反向传播作业
python·神经网络·机器学习
MarkHD2 小时前
第十一天 线性代数基础
线性代数·决策树·机器学习
打羽毛球吗️2 小时前
机器学习中的两种主要思路:数据驱动与模型驱动
人工智能·机器学习
小馒头学python3 小时前
机器学习是什么?AIGC又是什么?机器学习与AIGC未来科技的双引擎
人工智能·python·机器学习
正义的彬彬侠3 小时前
《XGBoost算法的原理推导》12-14决策树复杂度的正则化项 公式解析
人工智能·决策树·机器学习·集成学习·boosting·xgboost
羊小猪~~3 小时前
神经网络基础--什么是正向传播??什么是方向传播??
人工智能·pytorch·python·深度学习·神经网络·算法·机器学习
正义的彬彬侠4 小时前
【scikit-learn 1.2版本后】sklearn.datasets中load_boston报错 使用 fetch_openml 函数来加载波士顿房价
python·机器学习·sklearn