title: Krizhevsky等人是怎么想到在CNN里用Dropout和ReLu的?
desc: 当然拿到结果以后我们倒回去看，可以为ReLu和Dropout做出各种解释来说明它们为什么work， 但是我更好奇的是，当初他是怎么想到要用这个东东而不是别的？传统的来说，自然的选择应该是sigmoid，tanh， RBF这些不是吗？为什么会有人一拍脑袋想出个ReLu为什么又有人会一拍脑袋想出要dropout他们运气好到拍脑袋想到修改一个模块的主意就正好可以work吗？还是说尝试了各种可能的方案？如果是这样，那工作量太大了，因为拍脑袋可以想出无数种nonlinear transfer function的形式或者对数据筛选的方式。当然David Lowe说他发明SIFT的时候也是把各种方案都尝试了一遍，但我还是宁愿相信Krizhevsky是有某种方向而不是纯粹的暴力尝试
topic: 机器学习
content: 因为他老板刚好是Hinton 有人问hinton又怎么想到？ Hinton专业调参几十年了，水到渠成么。dropout的motivation就是一项早就为人熟知的trick：训练多个网络，取平均。没错就是bagging或者集成学习的思路。可是Hinton想了，卧槽，这个看上去不在我神经网络的框架之内啊，我怎么能做那些看上去在follow别人工作的事呢？于是眉头一皱，计上心来，有了，弄成in place的平均我并不显式的训练多个网络，网络只有一个但效果上取平均