深度学习系列(六):自编码网络的特征学习

本文介绍了自编码网络如何用于特征学习,通过学习输入数据的隐含特征,构建分类器。以三层自编码网络为例,探讨了网络结构、权值初始化、稀疏性和去噪功能。通过可视化编码权重矩阵,展示了自编码网络学习到的特征,并与PCA降维进行了对比。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在第三节我们已经介绍了
简单网络的自编码学习
知道了自编码学习其实就是学习到了输入数据的隐含特征,通过新的特征来表征原始数据,本节将介绍如何使用这些隐含特征进行模式分类;
还是以前面的三层自编码网络:
这里写图片描述
抽象一下如下:
这里写图片描述
其中学习到的权值系数W1与W1’是不一样的,我们把W1叫做编码权值,W1’叫做译码权值,原始数据在编码权值下的新数据Y就可以视为学习到了新维度下的数据,这在第三节也说过。那么如果我们用自编码学习并计算出到Y,再把Y用于分类,就可以构成神经网络的分类器了,网络深了就是深度网络的分类器了,当然后面接分类器可以是常用的分类器,比如SVM,贝叶斯,logistics,等等,也可以在接一个神经网络分类器。本实验为了比较我们在Y后面接SVM分类器看看,那么在上面一步完成后我们的分类器就变成下面这样子:
这里写图片描述
这里我们以手写体实验,所以输入固定了为784维。至于隐含层为多少是可以设计的k。

Ok理论分析到此,我们来看看上节介绍的工具箱如何实现吧

首先是三层自编码网络的实现,假设k=100吧,那么我们网络结构是不是[784,100,784],像第三节做的那样,只不过第三节没有权值的稀疏性,而在这里我们要加入稀疏性了与一些去噪功能了。

Ok找到在工具箱DeepLearnToolbox\tests\test_example_SAE.m文件
把要说明的拿出来:

function test_example_SAE
load mnist_uint8;
choose_num_train = 10000;
choose_num_test= 200;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值