无监督特征学习:自动编码器与受限玻尔兹曼机详解
1. 网络设计
在构建深度神经网络时,常见的问题包括如何选择隐藏层的数量和每层神经元的数量,以及使用何种激活函数和损失函数。目前并没有确定的答案,通常采用试错法或标准网格搜索,将深度和每层大小作为超参数进行调整。以下是一些自动编码器的设计准则:
- 输出层大小 :输出层与输入层大小相同。
- 网络对称性 :多数情况下网络是对称的,非对称网络会使编码器和解码器函数复杂度不同,除非有特殊原因,否则对称网络更优。编码和解码网络的权重可以相同或不同。
- 编码阶段隐藏层大小 :编码阶段隐藏层小于输入层,即“欠完备自动编码器”。多层编码器逐渐减小表示大小,隐藏层大小通常最多为前一层的一半。例如,输入层有100个节点,合理的架构可以是100 - 40 - 20 - 40 - 100。若隐藏层大于输入层,则无法实现压缩,学不到有意义的模式。
- 中间层作用 :在特征降维时,中间层(编码层)可设为2、3或4,便于数据可视化;在堆叠自动编码器中,中间层应更大,作为下一个编码器的输入层。
不同输入数据对应的激活函数和损失函数选择如下:
| 输入数据类型 | 输出激活函数 | 损失函数 |
| ---- | ---- | ---- |
| 二进制输入 | sigmoid | 交叉熵(伯努利交叉熵之和) |
| 实值输入 | 线性激活函数(ReLU或softmax) | 均方误差(MSE) |
| 不同类型输入数据(x)和输出u | 1.
超级会员免费看
订阅专栏 解锁全文
18

被折叠的 条评论
为什么被折叠?



