深度学习-个人理解
深度学习模型类似一个黑盒子,输入一组数据,产生一个输出,这个输出就可以称为得分函数的输出值。
根据输出值与实际值之间的比较,通过损失函数可以求得损失值。损失值越大,代表模型的分类效果越差。
其中,通过Softmax分类器可以将分类结果映射成概率。
前向传播和反向传播
前向传播:输入经过网络后产生一个得分值(或者分类概率),根据这个值求得Loss值
反向传播:基于当前的Loss值,参数通过链式法则回传,调整模型的参数
模型参数更新
方向:梯度的反方向(即Loss变化最快的方向)
大小:步幅(学习率),不能过大也不能过小。过大可能错过损失函数的最小收敛点,过小会花费更长的时间。
参数更新:大小*方向
为了防止训练参数中存在个别异常点,通常按照一个bachsize的平均值进行参数更新(批处理)
对于一个训练集来说,通常用两层循环,外层为epoch,内层为一个bachsize。
神经网络的其他内容
激活函数:防止反向传播时,出现传递的参数趋近于0的问题。
模型训练的过拟合问题:模型在训练集表现优秀,在测试集表现较差。
- 正则话参数,消除异常点对模型的影响。
- drop-out,消除某些神经元,非全连接网络,防止出现过拟合现象。
数据预处理:消除x轴、y轴的差异,将差异归一化。
权重矩阵的初始化:不能全部一样,随机赋值。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:深度学习-个人理解 - Python技术站