用Keras训练一个准确率90%+的Cifar-10预测模型

第五届ICLR(ICLR2017)最近被炒的厉害,David 9回顾去年著名论文All you need is a good init,当时提出了一种新型初始化权重的方法,号称在Cifar-10上达到94.16%的精度,碰巧最近在看Keras。

好!那就用Keras来还原一下这个Trick。效果果然不错,没怎么调参,差不多200个epoch,testing准确率就徘徊在90%了,training准确率到了94%:

测试准确率
测试准确率

继续阅读用Keras训练一个准确率90%+的Cifar-10预测模型

keras 手把手入门#1-MNIST手写数字识别 深度学习实战闪电入门

人们已经教会计算机自动找出那些重要的特征和属性, 那么下一步我们改教会计算机什么? — David 9

用深度学习框架跑过实际问题的朋友一定有这样的感觉: 太神奇了, 它竟然能自己学习重要的特征 ! 下一步我们改教会计算机什么?莫非是教会他们寻找新的未知特征

对于卷积神经网络cnn, 其中每个卷积核就是一个cnn习得的特征, 详见David 9之前的关于cnn博客

今天我们的主角是keras,其简洁性和易用性简直出乎David 9我的预期。大家都知道keras是在TensorFlow上又包装了一层,向简洁易用的深度学习又迈出了坚实的一步。

所以,今天就来带大家写keras中的Hello World , 做一个手写数字识别的cnn。回顾cnn架构:

我们要处理的是这样的灰度像素图: 继续阅读keras 手把手入门#1-MNIST手写数字识别 深度学习实战闪电入门

10个超实用的python可视化库,总有一款适合你~

再好的数据,也离不开可视化 — David 9

最近David 9翻看以前收藏,发现一篇关于python可视化库的文章,现在忍不住想分享给大家。以下是改编和翻译:

从专注研究眼睛移动的GazeParser项目到可视化神经网络实时训练的pastalog项目,优秀的python可视化的项目非常多,是时候我们总结一下10个超实用的python可视化库,相信总有一款适合你~ 而且,这些库可以在jupyter python notebook中直接运行显示。

matplotlib

上图是两个柱状图 (matplotlib)

matplotlib 是经典老牌的Python数据可视化库了。在Python社区里几乎无人不知。而且它模仿了1980年代的MATLAB可视化库。

又因为matplotlib是第一个Python数据可视化库,许多优秀的可视化库是基于matplotlib的,比如 pandas 和 Seaborn继续阅读10个超实用的python可视化库,总有一款适合你~

深度 | 对比深度学习十大框架:TensorFlow最流行但并不是最好

本文经 机器之心(微信公众号:almosthuman2014)授权转载,禁止二次转载
选自Medium
机器之心编译参与:吴攀、朱思颖、李亚洲

2016 年已经过去,BEEVA Labs 数据分析师 Ricardo Guerrero Gomez-Ol 近日在 Medium 上发表了一篇文章,盘点了目前最流行的深度学习框架。为什么要做这一个盘点呢?他写道:「我常听到人们谈论深度学习——我该从哪里开始呢?TensorFlow 是现在最流行的吧?我听说 Caffe 很常用,但会不会太难了?在 BEEVA Labs,我们常常需要应对许多不同的深度学习库,所以我希望能够将我们的发现和感想分享出来,帮助那些刚刚进入深度学习这一美丽世界的人。」

TensorFlow

链接:https://www.tensorflow.org/

对于那些听说过深度学习但还没有太过专门深入的人来说,TensorFlow 是他们最喜欢的深度学习框架,但在这里我要澄清一些事实。

在 TensorFlow 的官网上,它被定义为「一个用于机器智能的开源软件库」,但我觉得应该这么定义:TensorFlow 是一个使用数据流图(data flow graphs)进行数值计算的开源软件库。在这里,他们没有将 TensorFlow 包含在「深度学习框架」范围内,而是和 Theano 一起被包含在「图编译器(graph compilers)」类别中。 继续阅读深度 | 对比深度学习十大框架:TensorFlow最流行但并不是最好

用python做贝叶斯A/B测试 — 贝叶斯A/B测试入门 以及“共轭先验”是什么?

如果不再假设一个分布的参数是固定的,而是去寻找这个参数可能的分布,就可以理解超参数的意义 — David 9

A/B测试一直是David 9想cover的知识点,今天又邂逅一篇相关文章:“tl;dr Bayesian A/B Testing with Python”。于是今天决定讲解一下如何“用python做贝叶斯A/B测试”。所以,现在,两个重要的知识点是 A/B 测试 和 “共轭先验”。

关于A/B测试,其实概念非常简单,简单来说,就是为同一个目标制定两个方案(比如两个页面),让一部分用户使用 A 方案,另一部分用户使用 B 方案,记录下用户的使用情况,看哪个方案更符合设计。A/B测试已经在Web上得到广泛的应用,可以用于增加转化率注册率等网页指标[3].

很显然,A方案的转化率可以看作一个二项分布:

继续阅读用python做贝叶斯A/B测试 — 贝叶斯A/B测试入门 以及“共轭先验”是什么?

Stanford教授Daphne Koller 概率图模型 — 终极入门 第三讲 马尔可夫网络 (Markov Networks)

贝叶斯网络中的一些基本直觉,不能直接使用到马尔可夫网络 — David 9

上一讲, 我们介绍了模板模型 今天我们要把注意力放到无向图模型,以及马尔可夫网络 (Markov Networks). 事实上之所以叫做无向图模型,只是因为概率图中的边可以是双向的:

这里的Φ1[A, B] 称为一个factor(因素)。但是Φ1[A, B]并不是有用的分布。如上图, Φ1[A, B]只是代表AB边之间各种组合的概率,并不是A和B联合概率。因为A和B联合概率的取值同时也被C和D影响(仅仅一条边的情况不能说明问题)。

另外,不要以为 P = Φ1(A, B) * Φ2(B, C) * Φ3(C, D) * Φ4(A, D) 就是这个图的联合概率继续阅读Stanford教授Daphne Koller 概率图模型 — 终极入门 第三讲 马尔可夫网络 (Markov Networks)

Stanford教授Daphne Koller 概率图模型 — 终极入门 第二讲 模板模型 (Template Models)

模板模型 , 是机器学习模型进行时空上复制的一种有效方法 — David 9

接着上一讲, 有向图模型与贝叶斯网络基础 这一讲我们关注模板模型 (Template Models). “模板模型”在机器学习领域, 并非常用的术语, 但是在许多概率图模型中, 都有”模板模型”的影子.

所以, “模板模型”这样有价值的概率图模型抽象思想, 值得用一篇文章来解释解释.

首先, 模板模型 (Template Models)顾名思义, 是用模板的思维建立出的模型. 许多非常复杂的图模型, 事实上是可以简化的. 简化时, 通过共享通用的变量, 通用的概率图结构, 可以归纳出通用的模板模型, 达到类似复用的效果.

还记得我们讲过的动态主题模型 ? 动态主题模型正是在不同的时间点上, 复制主题模型的. 这里, 主题模型就是一个模型模型. 模版模型描述了模版变量如何从模版中继承依赖关系,同样应用的典型例子有: 动态贝叶斯模型DBN隐马尔科夫模型HMM, 盘模型Plate Models

在来看一下课程试题, 加深对模板模型的印象:

继续阅读Stanford教授Daphne Koller 概率图模型 — 终极入门 第二讲 模板模型 (Template Models)