UFLDL——Exercise: Linear Decoders 线性解码器

本实验介绍如何使用线性解码器训练STL-10数据库中8*8 RGB图像块的特征。内容包括线性解码器原理、三层神经网络结构、数据预处理(ZCA白化)、实验结果展示以及代码实现。
摘要由CSDN通过智能技术生成

本实验是用线性解码器的sparse autoencoder来训练stl-10数据库图片中8*8大小RGB patch块的特征。之前的试验中,我们的训练图像都是灰度图像,对于RGB图像可以采用相同的方法,只需把RGB图像的三个通道向量按照rgb的顺序排列更长的向量即可。


1、   线性解码器简介

线性解码器和 稀疏自动编码的整体结构都是类似的,只是线性解码器的输出层的激励函数为 恒等式f(z) = z,而稀疏自动编码为 非线性函数,比如sigmoid函数、tanh函数等,那为什么为出现两者不同的激励函数呢。

我们以三层神经网络为例,输出层的计算公式如下:

其中a(3)是第二层的输出,在自编码器中,我们希望a(3)近似重构了输入x=a(1)

 

我们在稀疏自动编码采用sigmoid激励函数,把输出数据控制在[0,1]范围,如果输入数据能够方便缩放到 [0,1] 中(MNIST手写数字数据集),那稀疏自动编码可以满足要求。但是,有些数据很难把数据缩放到[0,1]之间(比如PCA 白化处理的输入),如果此时输入数据的范围为[0,10],仍然使用sigmoid激励函数保证输出为[0,1],此时不能得到输出重构输入的要求,在这种情况下,线性解码器的优势就体现出来了。

 

2、   神经网络结构

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值