首页 首页 大数据 大数据入门 查看内容

TF Learn : 基于Scikit-learn和TensorFlow的深度学习利器

木马童年 2018-10-10 21:15 9 0

了解国外数据科学市场的人都知道,2017年海外数据科学最常用的三项技术是 Spark ,Python 和 MongoDB 。说到 Python ,做大数据的人都不会对 Scikit-learn 和 Pandas 感到陌生。 Scikit-learn 是最常用的 Python 机 ...

TF Learn : 基于Scikit-learn和TensorFlow的深度学习利器了解国外数据科学市场的人都知道,2017年海外数据科学最常用的三项技术是 Spark ,Python 和 MongoDB 。说到 Python ,做大数据的人都不会对 Scikit-learn 和 Pandas 感到陌生。

Scikit-learn 是最常用的 Python 机器学习框架,在各大互联网公司做算法的工程师在实现单机版本的算法的时候或多或少都会用到 Scikit-learn 。TensorFlow 就更是大名鼎鼎,做深度学习的人都不可能不知道 TensorFlow。

下面我们先来看一段样例,这段样例是传统的机器学习算法逻辑回归的实现:

TF Learn : 基于Scikit-learn和TensorFlow的深度学习利器

可以看到,样例中仅仅使用了 3 行代码就完成了逻辑回归的主要功能。下面我们来看一下如果用 TensorFlow 来实现同样的代码,需要多少行?下面的代码来自 GitHub :

一个相对来说比较简单的机器学习算法,用 Tensorflow 来实现却花费了大量的篇幅。然而 Scikit-learn 本身没有 Tensorflow 那样丰富的深度学习的功能。有没有什么办法,能够在保证 Scikit-learn 的简单易用性的前提下,能够让 Scikit-learn 像 Tensorflow 那样支持深度学习呢?答案是有的,那就是 Scikit-Flow 开源项目。该项目后来被集成到了 Tensorflow 项目里,变成了现在的 TF Learn 模块。

我们来看一个 TF Learn 实现线性回归的样例:

我们可以看到,TF Learn 继承了 Scikit-Learn 的简洁编程风格,在处理传统的机器学习方法的时候非常的方便。下面我们看一段 TF Learn 实现 CNN (MNIST数据集)的样例:

可以看到,基于 TF Learn 的深度学习代码也是非常的简洁。

TF Learn 是 TensorFlow 的高层次类 Scikit-Learn 封装,提供了原生版 TensorFlow 和 Scikit-Learn 之外的又一种选择。对于熟悉了 Scikit-Learn 和厌倦了 TensorFlow 冗长代码的用户来说,不啻为一种福音,也值得机器学习和数据挖掘的从业者认真学习和掌握。

作者:汪昊,恒昌利通大数据部负责人/资深架构师,美国犹他大学本科/硕士,对外经贸大学在职MBA。

在不久的将来,多智时代一定会彻底走入我们的生活,有兴趣入行未来前沿产业的朋友,可以收藏多智时代,及时获取人工智能、大数据、云计算和物联网的前沿资讯和基础知识,让我们一起携手,引领人工智能的未来!

数据科学 大数据 机器学习 互联网 工程师 深度学习
0

聚焦多智时代,引领智能变革

© 多智时代(www.duozhishidai.com)版权所有 / 工信部备案 豫ICP备15012664号