在使用神经网络实现自编码器时,大多数人会使用 sigmoid 作为激活函数。
我们可以改用 ReLU 吗?(由于 ReLU 对上限没有限制,基本上意味着输入图像的像素可以大于 1,这与使用 sigmoid 时自动编码器的受限标准不同)。
在使用神经网络实现自编码器时,大多数人会使用 sigmoid 作为激活函数。
我们可以改用 ReLU 吗?(由于 ReLU 对上限没有限制,基本上意味着输入图像的像素可以大于 1,这与使用 sigmoid 时自动编码器的受限标准不同)。
这是一个讨论线程(从 2013 年 7 月开始),表明它可能存在一些问题,但可以做到。
Çağlar Gülçehre(来自 Yoshua Bengio 的实验室)说,他在Knowledge Matters 中成功使用了以下技术:优化先验信息的重要性:
像往常一样训练第一个 DAE,但在隐藏层中使用整流器:
a1(x) = W1 x + b1 h1 = f1(x) = rectifier(a1(x)) g1(h1) = {sigmoid}(V1 h1 + c1)
最小化交叉熵或 MSE 损失,比较 g1(f1(corrupt(x))) 和 x。根据数据,sigmoid 是可选的。在 f1 整流器之前添加噪声训练 2nd DAE,并使用具有 MSE 损失的 softplus 重建单元:
h2 = f2(h1) = rectifier(W2 h1 + b2) g2(h2) = softplus(V2 h2 + c2)
最小化
同样来自 Bengio 实验室的 Xavier Glorot 说,除了更换带着“对激活值”的惩罚(大概是?) 在大规模情感分类的域适应:深度学习方法(ICML 2011) 和深度稀疏整流器神经网络(AISTATS 2011) 中。