返回介绍

数学基础

统计学习

深度学习

工具

Scala

四、噪声鲁棒性

发布于 2023-07-17 23:38:25 字数 5099 浏览 0 评论 0 收藏 0

  1. 有三种添加噪声的策略:输入噪声注入、权重噪声注入、输出噪声注入。

4.1 输入噪声注入

  1. 输入噪声注入:将噪声作用于输入的数据集,这也是前文介绍的一种数据集增强方法。

  2. 对于某些模型,在输入上注入方差极小的噪音等价于对权重施加参数范数正则化(Bishop,1995a,b)。

    但是输入噪声注入远比简单地收缩参数强大,尤其是噪声被添加到隐单元的输入上时。

4.2 权重噪声注入

  1. 权重噪声注入:将噪音作用于权重。这项技术主要用于循环神经网络。

  2. 权重噪声注入可以解释为:将权重视作不确定的随机变量(拥有某个概率分布),向权重注入噪声是对该随机变量采样得到的一个随机值。

  3. 在某些假设下,权重噪声注入等价于传统的参数正则化形式。

  4. 假设有一个 $ MathJax-Element-247 $ 层的标准的深度前馈神经网络,我们将噪声注入到该网络的权重。

    假设 $ MathJax-Element-248 $ ,则有:

    $ J(\vec\theta)=-\mathbb E_{\mathbf{\vec x},y\sim \hat p_{data}} \log p_{model}(y\mid \mathbf{\vec x};\vec\theta) =\frac 12 \mathbb E_{\mathbf{\vec x},y\sim \hat p_{data}}||y-f(\mathbf{\vec x};\vec\theta)||^{2}+\text{const} $

    常数项包含了高斯分布的方差(与 $ MathJax-Element-467 $ 无关)。

    于是目标函数重写为: $ MathJax-Element-250 $ 。

  5. 假设每个权重添加一个随机扰动 $ MathJax-Element-251 $ , 它是一个均值为0、方差为 $ MathJax-Element-252 $ 的标准正态分布。

    假设添加扰动之后的模型为 $ MathJax-Element-253 $ 。

    假设有 $ MathJax-Element-254 $ ,即:模型对于增加扰动之后的期望等于原来的模型。

    于是:

    $ \tilde J(\vec\theta)=\frac 12 \mathbb E_{p(\mathbf{\vec x},y,\epsilon_{\mathbf W})}||y-\tilde f(\mathbf{\vec x};\vec\theta,\epsilon_{\mathbf W})||^{2} =\mathbb E_{p(\epsilon_{\mathbf W})}\left[\frac 12 \mathbb E_{\mathbf{\vec x},y\sim \hat p_{data}}||y-\tilde f(\mathbf{\vec x};\vec\theta,\epsilon_{\mathbf W})||^{2}\right]\\ = \frac 12\mathbb E_{p(\epsilon_{\mathbf W})} \mathbb E_{\mathbf{\vec x},y\sim \hat p_{data}}||y-f(\mathbf{\vec x};\vec\theta)+f(\mathbf{\vec x};\vec\theta)-\tilde f(\mathbf{\vec x};\vec\theta,\epsilon_{\mathbf W})||^{2}\\ =\frac 12\mathbb E_{p(\epsilon_{\mathbf W})} \mathbb E_{\mathbf{\vec x},y\sim \hat p_{data}}\left[(y-f(\mathbf{\vec x};\vec\theta))^{2}+(f(\mathbf{\vec x};\vec\theta)-\tilde f(\mathbf{\vec x};\vec\theta,\epsilon_{\mathbf W}))^{2}+\\ 2(y-f(\mathbf{\vec x};\vec\theta))(f(\mathbf{\vec x};\vec\theta)-\tilde f(\mathbf{\vec x};\vec\theta,\epsilon_{\mathbf W}))\right]\\ =\frac 12\mathbb E_{p(\epsilon_{\mathbf W})} \mathbb E_{\mathbf{\vec x},y\sim \hat p_{data}} (y-f(\mathbf{\vec x};\vec\theta))^{2}+\frac 12\mathbb E_{p(\epsilon_{\mathbf W})} \mathbb E_{\mathbf{\vec x},y\sim \hat p_{data}}(f(\mathbf{\vec x};\vec\theta)-\tilde f(\mathbf{\vec x};\vec\theta,\epsilon_{\mathbf W}))^{2}\\ +\mathbb E_{\mathbf{\vec x},y\sim \hat p_{data}}(y-f(\mathbf{\vec x};\vec\theta))\mathbb E_{p(\epsilon_{\mathbf W})} (f(\mathbf{\vec x};\vec\theta)-\tilde f(\mathbf{\vec x};\vec\theta,\epsilon_{\mathbf W})) $

    根据:

    $ \frac 12\mathbb E_{p(\epsilon_{\mathbf W})} \mathbb E_{\mathbf{\vec x},y\sim \hat p_{data}} (y-f(\mathbf{\vec x};\vec\theta))^{2}=\frac 12 \mathbb E_{\mathbf{\vec x},y\sim \hat p_{data}} (y-f(\mathbf{\vec x};\vec\theta))^{2} =J(\vec\theta) $ $ \mathbb E_{p(\epsilon_{\mathbf W})} (f(\mathbf{\vec x};\vec\theta)-\tilde f(\mathbf{\vec x};\vec\theta,\epsilon_{\mathbf W}))=f(\mathbf{\vec x};\vec\theta)-\mathbb E_{p(\epsilon_{\mathbf W})}\tilde f(\mathbf{\vec x};\vec\theta,\epsilon_{\mathbf W})=0 $

    于是有:

    $ \tilde J(\vec\theta)= J(\vec\theta)+\frac 12\mathbb E_{p(\epsilon_{\mathbf W})} \mathbb E_{\mathbf{\vec x},y\sim \hat p_{data}}(f(\mathbf{\vec x};\vec\theta)-\tilde f(\mathbf{\vec x};\vec\theta,\epsilon_{\mathbf W}))^{2}+0 $
  6. 将 $ MathJax-Element-255 $ 在 $ MathJax-Element-472 $ 处泰勒展开,有: $ MathJax-Element-257 $ 。则有:

    $ \mathbb E_{p(\epsilon_{\mathbf W})} [ (\tilde f(\mathbf{\vec x};\vec\theta,\epsilon_{\mathbf W})-f(\mathbf{\vec x};\vec\theta))^{2}]=\mathbb E_{p(\epsilon_{\mathbf W})}(\nabla_{\mathbf W}f(\mathbf{\vec x};\vec\theta) ^{T}\epsilon_{\mathbf W})^{2}=||\nabla_{\mathbf W}f(\mathbf{\vec x};\vec\theta)||^{2}\eta $

    于是有: $ MathJax-Element-258 $ 。

    这说明:权重噪声注入的代价函数等于非权重噪声注入的代价函数加上一个参数正则化项。

    • 该正则化项就是 $ MathJax-Element-259 $ ,其中 $ MathJax-Element-260 $ 为噪声的方差。

      噪声方差越大,则正则化项越大。

    • 该形式的正则化将鼓励参数进入对小扰动不敏感的区域。即:找到的点不仅是极小点,还是由平坦区域包围的极小点。

      平坦区域意味着梯度很小,意味着对小扰动不敏感。

  1. 如果是简单的线性回归,即 $ MathJax-Element-261 $ ,则权重噪声注入等价的参数正则化项退化为 $ MathJax-Element-262 $ 。

    该正则化项与模型的参数无关,因此对 $ MathJax-Element-263 $ 关于 $ MathJax-Element-472 $ 的梯度没有贡献,因此目标函数可以重写为: $ MathJax-Element-265 $ 。

4.3 输出噪声注入

  1. 有些数据集存在少量的 $ MathJax-Element-449 $ 标签是错误的,此时通过最大似然准则来最大化 $ MathJax-Element-267 $ 是不正确的。

    输出噪声注入显式地对标签上的噪音进行建模:假设某个很小的常数 $ MathJax-Element-492 $ , 标签 $ MathJax-Element-449 $ 是正确的概率为 $ MathJax-Element-270 $ 、是错误的概率为 $ MathJax-Element-492 $ 。

  2. 基于 $ MathJax-Element-403 $ 个输出的softmax单元的标签平滑正则化label smoothing regularize:将真实的标签从 $ MathJax-Element-273 $ 替换为 $ MathJax-Element-274 $ 。

    原始的标签: $ MathJax-Element-276 $ 个为 0, 一个为1 。注入噪声之后的标签: $ MathJax-Element-276 $ 个为 $ MathJax-Element-277 $ ,一个为 $ MathJax-Element-278 $ 。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文