TensorFlow的动态图工具Eager怎么用?这是一篇极简教程

作者: 机器之心 2018-06-14 16:59:42

去年 11 月,Google Brain 团队发布了 Eager Execution,一个由运行定义的新接口,为 TensorFlow 这一最为流行的深度学习框架引入了动态图机制。Eager 的出现使得开发变得更为直观,从而让 TensorFlow 的入门难度大为降低。本文介绍了使用 TensorFlow Eager 构建神经网络的简单教程。

项目链接:https://github.com/madalinabuzau/tensorflow-eager-tutorials

本文旨在帮助那些希望通过 TensorFlow Eager 模式获得深度学习实践经验的人。TensorFlow Eager 可以让你像使用 Numpy 那样轻松地构建神经网络,其巨大优势是提供了自动微分(无需再手书反向传播,(*^?^*)!)。它还可以在 GPU 上运行,使神经网络训练速度明显加快。

谷歌大脑的开发团队曾表示,Eager Execution 的主要优点如下:

  • 快速调试即刻的运行错误并通过 Python 工具进行整合
  • 借助易于使用的 Python 控制流支持动态模型
  • 为自定义和高阶梯度提供强大支持
  • 适用于几乎所有可用的 TensorFlow 运算

我会努力让每个人都能理解这份教程,因此我将尽量在无需 GPU 处理的前提下解决问题。

教程中使用的 TensorFlow 版本为 1.7 版。

开始

1. 构建一个简单的神经网络——下图将教你如何在一个合成生成的数据集上用 TensorFlow Eager 模式构建和训练一个单隐藏层神经网络。

2. 在 Eager 模式中使用度量——下图将教你针对三种不同的机器学习问题(多分类、不平衡数据集和回归),如何使用与 Eager 模式兼容的度量。

简单但实用的知识

3. 保存和恢复训练好的模型——下图将教你如何保存训练好的模型并随后恢复它以对新数据进行预测。

4. 将文本数据传输到 TFRecords——下图将教你如何把可变序列长度的文本数据存储到 TFRecords 中。当使用迭代器读取数据集时,数据可以在批处理中快速填充。

5. 将图像数据传输到 TFRecords——下图将教你如何把图像数据及其元数据传输到 TFRecords 上。

6. 如何批量读取 TFRecords 数据——下图将教你如何从 TFRecords 中批量读取可变序列长度数据或图像数据。

卷积神经网络(CNN)

7. 构建一个用于情绪识别的 CNN 模型——下图将教你使用 TensorFlow Eager API 和 FER2013 数据集从零开始构建一个 CNN 模型。在完成以后,你将能使用网络摄像头试验自己构建的神经网络,这是一个很棒的尝试!

循环神经网络(RNN)

08. 构建一个序列分类的动态 RNN——学习如何使用可变序列输入数据。下图将介绍如何使用 TensorFlow Eager API 和 Stanford Large Movie Review Dataset 来构建动态 RNN。

09. 构建一个时序回归 RNN——下图展示了如何为时序预测构建一个 RNN 模型。

【本文是51CTO专栏机构“机器之心”的原创文章,微信公众号“机器之心( id: almosthuman2014)”】

戳这里,看该作者更多好文

TensorFlow Eager 深度学习
上一篇:不同的领域、框架,这是一份超全的深度学习模型GitHub集合 下一篇:大数据+人工智能 双擎驱动企业数字化转型
评论
取消
暂无评论,快去成为第一个评论的人吧

更多资讯推荐

图灵奖得主Yoshua Bengio:深度学习当务之急,是理解因果关系

深度学习擅长在大量数据中发现模式,但无法解释它们之间的联系,而图灵奖获得者Yoshua Bengio想要改变这一点。

佚名 ·  23h前
2019机器学习框架之争:与Tensorflow竞争白热化,进击的PyTorch赢在哪里?

2019年,机器学习框架之争进入了新阶段:PyTorch与TensorFlow成为最后两大玩家,PyTorch占据学术界领军地位,TensorFlow在工业界力量依然强大,两个框架都在向对方借鉴,但是都不太理想。

大数据文摘 ·  4天前
18个挑战项目带你快速入门深度学习

AlphaGo 大战李世?h之后,深度学习技术便在国内变得异常火。吸引了大批的技术人员争相学习,那么到底如何才能更快速的入门深度学习呢?下面给大家介绍的 18 个挑战项目,通过实践动手带你快速入门深度学习!

实验楼 ·  2019-10-10 14:48:19
盘点 | 8个你可能不知道的深度学习应用案例

深度学习与传统机器学习系统的不同之处在于,它能够在分析大型数据集时进行自我学习和改进,因此能应用在许多不同的领域。

天极网 ·  2019-10-10 14:15:18
2019年较热门的5大深度学习课程

今天,我们将和大家盘点一下,当下较流行的深度学习资源/课程,可以帮助你们提升深度学习技能。

猿哥 ·  2019-09-26 05:16:24
DeepMind一次性开源3个新框架!深度强化学习应用落地即将迎来春天?

深度强化学习(Deep Reinforcement Learning,DRL)一直是近年来人工智能的一些重大突破的核心。然而,尽管 DRL 有了很大的进步,但由于缺乏工具和库,DRL 方法在主流解决方案中仍然难以应用。

杨鲤萍 ·  2019-09-20 09:38:18
一步一步带你完成深度学习与对象检测之人脸识别

要进行人脸识别,就要搜集用户的人脸图片,我们从网站上搜集了几个明星的照片来进行本期文章的分享。此部分文章是人脸识别的第一部分,人脸数据的搜集与提取,后期我们分享人脸识别系统的神经网络训练与人脸识别。

人工智能研究所 ·  2019-09-18 07:20:34
看懂这十步,8岁的小朋友都能理解深度学习

如果对当今人工智能的主流技术——深度学习没有了解,可能真的会有人觉得,当前的科学家们在创造无所不能、无所不知的电影AI形象。那么,如何用最浅显的方式,给大众解释什么是深度学习呢?快来看看吧!

佚名 ·  2019-09-17 16:56:39
Copyright©2005-2019 51CTO.COM 版权所有 未经许可 请勿转载