当前位置: 首页 > news >正文

[Machine Learning] Learning with Noisy Data

文章目录

  • Probabilistic Perspective of Noise
  • Bias and Variance
  • 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{yx,h,β}=N(yh(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(SX,h,β1)=i=1np(yih(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(hS)=p(S)p(Sh)p(h)
其中, p ( S ∣ h ) p(S|h) p(Sh) 是似然, p ( S ) p(S) p(S) 是边缘似然,与参数 h h h 无关。

MAP估计就是找到使后验分布 p ( h ∣ S ) p(h|S) p(hS) 最大的参数 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(Sh)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(Sh)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(SX,h,β1)=i=1nN(yih(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(yh(x),β1)=2π βexp(2β(yh(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(SX,h,β1)=i=1n2π βexp(2β(yih(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(SX,h,β1)=i=1nln2π β2β(yih(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(SX,h,β1)=nlnβ2nln(2π)2βi=1n(yih(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(yih(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(Sh)=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)=(yih(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=1n(yih(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)=yih(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(yih(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(1exp(σ2(yih(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=(yih(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)) (yih(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,HminXWHF2 subject to W0,H0

  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,EminXWHEF2+λE1 subject to W0,H0

  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,HminXWH1 subject to W0,H0

  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,HminXWH2,1 subject to W0,H0

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

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

相关文章:

[Machine Learning] Learning with Noisy Data

文章目录 Probabilistic Perspective of NoiseBias and VarianceRobustness among Surrogate Loss FunctionsNMF Probabilistic Perspective of Noise 假设数据来源于一个确定的函数,叠加了高斯噪声。我们有: y h ( x ) ϵ y h(x) \epsilon yh(x)ϵ…...

C++中有哪些常用的标准库?

C中有许多常用的标准库,这些库提供了丰富的功能和工具,方便开发人员进行各种任务。以下是一些常见的C标准库: iostream:用于输入和输出操作,包括cin、cout和cerr等类和函数。algorithm:提供了许多常用的算…...

软考-信息安全工程师概述

本文为作者学习文章,按作者习惯写成,如有错误或需要追加内容请留言(不喜勿喷) 本文为追加文章,后期慢慢追加 2023年10月 信息考试大纲 通过本考试的合格人员能够掌握网络信息安全的基础知识和技术原理,…...

2023-2024年华为ICT网络赛道模拟题库

2023-2024年网络赛道模拟题库上线啦,全面覆盖网络,安全,vlan考点,都是带有解析 参赛对象及要求: 参赛对象:现有华为ICT学院及未来有意愿成为华为ICT学院的本科及高职院校在校学生。 参赛要求&#xff1a…...

英特尔参与 CentOS Stream 项目

导读红帽官方发布公告欢迎英特尔参与进 CentOS Stream 项目,并表示 “这一举措不仅进一步深化了我们长期的合作关系,也构建在英特尔已经在 Fedora 项目中积极贡献的基础之上。” 目前,CentOS Stream 共包括以下特别兴趣小组(SIG&a…...

Centos 服务器 MySQL 8.0 快速开启远程访问

环境: MySQL 8.0(低版本会有些不同), Rocky Linux 9.0(CentOS) 直接上干货,相信大家看到这个文章的时候都已经安装完了。 1. 先从服务器上使用 root 进行登录(刚安装完默认只能本地…...

充电保护芯片TP4054国产替代完全兼容DP4054DP4054H 锂电充电芯片

■产品概述 DP4054H是-款完整的采用恒定电流/恒定电压单节锂离子电池充电管理芯片。其SOT小封装和较少的外部元件数目使其成为便携式应用的理想器件,DP4054H可 以适合USB电源和适配器电源工作。 由于采用了内部PMOSFET架构,加上防倒充电路,所以不需要外…...

Java Spring Boot中的爬虫防护机制

随着互联网的发展,爬虫技术也日益成熟和普及。然而,对于某些网站来说,爬虫可能会成为一个问题,导致资源浪费和安全隐患。本文将介绍如何使用Java Spring Boot框架来防止爬虫的入侵,并提供一些常用的防护机制。 引言&a…...

状态模式 行为型模式之六

1.定义 允许一个对象在其对象内部状态改变时改变它的行为。 2.组成结构 Context:定义客户感兴趣的接口;维护一个ConcreteState子类的实例,这个实例定义当前的状态。State:定义一个接口来封装Context的与特定状态相关的行为。Co…...

JAVA NIO深入剖析

4.1 Java NIO 基本介绍 Java NIO(New IO)也有人称之为 java non-blocking IO是从Java 1.4版本开始引入的一个新的IO API,可以替代标准的Java IO API。NIO与原来的IO有同样的作用和目的,但是使用的方式完全不同,NIO支持面向缓冲区的、基于通道的IO操作。NIO将以更加高效的方…...

企业电子招投标系统源码之电子招投标系统建设的重点和未来趋势

功能描述 1、门户管理:所有用户可在门户页面查看所有的公告信息及相关的通知信息。主要板块包含:招标公告、非招标公告、系统通知、政策法规。 2、立项管理:企业用户可对需要采购的项目进行立项申请,并提交审批,查看所…...

基于正点原子alpha开发板的第三篇系统移植

系统移植的三大步骤如下: 系统uboot移植系统linux移植系统rootfs制作 一言难尽,踩了不少坑,当时只是想学习驱动开发,发现必须要将第三篇系统移植弄好才可以学习后面驱动,现将移植好的文件分享出来: 仓库&…...

数据结构与算法设计分析——贪心算法的应用

目录 一、贪心算法的定义二、贪心算法的基本步骤三、贪心算法的性质(一)最优子结构性质(二)贪心选择性质 四、贪心算法的应用(一)哈夫曼树——哈夫曼编码(二)图的应用——求最小生成…...

Leetcode 2895. Minimum Processing Time

Leetcode 2895. Minimum Processing Time 1. 解题思路2. 代码实现 题目链接:2895. Minimum Processing Time 1. 解题思路 这一题整体上来说其实没啥难度,就是一个greedy算法,只需要想明白耗时长的任务一定要优先执行,不存在某个…...

学信息系统项目管理师第4版系列21_范围管理

1. 产品范围 1.1. 某项产品、服务或成果所具有的特征和功能 1.2. 产品范围的完成情况是根据产品需求来衡量的 1.3. “需求”是指根据特定协议或其他强制性规范,产品、服务或成果必须具备的条件或能力 2. 项目范围 2.1. 包括产品范围,是为交付具有规…...

threejs 透明贴图,模型透明,白边

问题 使用Threejs加载模型时,模型出现了上面的问题。模型边缘部分白边,或者模型出现透明问题。 原因 出现这种问题是模型制作时使用了透明贴图。threejs无法直接处理贴图。 解决 场景一 模型有多个贴图时(一个透贴和其他贴图&#xff0…...

CCF CSP认证 历年题目自练Day21

题目一 试题编号: 201909-1 试题名称: 小明种苹果 时间限制: 2.0s 内存限制: 512.0MB 题目分析(个人理解) 先看输入,第一行输入苹果的棵树n和每一次掉的苹果数m还是先如何存的问题&#xf…...

【Python_PySide2学习笔记(十六)】多行文本框QPlainTextEdit类的的基本用法

多行文本框QPlainTextEdit类的的基本用法 前言正文1、创建多行文本框2、多行文本框获取文本3、多行文本框获取选中文本4、多行文本框设置提示5、多行文本框设置文本6、多行文本框在末尾添加文本7、多行文本框在光标处插入文本8、多行文本框清空文本9、多行文本框拷贝文本到剪贴…...

linux上negix部署静态页面

1.看配置文件 进入cndf.d 这里的是配置部署项目中的文件 进入一个查看下 上面的是服务的域名,服务是http://test.fun-med.cn/#/,后面加服务名(你的前端) 2.看下页面位置 和上面的路径要匹配...

41.说说Promise自身的静态方法

41.说说Promise自身的静态方法 Promise.all (有一个失败就失败,所有的都成功就成功)Promise.race (有一个成功就成功,有一个失败就失败)Promise.allSettled (所有的异步操作执行完毕之后&#…...

通讯网关软件019——利用CommGate X2OPCUA实现OPC UA访问Oracle服务器

本文介绍利用CommGate X2OPCUA实现OPC UA访问ORACLE数据库。CommGate X2OPCUA是宁波科安网信开发的网关软件,软件可以登录到网信智汇(http://wangxinzhihui.com)下载。 【案例】如下图所示,实现上位机通过OPC UA来获取ORACLE数据库的数据。 【解决方案】…...

【机器学习】svm

参考 sklearn中SVC中的参数说明与常用函数_sklearn svc参数-CSDN博客https://blog.csdn.net/transformed/article/details/90437821 参考PYthon 教你怎么选择SVM的核函数kernel及案例分析_clfsvm.svc(kernel)-CSDN博客https://blog.csdn.net/c1z2w3456789/article/details/10…...

基于SSM+Vue的学习交流论坛的设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用Vue技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…...

开发与运营:“开发”和“运营”角色有何不同和重叠?

开发和运营是促进软件系统交付的两种角色。大多数大规模构建软件的组织都会雇用这两个学科的人员。不过,开发和运维并不是完全孤立的。团队重叠并实现更高的吞吐量是很常见的。 在本文中,您将学习区分开发人员和操作人员之间的主要区别,以及它们重叠的方式。尽管有将两者结合…...

关于GD32引脚PA13、PA15、PB3、PB4配置为普通引脚的问题

关于GD32引脚PA13、PA15、PB3、PB4配置为普通引脚的问题 在实际开发中,经常会遇到引脚资源受限需要将一些具有特定功能的引脚配置为普通引脚或其他引脚功能使用的情况。 博主之前遇到过类似的情况,都正常解决了。但偶尔也会出现在配置引脚时少了一些配…...

JS-Dom转为图片,并放入pdf中进行下载

1、将dom转换为图片 这里我们使用html2canvas工具插件先将dom转为canvas元素然后canvas拥有一个方法可以将绘制出来的图形转为url然后下载即可注意:如果元素使用了渐变背景并透明的话,生成的图片可能会有点问题。我下面这个案例使用了渐变背景实现元素对…...

Python 无废话-办公自动化Excel格式美化

设置字体 在使用openpyxl 处理excel 设置格式,需要导入Font类,设置Font初始化参数,常见参数如下: 关键字参数 数据类型 描述 name 字符串 字体名称,如Calibri或Times New Roman size 整型 大小点数 bold …...

Python视频剪辑-Moviepy音频效果afx方法

随着多媒体内容在日常生活和工作中的广泛应用,音频处理成为了一个越来越重要的技能。无论是在游戏开发、音乐制作,还是在各种应用和网站中,高质量的音频处理都能极大地提升用户体验。然而音频处理看似复杂,实则不必如此。其实只需要掌握一些基础的概念和技巧,就能够完成大…...

让LLM模型输入token无限长

背景 增加LLM的输入token已经有很多的研究,但是思路无外乎:模型抽取局部特征通过上层通过模型融合预测最终解,以及这个思路的一些变种。然而这些思路其实都没能很彻底的解决无限长token问题,根据《EFFICIENT STREAMING LANGUAGE …...

RabbitMQ 介绍与 SpringBootAMQP使用

一、MQ概述 异步通信的优点: 耦合度低吞吐量提升故障隔离流量削峰 异步通信的缺点: 依赖于Broker的可靠性、安全性、吞吐能力架构复杂,业务么有明显的流程线,不方便追踪管理 什么是的MQ MQ(Message Queue&#xf…...