PyCon 2018数据科学talk盘点#1,入坑PyTorch前你需要知道的事,为什么要用PyTorch,以及PyTorch与TensorFlow的区别

一年一度的PyCon大会上周在俄亥俄Cleveland举行,youtube上早早放出了talk列表。虽然PyCon聚焦Python语言本身,但是关于数据科学AI的talk也不在少数。

David 9感兴趣talk之一就是来自PyLadiesStephanie Kim关于PyTorch介绍

太多小伙伴问David 9 哪个深度学习框架好?用TensorFlow还是PyTorch好 ?

现在是时候结合这个talk给大家讲清楚了。

首先,框架各有自己的优势,关键是你项目需要和个人喜好:

Stephanie Kim在PyCon2018上的talk:https://www.youtube.com/watch?v=LEkyvEZoDZg&t=1464s

如果你的项目和RNN强相关,并且希望写RNN模型的时候更轻松敏捷,或者,你是从事科学研究的人员,那么PyTorch更适合你; 如果你项目定位是一个稳定产品(TensorFlow Serving),或者你注重高效训练,并且想把模型移植到轻量级移动端(TensorFlow Lite), 那么选择Tensorflow更合适。 继续阅读PyCon 2018数据科学talk盘点#1,入坑PyTorch前你需要知道的事,为什么要用PyTorch,以及PyTorch与TensorFlow的区别

当变分推断(variational inference)遇上神经网络,贝叶斯深度学习以及Pytorch开源代码

如果人脑在执行任务时有特定模式,那么神经网络在增强学习中也应该有特定模式,而不是杂乱无章地更新 — David 9

我们在之前的文章中讨论过,Evolution Strategy遗传算法等传统算法都可以在深度增强学习中发挥作用。其实,人们早就在神经网络中植入各种传统机器学习的方法(包括L2正则法等等)。

在2015年google的论文中就提到结合变分推断(variational inference)启发式更新神经网络的内部参数:

来自:https://arxiv.org/pdf/1505.05424.pdf

其性能效果堪比dropout方法,并且在增强学习中有较好表现。

那么,贝叶斯深度学习或者说变分推断(variational inference)如何应用在神经网络呢?

理论上,对于一般的深度神经网络,Loss如下:

θ 是神经网络的内部参数集。xi, yi 即样本集中的一个样本。上式只是让训练损失最小。

即,要找到一个最好的 θ* ,让  Ln(θ) 最小。 继续阅读当变分推断(variational inference)遇上神经网络,贝叶斯深度学习以及Pytorch开源代码