贝叶斯神经网络(BNN)靠谱吗?BNN的基本思想, 它的未来在哪里?

一个“大”的未来,总是要有一个“大”的期望 —— David 9

如果你还不清楚贝叶斯理论中先验后验的关系,David做个直白的比喻:如果你是天文学家,那你需要选用望远镜观察,然后记录数据,最终做出预测。这个过程中,你选用的“望远镜”就是“先验”,而你“记录数据”的过程就是“后验”,两者共同决定你的预测质量:

伽利略使用望远镜,来自:https://www.biography.com/news/galileo-discoveries-theories-modern-physics-astronomy

所以在用贝叶斯推断时(或变分推断时),如果先验(望远镜)选不好,后验估计(观测者记录)再好也是徒劳。当然,让一个外行人记录观测也是不靠谱的(失败的后验估计)。

这样,如果我们用贝叶斯思想去审视神经网络,你会发现它的“先验”无处不在,包括:

网络架构 (宽的网络还是深的网络?用resnet那样跳层还是inception那样分组?) , 

网络组件(内部用卷积还是类似rnn的记忆单元?选用什么方式防止过拟合?BN?Dropout?),

loss函数 (loss函数包含了你评估模型的核心先验,它在训练时深刻地影响了模型的收敛方向),

这些都是人为预先设置的“先验”(无论你是否察觉)。

什么是神经网络的“后验”估计呢?广义地说,整个神经网络的训练过程就是“后验”估计的过程传统地,我们用SGD梯度下降逼近模型的最优解,它帮助我们在庞大的数据中寻求后验估计

那么重点来了,贝叶斯神经网络(BNN)和这种一般神经网络 继续阅读贝叶斯神经网络(BNN)靠谱吗?BNN的基本思想, 它的未来在哪里?

“去端到端”化和复杂loss:梯度隔离的分层神经网络模型Greedy InfoMax(GIM),深入了解自监督学习#2,InfoNCE loss及其对分层脉冲神经网络的启发

“端到端”学习是个“童话”,讲给懒人听的“童话”  — David 9

记得听说“端到端”学习时的感受吗?有人告诉你只要准备训练数据集,其他的什么也不用做,等着模型收敛就行,就像有人告诉你上帝造了亚当,只需接受,不用怀疑。但是当实践时,所谓的“卖点”完全不是那么回事,代码不work要内部调试,模型性能差也要内部调优。

如果你运气好不用调试也不用调优,那么来自AMLab(阿姆斯特丹机器学习实验室)的这篇文章还会给你至少3个理由, 指出“端到端”的问题:

1. 所有的“端到端”深度模型每次迭代都需要对整体进行反向传播,这就意味着显存GPU的大量消耗:

2. 如果实现了分层隔离的神经网络模型,可以更高效地采用分布式边缘计算

3. 生物界或自然界普遍不是完全“端到端”的,记得我们之前讲过的脉冲神经网络吗?拿神经元举例,信息传递不是直入直出的,神经网络是有延时的,大脑和皮肤不是直接共享信息的,而是由中间的绿色兴奋区域(active zone)做中转的,脑皮层的神经元如果需要信息,他会自己去active zone拿:

来自:https://www.youtube.com/watch?v=C_2Q7uKtgNs&t=1433s

即,实际人类神经网络中的各个模块的独立性或许超出的我们的想象。换句话说, 继续阅读“去端到端”化和复杂loss:梯度隔离的分层神经网络模型Greedy InfoMax(GIM),深入了解自监督学习#2,InfoNCE loss及其对分层脉冲神经网络的启发