TRAINING DEEP NEURAL-NETWORKS BASED ON UNRELIABLE LABELS 论文笔记

2023-10-18 19:10

本文主要是介绍TRAINING DEEP NEURAL-NETWORKS BASED ON UNRELIABLE LABELS 论文笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

TRAINING DEEP NEURAL-NETWORKS BASED ON UNRELIABLE LABELS 论文笔记

论文摘要

本文解决的问题是如何使用不可靠的标签进行神经网络的训练。

作者通过假设一个噪声层,通过真实标签加上一个参数未知的噪声信道产生观察到的标签。

提出了一种学习神经网络参数和噪声分布的方法。

将这种方法和忽略了错误标签的标准的反向传播神经网络训练进行比较。

在几个标准的分类任务中展示了该方法对性能的改进。

证明了该方法有提升,即使标签是手动设置的正确标签,也能得到提升。

TRAINING NN WITH NOISY LABELS

首先我们要训练一个多类别分类神经网络

p ( y = i ∣ x ; w ) p(y=i \mid x ; w) p(y=ix;w)

  • x x x为特征向量
  • w w w为网络参数

进一步假设我们不能观察到正确的标签 y y y,我们只能获得带有噪声的标签 z z z

噪声是通过参数 θ ( i , j ) = p ( z = j ∣ y = i ) \theta(i, j)=p(z=j \mid y=i) θ(i,j)=p(z=jy=i)产生的,其中噪声的分布是未知的,需要作为训练的一部分。

观察到带有噪声标签 z z z 的几率和特征向量 x x x 之间的关系如下:

p ( z = j ∣ x ; w , θ ) = ∑ i = 1 k p ( z = j ∣ y = i ; θ ) p ( y = i ∣ x ; w ) p(z=j \mid x ; w, \theta)=\sum_{i=1}^{k} p(z=j \mid y=i ; \theta) p(y=i \mid x ; w) p(z=jx;w,θ)=i=1kp(z=jy=i;θ)p(y=ix;w)

  • k k k为分类数

整个模型的过程如下图:

image-20200810164708473

假设分类神经网络的中间层使用的是非线形层,输出层使用的是softmax分类器

input x x x 通过非线性层 :

h = h ( x ) h = h(x) h=h(x)

通过softmax层:

p ( y = i ∣ x ; w ) = exp ⁡ ( u i ⊤ h ) ∑ j = 1 k exp ⁡ ( u j ⊤ h ) , i = 1 , … , k p(y=i \mid x ; w)=\frac{\exp \left(u_{i}^{\top} h\right)}{\sum_{j=1}^{k} \exp \left(u_{j}^{\top} h\right)}, \quad i=1, \ldots, k p(y=ix;w)=j=1kexp(ujh)exp(uih),i=1,,k

  • 其中 u 1 , . . . , u k u_1,...,u_k u1,...,uk为softmax的参数,属于神经网络参数 w w w的子集

image-20200810170507105

在训练的过程中,给出n个特征向量, x 1 , . . . , x n x_1,...,x_n x1,...,xn,和他们对应的标签 z 1 , . . . , z n z_1,...,z_n z1,...,zn ,( z 1 , . . . , z n z_1,...,z_n z1,...,zn 是由正确标签 y 1 , . . . , y n y_1,...,y_n y1,...,yn加上噪声得来的)

模型参数 w w w的对数似然函数为:

L ( w , θ ) = ∑ t = 1 n log ⁡ ( ∑ i = 1 k p ( z t ∣ y t = i ; θ ) p ( y t = i ∣ x t ; w ) ) L(w, \theta)=\sum_{t=1}^{n} \log \left(\sum_{i=1}^{k} p\left(z_{t} \mid y_{t}=i ; \theta\right) p\left(y_{t}=i \mid x_{t} ; w\right)\right) L(w,θ)=t=1nlog(i=1kp(ztyt=i;θ)p(yt=ixt;w))

训练的目标是:1.找到噪声 θ θ θ 的的分布。2.找到参数 w w w对应的最大似然函数

因为 y 1 , . . . , y n y_1,...,y_n y1,...,yn被隐藏了,使用EM算法来求解最大似然参数。

EM-auxiliary func-tion如下:

Q ( w 0 , θ 0 , w , θ ) = ∑ t = 1 n ∑ i = 1 k p ( y t = i ∣ x t , z t ; w 0 , θ 0 ) ⋅ ( log ⁡ p ( y t = i ∣ x t ; w ) + log ⁡ p ( z t ∣ y t = i ; θ ) ) \begin{aligned} Q\left(w_{0}, \theta_{0}, w, \theta\right) &=\sum_{t=1}^{n} \sum_{i=1}^{k} p\left(y_{t}=i \mid x_{t}, z_{t} ; w_{0}, \theta_{0}\right) \cdot\left(\log p\left(y_{t}=i \mid x_{t} ; w\right)+\log p\left(z_{t} \mid y_{t}=i ; \theta\right)\right) \end{aligned} Q(w0,θ0,w,θ)=t=1ni=1kp(yt=ixt,zt;w0,θ0)(logp(yt=ixt;w)+logp(ztyt=i;θ))

  • w 0 , θ 0 w_0, θ_0 w0,θ0 为当前的参数
  • 我们要寻找参数$w, \theta $来最大化EM auxiliary function。

在更新参数的时候使用了EM算法:

EM算法分为两步,即E步和M步。

  • 在E步中,根据含有噪声标签和当前参数来估计隐藏的真实数据标签。

    c t i = p ( y t = i ∣ x t , z t ; w 0 , θ 0 ) = p ( z t ∣ y t = i ; θ 0 ) p ( y t = i ∣ x t ; w 0 ) ∑ j p ( z t ∣ y t = j ; θ 0 ) p ( y t = j ∣ x t ; w 0 ) = θ 0 ( i , z t ) exp ⁡ ( u i 0 ⊤ h 0 ( x t ) ) ∑ j θ 0 ( j , z t ) exp ⁡ ( u j 0 ⊤ h 0 ( x t ) ) \begin{aligned} c_{t i} &=p\left(y_{t}=i \mid x_{t}, z_{t} ; w_{0}, \theta_{0}\right) \\ &=\frac{p\left(z_{t} \mid y_{t}=i ; \theta_{0}\right) p\left(y_{t}=i \mid x_{t} ; w_{0}\right)}{\sum_{j} p\left(z_{t} \mid y_{t}=j ; \theta_{0}\right) p\left(y_{t}=j \mid x_{t} ; w_{0}\right)} \\ &=\frac{\theta_{0}\left(i, z_{t}\right) \exp \left(u_{i 0}^{\top} h_{0}\left(x_{t}\right)\right)}{\sum_{j} \theta_{0}\left(j, z_{t}\right) \exp \left(u_{j 0}^{\top} h_{0}\left(x_{t}\right)\right)} \end{aligned} cti=p(yt=ixt,zt;w0,θ0)=jp(ztyt=j;θ0)p(yt=jxt;w0)p(ztyt=i;θ0)p(yt=ixt;w0)=jθ0(j,zt)exp(uj0h0(xt))θ0(i,zt)exp(ui0h0(xt))

    其中 u 10 , . . . , u k 0 u_{10}, ..., u_{k0} u10,...,uk0 h 0 ( x ) h_0(x) h0(x)是参数 w 0 w_0 w0的一部分。

  • 在M步中,同时更新神经网络参数和噪声参数。

    θ ( i , j ) = ∑ t c t i 1 { z t = j } ∑ t c t i , i , j ∈ { 1 , … , k } \theta(i, j)=\frac{\sum_{t} c_{t i} 1_{\left\{z_{t}=j\right\}}}{\sum_{t} c_{t i}}, \quad i, j \in\{1, \ldots, k\} θ(i,j)=tctitcti1{zt=j},i,j{1,,k}

    为了找到更新后的NN参数w,我们需要最大化以下函数:

    S ( w ) = ∑ t = 1 n ∑ i = 1 k c t i log ⁡ p ( y t = i ∣ x t ; w ) S(w)=\sum_{t=1}^{n} \sum_{i=1}^{k} c_{t i} \log p\left(y_{t}=i \mid x_{t} ; w\right) S(w)=t=1ni=1kctilogp(yt=ixt;w)

NLNN算法

input: 数据 x 1 , . . . , x n ∈ R d x_1,...,x_n \in R^d x1,...,xnRd,和对应的噪声标签 $z_1, …, z_n \in (1, …, k) $

**output:**神经网络参数 w w w,噪声参数 θ \theta θ

EM算法在两个步骤之间进行迭代:

  1. E-step:根据当前参数值估计真实标签

    c t i = p ( y t = i ∣ x t , z t ; w 0 , θ 0 ) c_{ti} =p(y_{t}=i \mid x_{t}, z_{t} ; w_{0}, \theta_{0}) cti=p(yt=ixt,zt;w0,θ0)

  2. M-step:更新噪声参数 θ \theta θ

    θ ( i , j ) = ∑ t c t i 1 { z t = j } ∑ t c t i \theta(i, j)=\frac{\sum_{t} c_{t i} 1_{\left\{z_{t}=j\right\}}}{\sum_{t} c_{t i}} θ(i,j)=tctitcti1{zt=j}

训练神经网络,找到 w w w使下面函数最大化:

L ( w ) = ∑ t = 1 n ∑ i = 1 k c t i log ⁡ p ( y t = i ∣ x t ; w ) L(w)=\sum_{t=1}^{n} \sum_{i=1}^{k} c_{t i} \log p\left(y_{t}=i \mid x_{t} ; w\right) L(w)=t=1ni=1kctilogp(yt=ixt;w)

  • EM算法和反向传播算法可以交替使用

  • 在训练时可以先用标准方法训练神经网络,将得到参数w作为EM迭代的初始值。

  • 计算训练数据上的混淆矩阵,然后用来初始噪声参数θ

    θ ( i , j ) = ∑ t 1 { z t = j } p ( y t = i ∣ x t ; w ) ∑ t p ( y t = i ∣ x t ; w ) , i , j ∈ { 1 , … , k } \theta(i, j)=\frac{\sum_{t} 1_{\left\{z_{t}=j\right\}} p\left(y_{t}=i \mid x_{t} ; w\right)}{\sum_{t} p\left(y_{t}=i \mid x_{t} ; w\right)}, \quad i, j \in\{1, \ldots, k\} θ(i,j)=tp(yt=ixt;w)t1{zt=j}p(yt=ixt;w),i,j{1,,k}

EXPERIMENTS

作者在手写数字的MNIST数据库和TIMIT声学-音素连续语音语料库进行了测试。

第一类数据随机修改了标签,第二类数据按照概率分布修改了标签。

在MNIST数据上训练NLNN模型时,先在有噪声的数据上,使用反向传播迭代100个epoch初始化参数w,然后再使用EM算法直到收敛。在每次迭代中,用50个epoch来训练NN估计标签。在每次EM迭代中,先用随机参数进行反向传播。

这篇关于TRAINING DEEP NEURAL-NETWORKS BASED ON UNRELIABLE LABELS 论文笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/234585

相关文章

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了

AI hospital 论文Idea

一、Benchmarking Large Language Models on Communicative Medical Coaching: A Dataset and a Novel System论文地址含代码 大多数现有模型和工具主要迎合以患者为中心的服务。这项工作深入探讨了LLMs在提高医疗专业人员的沟通能力。目标是构建一个模拟实践环境,人类医生(即医学学习者)可以在其中与患者代理进行医学

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

2014 Multi-University Training Contest 8小记

1002 计算几何 最大的速度才可能拥有无限的面积。 最大的速度的点 求凸包, 凸包上的点( 注意不是端点 ) 才拥有无限的面积 注意 :  凸包上如果有重点则不满足。 另外最大的速度为0也不行的。 int cmp(double x){if(fabs(x) < 1e-8) return 0 ;if(x > 0) return 1 ;return -1 ;}struct poin

2014 Multi-University Training Contest 7小记

1003   数学 , 先暴力再解方程。 在b进制下是个2 , 3 位数的 大概是10000进制以上 。这部分解方程 2-10000 直接暴力 typedef long long LL ;LL n ;int ok(int b){LL m = n ;int c ;while(m){c = m % b ;if(c == 3 || c == 4 || c == 5 ||

2014 Multi-University Training Contest 6小记

1003  贪心 对于111...10....000 这样的序列,  a 为1的个数,b为0的个数,易得当 x= a / (a + b) 时 f最小。 讲串分成若干段  1..10..0   ,  1..10..0 ,  要满足x非递减 。  对于 xi > xi+1  这样的合并 即可。 const int maxn = 100008 ;struct Node{int

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear

数学建模笔记—— 非线性规划

数学建模笔记—— 非线性规划 非线性规划1. 模型原理1.1 非线性规划的标准型1.2 非线性规划求解的Matlab函数 2. 典型例题3. matlab代码求解3.1 例1 一个简单示例3.2 例2 选址问题1. 第一问 线性规划2. 第二问 非线性规划 非线性规划 非线性规划是一种求解目标函数或约束条件中有一个或几个非线性函数的最优化问题的方法。运筹学的一个重要分支。2