李飞飞高徒Andrej Karpathy提醒你,小心搭建神经网络的六个坑

2018-07-04    来源:raincent

容器云强势上线!快速搭建集群,上万Linux镜像随意使用

继Ian Goodfellow的推特小课堂之后,特斯拉的人工智能研究负责人、李飞飞斯坦福高徒Andrej Karpathy也在twitter上分享了他对神经网络的一些研究技巧。

昨晚,他连发几条twitter,细数了六种神经网络研究中的常见错误。引发了一波研究者们对于自己入过坑的吐槽。

 

 

来看一下Ian Goodfellow让你当心的这六个坑吧:

最常见的神经网络错误:

• 没有先试过所有数据一批处理

• 忘了为网络切换训练/评估模式

• 忘了在.backward()之前.zero_grad()(在pytorch中)

• 将softmaxed输出传递给预期原始logits的损失

• 使用BatchNorm时,您没有对线性/ 二维卷积层使用bias = False,或者反过来忘记将其包含在输出层中。 这个倒不会让你失败,但它们是虚假的参数

• 以为view()和permute()是一样的事情(不正确地使用view)

之后,在评论区,也有读者针对“对数据初始化”展开了讨论。

对此,Ian也进一步详细解释:

是的,有几次我重新打开数据,得到的损失值却一致,而且如果这样做会产生一个漂亮的损失曲线,这表明对数据初始化并不是明智的做法。我有时喜欢调整最后一层偏差,使之接近基础分布。

我喜欢先从最简单的开始,例如,先对所有未处理的数据进行训练,看看基本输出分布的表现如何,然后逐增加输入和扩大网络,确保每次都比以前的表现更好。

标签: 网络

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:为什么你需要改进训练数据,如何改进?

下一篇:Facebook承认向61家公司提供用户数据特殊访问权限