神经网络常见错误(Most Common Neural Net Mistakes)

神经网络常见错误(Most Common Neural Net Mistakes)

本文总结自Andrej Karpathy的一篇推特及其评论区。原推特链接
在这里插入图片描述

  1. 你没有尝试在一个batch上首先达到过拟合
  2. 你忘记转换train和eval模式
  3. 你忘记在.backward()之前设置.zero_grad()在Pytorch中
  4. 你向损失函数输入了一个经过softmax后的输出,但是可能你的损失函数需要一个原始概率作为输入
  5. 你没有在使用BatchNorm时将你的Linear层或Conv2d层的偏差设为False即设置bias=False
  6. 你错误的使用了.view() 和.permute()错误的认为它们是一个东西
  7. 初始学习率设置的过于大了
  8. 错误的数据增强(data augmentation)如:涉及左右的视觉任务使用随机mirror进行数据增强
  9. 你忘记将做完比较的tensor转回为float()类型,或加减byte()类型然而结果超出0-255的范围
  10. 忘记打乱训练集的数据(shuffle),导致一个batch内的数据有较强的关联
  11. 使用了错误的normalization,或训练和测试过程没有使用同样的normalization
  12. 在错误的维度上使用softmax或其他的loss
  13. loss项使用了错误的符号
  14. 忘记在求和、平均、取最大值等操作是指明维度(dim/axis)如在平均一个batch的loss时
  15. fine-tuning或feature extraction时:数据预处理不一致(如均值、方差与预训练集不同)
发布了25 篇原创文章 · 获赞 18 · 访问量 4万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章