去年11月,谷歌大脑团队发布了EagerExecution,一个运行定义的新接口,为最流行的深度学习框架TensorFlow引入了动态图机制。Eager的出现让开发更加直观,大大降低了TensorFlow的上手难度。本文介绍了使用TensorFlowEager构建神经网络的简单教程。项目链接:https://github.com/madalinabuzau/tensorflow-eager-tutorials本文旨在帮助那些希望通过TensorFlowEager模式获得深度学习实践经验的人。TensorFlowEager让你可以像使用Numpy一样轻松地构建神经网络,它的一大优势是它提供了自动微分(无需手动反向传播,(*^▽^*)!)。它还可以在GPU上运行,从而显着加快神经网络训练速度。GoogleBrain开发团队表示,EagerExecution的主要优势如下:快速调试即时运行错误并通过Python工具集成支持动态模型,易于使用的Python控制流提供强大的自定义和高阶支持gradients适用于几乎所有可用的TensorFlow操作我试图让这个教程对每个人都易于理解,所以我尝试在没有GPU处理的情况下解决问题。本教程中使用的TensorFlow版本为1.7版本。入门1.构建一个简单的神经网络-下图将教您如何在综合生成的数据集上使用TensorFlowEager模式构建和训练单个隐藏层神经网络。2.在Eager模式下使用Metrics-下图将教您如何使用与Eager模式兼容的指标来解决三种不同的机器学习问题(多分类、不平衡数据集和回归)。简单但有用的知识3.保存和恢复已训练的模型-下图将教您如何保存已训练的模型并在以后恢复它以对新数据进行预测。4.将文本数据传输到TFRecords-下图将教您如何将可变序列长度的文本数据存储到TFRecords中。使用迭代器读取数据集时,可以快速批量填充数据。5.将图像数据传输到TFRecords-下图将教您如何将图像数据及其元数据传输到TFRecords。6.如何批量读取TFRecords数据——下图将教大家如何从TFRecords批量读取可变序列长度数据或图片数据。卷积神经网络(CNN)7.为情感识别构建CNN模型-下图将教您使用TensorFlowEagerAPI和FER2013数据集从头开始构建CNN模型。完成后,您将能够使用您的网络摄像头来试验您自己的神经网络,这是一个很好的尝试!递归神经网络(RNN)08.为序列分类构建动态RNN-了解如何使用可变序列输入数据。下图将介绍如何使用TensorFlowEagerAPI和StanfordLargeMovieReviewDataset构建动态RNN。09.构建时间序列回归RNN——下图显示了如何构建用于时间序列预测的RNN模型。【本文为栏目组织《机器之心》原创文章,微信公众号《机器之心(id:almosthuman2014)》】点此查看作者更多好文
