神经网络构建与训练全解析
1. 多层隐藏层的优势
在构建神经网络时,尝试不同的模型配置是很有必要的,比如改变层数、神经元数量以及权重初始化方式等。经过一定时间的尝试,有可能在几分钟的运行时间内实现超过 90% 的准确率,但这需要付出一些努力。
理论上,单层网络可以近似任何可想象的函数,但所需的神经元数量可能非常庞大,导致模型实用性降低。而且能近似函数并不意味着网络能够学会这样做,可能是由于涉及的神经元数量过多或者所需时间过长。
从经验来看,具有更多层的网络通常需要更少的神经元就能达到相同的效果,并且对未知数据的泛化能力更好。例如,在处理图像时,一层网络可能学会识别图像的垂直边缘,另一层则可以学会识别水平边缘。在预测波士顿地区房屋售价时,多层网络也能揭示特征与价格之间更复杂的关系,第一层可能揭示基本关系,如大房子价格更高;第二层可能揭示更复杂的关系,如大但卫生间少的房子售价低。
在确定网络层数和神经元数量时,没有固定的规则。一般建议从较少的层数和神经元数量开始,逐步增加,直到结果不再改善为止。
2. 不同网络的比较
构建具有大量层或神经元的神经网络并不难,但容易在众多可能的模型中迷失方向,不清楚哪些值得尝试。当已经有一个达到一定准确率的网络,想尝试不同模型时,可以先增加隐藏层的神经元数量。例如,在一个隐藏层分别有 1、5、15 和 30 个神经元的网络中,从 1 个神经元增加到 5 个神经元能使收敛速度明显加快,但继续增加神经元数量,效果提升并不明显。
仅比较神经元数量可能会产生误导,更应该关注网络的可学习参数数量。对于第 l 层,可学习参数数量 Q[l] 的计算公式为:
[Q[l] =
神经网络构建与训练详解
超级会员免费看
订阅专栏 解锁全文

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



