神经网络与自编码器实战:从图像分类到特征压缩
1. 神经网络模型构建与确认
在构建好神经网络模型后,可使用 summary 方法来确认模型结构和可训练参数(权重)的数量。示例代码如下:
model.summary()
此方法输出的表格会总结神经网络的结构,例如一个包含两层的网络,第一层有 500 个单元,第二层有 10 个输出单元,同时还会显示每层可训练权重的数量以及网络中可训练权重的总数。
2. 神经网络训练基础
在定义好神经网络模型后,就可以开始训练过程。这里先进行有监督学习训练,熟悉 Keras 框架,再转向自编码器的训练。有监督学习是为模型提供输入信息和已知输出,目标是构建一个网络,仅使用模型参数将输入信息转换为已知输出。
在像 CIFAR - 10 这样的有监督分类示例中,输入信息是图像,已知输出是图像所属的类别。训练时,对于每个样本预测,使用指定的误差函数计算前馈网络预测的误差,然后调整模型中的每个权重以减少误差,这个调整过程称为反向传播,即误差从输出端反向传播到网络起始端。
反向传播时,每个可训练权重的调整量与它对总误差的贡献成正比,并乘以学习率,学习率控制可训练权重的变化率。学习率的选择很关键,过大可能导致无法收敛到最小误差,过小则可能导致找不到全局最小值。通常可以先使用较大的学习率,再逐步减小。
训练会重复进行,直到预测误差不再减小或开发者失去耐心。完成训练过程需要做出一些设计决策:
- 误差函数 :有多
超级会员免费看
订阅专栏 解锁全文

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



