基本概念理解:
一个epoch:当前所有数据都跑(迭代)了一遍;
那么两个epoch,就是把所有数据跑了两遍,三个epoch就是把所有数据跑了三遍,以此类推。
batch_size:每次迭代多少个数据;(batch_size称作批处理, 它的作用可以理解为每次训练100个数据(在这里假设将其设置为100),找到最适合的优化方向,确保不偏离最优那个的方向)
epoch 和 batch_size 的关系:一个epoch值除以batch_size=迭代次数。
例如:
有50000个数据,那么一个epoch值就是50000。
我们将batch_size的值设置为100。
那么迭代次数就是50000除以100,等于500次。即在batch_size =100的情况下,跑完一个epoch需要迭代500次。
神经网络是怎么如何参数更新的:
三步:前向传播、反向传播、参数更新。
反向传播例1:
反向传播流程:
反向传播例2:
神经网络基础架构(建议不要去看生物学上的解释,单纯数学上的理解或更可取):
再看这个图:
ReLU函数:
Drop-Out: