超参数中,有学习率、Momentum梯度下降法的β ,Adam算法的 、 和 、神经网络的层数、隐藏层神经元个数、学习率的衰减率、mini-batch的大小等。其中学习率最为重要,β ,隐藏层神经元个数,mini-batch的大小等次之。
调整超参数的两个原则:
- 随机取值:随机取值不意味着均匀随机地取值,有时还需要应用对数标尺。
- 由粗糙到精细:若发现某个范围内的某几个点表现不错,放大这块小区域,在这个区域内更密集地取值。
通常每隔几个月需要更新超参数。
调整超参数有两种模式:1、Babysitting one model;2、Training many models in parallel。若有足够CPU资源,绝对选择第二种模式。
Batch归一化:
这样使得隐藏层单元值的均值和方差标准化。若采用这种归一化模型,参数b可取消。
归一化使每个层稍微独立于前一个层,减少了隐藏值分布的变化,有助于加速网络的学习,还有轻微正则化的作用,因为均值和方差只使用了mini-batch样本来计算,存在噪声。
当输入测试样本时,此时的μ和 可通过训练集中各个Mini-batch的指数加权平均获得。
Softmax:
对于多分类问题,需要在输出层用softmax作为激活函数。
对于零隐藏层的softmax,两个分类之间的决策边界都是线性的。