这四大组件就是:
- 层
- 输入数据和标签
- 损失函数
- 优化器
这四者的关系描述如下:
多层组合在一起形成了网络,网络的目的是将输入数据映射为预测值,通过损失函数将预测值和目标值比较,得出损失值,用来衡量网络的性能,而优化器的职责是迭代优化损失值来更新网络权重(BP算法)。
层:构建网络的乐高积木
深度学习模型的最常见用法是层的线性堆叠,将单一输入映射为单一输出,即数据从一端进,然后从另一端出。
但是这不是唯一,还有其他的网络拓扑类型,比如:
- 双分支网络
- 多头网络
- Inception模块
在机器学习的定义中我们已经学过,机器学习是在一个预先定义好的假设空间中,利用反馈信号来寻找对输入数据的有用的表征。网络的拓扑结构定义了一个假设空间。
这个假设空间就被限定为一系列特定的张量计算,我们为了做好深度学习模型,就需要为这些张量计算的权重找到一组合适的值。
选择正确的网络架构更像是一门艺术而不是科学。虽然有一些最佳的实践和原则,但只有动手实践才能成为合格的神经网络架构师。
损失函数与优化器
在确定了网络架构以后,还需要选择两个参数:
- 损失