OpenFace手把手入门之 — 快速训练一个人脸识别模型,比一比你像哪个明星,亲测可用,python torch lua

OpenFace是一款优秀的开源深度学习人脸识别库。如果你熟悉torch,python或者lua,这款丰富的人脸识别库更是一款不可多得的工具。

今天David 9 就带大家手把手训练一个人脸识别模型,测试一下你像哪个明星?

1.  下载openface的docker镜像,免去你配置openface的过程:

docker pull bamos/openface

2. 跑这个docker镜像,进入项目目录:

docker run -v /Users:/host/Users -p 9000:9000 -p 8000:8000 -t -i bamos/openface /bin/bash
cd /root/openface

注意 -v /Users:/host/Users 这个参数是必要的。因为docker中的openface项目还没有训练数据集,把你本地的/Users目录挂载到docker镜像中的/host/Users目录,可以方便你复制一些用于训练的图片数据集。 继续阅读OpenFace手把手入门之 — 快速训练一个人脸识别模型,比一比你像哪个明星,亲测可用,python torch lua

KDD 2017精选#1 用”模仿和类比”挖掘加速创新 , GRU循环神经网络新用法(Best paper award 最佳论文奖)

An essential [of an inventor] is a logical mind that sees analogies. — Thomas Edison

很难想象如果所有创新工作交给AI去做, 人类存在的意义是什么?

今年KDD2017最佳论文(Accelerating Innovation Through Analogy Mining) 向这个方向迈进了一步. 作者试图从庞大的专利和文献库中, 挑选出可以激发发明者灵感的想法, 呈现给发明者(USPTO上就有900万多的专利)

如对于一个带电池的手机壳的初始idea:

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

通过”模仿和类别“挖掘, 模型可以搜索并提供下面idea的提示, 呈现给发明者:

上图是一个Flash充电时的卡扣装置, 和一个自带电源的USB插座, 都是对比模仿初始idea从庞大文献中找出的两个类似idea.

最后, 一个发明人看到以上这些启发和提示, 发明出了以下产品:

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

一个履带式的发电器, 戴在身上, 人体移动时, 就可以发电蓄电. 可见, 模型做出的前两个发明提示对发明者有一定的帮助. (模型给出了不完全相似但是很相关的启发) 继续阅读KDD 2017精选#1 用”模仿和类比”挖掘加速创新 , GRU循环神经网络新用法(Best paper award 最佳论文奖)

ICML 2017论文精选#2 用”策略草稿”进行模块化的多任务增强学习

人类日常行为中自觉或不自觉地总结抽象的”套路”, 以便将来在相同的情况下使用.  分层的增强学习正是研究了在较高的抽象任务中, 应该如何看待以前总结的”套路”, 并且如何在较低层的行为中使用它们. — David 9

正如我们之前提到过, 深度神经网络的迅速发展, 不会阻碍类似增强学习这样的高层学习框架发展, 而是会成为高层框架的重要底层支撑.

今年ICML最佳论文提名中的一篇(Modular Multitask Reinforcement Learning with Policy Sketches), 正是属于分层增强学习: 用”策略草稿“进行模块化的多任务增强学习.

说的通俗一点, 就是教会神经网络学习在各个不同的任务中总结通用的”套路”(或者说策略草稿,行为序列):

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

上图左右两图, 分别代表两个高层任务(“制作木板”(make planks) 和 “制作木棍”(make sticks)). 事实上, 这两个高层任务的完成, 都需要一个子策略π1的必要条件, 即  : 我们需要首先拿到木材 ! 继续阅读ICML 2017论文精选#2 用”策略草稿”进行模块化的多任务增强学习

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脑电波深度学习在视觉分类中的应用