TensorFlow如何充分使用所有CPU核数,提高TensorFlow的CPU使用率,以及Intel的MKL加速

许多朋友使用服务器时,碰巧服务器没有安装GPU或者GPU都被占满了。可是,服务器有很多CPU都是空闲的,其实,把这些CPU都充分利用起来,也可以有不错的训练效果。

但是,如果你是用CPU版的TF,有时TensorFlow并不能把所有CPU核数使用到,这时有个小技巧David 9要告诉大家:

with tf.Session(config=tf.ConfigProto(
  device_count={"CPU":12},
  inter_op_parallelism_threads=1,
  intra_op_parallelism_threads=1,
  gpu_options=gpu_options,
)) as sess:

在Session定义时,ConfigProto中可以尝试指定下面三个参数: 继续阅读TensorFlow如何充分使用所有CPU核数,提高TensorFlow的CPU使用率,以及Intel的MKL加速

ICML 2017论文精选#1 用影响函数(Influence Functions)理解机器学习中的黑盒预测(Best paper award 最佳论文奖@斯坦福)

无论是机器学习还是人类学习,似乎一个永恒的问题摆在外部指导者的面前:“我究竟做错了什么使得它(他)的学习效果不理想?” — David 9

之前我们提到过,端到端学习是未来机器学习的重要趋势。

可以想象在不久的将来,一切机器学习模型可以精妙到酷似一个“黑盒”,大多数情况下,用户不再需要辛苦地调整超参数,选择损失函数,尝试各种模型架构,而是像老师指导学生一样,越来越关注这样一个问题:我究竟做错了什么使得它的学习效果不理想?是我的训练数据哪里给的不对?

今年来自斯坦福的ICML最佳论文正是围绕这一主题,用影响函数(influence functions)来理解机器模型这一“黑盒”的行为,洞察每个训练样本对模型预测结果的影响。

文章开篇结合影响函数给出单个训练样本 z 对所有模型参数 θ 的影响程度 的计算:

其中 ε 是样本 z 相对于其他训练样本的权重, 如果有 n 个样本就可以理解为 1/n 。

Hessian二阶偏导矩阵, 蕴含所有训练样本(总共 n 个)对模型参数θ 的影响情况.

而梯度

蕴含单个训练样本 z模型参数 θ 的影响大小. 继续阅读ICML 2017论文精选#1 用影响函数(Influence Functions)理解机器学习中的黑盒预测(Best paper award 最佳论文奖@斯坦福)

CVPR 2017论文精选#3 不可思议的研究: EEG脑电波深度学习在视觉分类中的应用

大脑是天然的特征提取器, 如果不能理解它, 或许可以模拟它, 它蕴含的泛化能力真是惊人 — David 9

许多人相信VR或AR硬件可能是人机交互的未来,  这些欺骗人眼睛和感官的技术, 都是来源于我们对这些感官更深层次的理解. 越是对这些感官了解透彻, 越是容易创造出魔法般的人机交互. 今天David 9想要分析的论文就和感官交互有关, 特别之处是它是人体最复杂的感官 — 大脑 .

很难想象今年CVPR上竟然有这样一篇近乎科幻不可思议的研究, 相信读完你也会兴奋的.

这篇文章本质上的研究, 是从EEG脑电波提取视觉特征, 从而进行我们常见的视觉分类任务(狗? 吉他? 鞋子? 披萨?):

来自: https://www.youtube.com/watch?v=9eKtMjW7T7w&t=343s

最后一层全连接层做的视觉分类任务是非常常见的.

不同的是前面层不再是从头训练Alexnet, GoogleNet或者VGG, 也不是预训练的神经网络. 而是通过收集脑电波信息, 分析脑电波提取的抽象特征. 继续阅读CVPR 2017论文精选#3 不可思议的研究: EEG脑电波深度学习在视觉分类中的应用