TensorFlow 2.0 代码实战专栏开篇

作者 |  Aymeric Damien

编辑 | 奇予纪

出品 | 磐创AI团队

原项目 |  https://github.com/aymericdamien/TensorFlow-Examples/

 写在前面的话

TensorFlow是谷歌2015年开源的通用高性能计算库。最初主要是为构建神经网络(NNs)提供高性能的API。然而,随着时间的推移和机器学习(ML)社区的兴起,TensorFlow已经发展为一个完整的机器学习生态系统。

TensorFlow虽是深度学习领域最广泛使用的框架,但是对比PyTorch这一动态图框架,采用静态图(Graph模式)的TensorFlow确实是难用。好在最近TensorFlow支持了eager模式,对标PyTorch的动态执行机制。更进一步地,Google推出了全新的版本TensorFlow 2.0,2.0版本相比1.0版本不是简单地更新,而是一次重大升级。

简单地来说,TensorFlow 2.0默认采用eager执行模式,而且重整了很多混乱的模块。毫无疑问,2.0版本将会逐渐替换1.0版本,所以很有必要趁早入手TensorFlow 2.0。

本系列将对aymericdamien使用tensorflow2.0编写的示例注释进行翻译,以便大家快速上手。翻译过程中难免有疏漏,如发现错误,希望大家指出,谢谢支持。

github项目地址:

https://github.com/aymericdamien/TensorFlow-Examples/tree/master/tensorflow_v2

0. 前言

  • 机器学习介绍
  • MNIST 数据集介绍

1. 介绍

  • Hello World。一个非常简单的示例,学习如何使用TensorFlow 2.0打印“ hello world”。
  • 基础操作。一个包含TensorFlow 2.0基础操作的简单示例。

2. 基础模型

  • 线性回归。使用TensorFlow 2.0实现线性回归。
  • 逻辑回归。使用TensorFlow 2.0实现逻辑回归。
  • Word2Vec (Word Embedding)。使用TensorFlow 2.0从Wikipedia数据构建一个Word Embedding 模型(Word2Vec)。

3. 神经网络

监督方式

  • 简单神经网络。使用TensorFlow 2.0的“layers”和“model”API构建一个简单的神经网络来对MNIST数字数据集进行分类。
  • 简单神经网络(低级)。一个原始的简单神经网络实现来对MNIST数字数据集进行分类。
  • 卷积神经网络。使用TensorFlow 2.0的“layers”和“model”API构建卷积神经网络对MNIST数字数据集进行分类。
  • 卷积神经网络(低级)。原始卷积神经网络的实现来对MNIST数字数据集进行分类。
  • 递归神经网络(LSTM)。使用TensorFlow 2.0“layers”和“model”API,构建递归神经网络(LSTM)对MNIST数字数据集进行分类。
  • 双向递归神经网络(LSTM)。使用TensorFlow 2.0“layers”和“model”API,构建双向递归神经网络(LSTM)对MNIST数字数据集进行分类。
  • 动态递归神经网络(LSTM)。使用TensorFlow 2.0“layers”和“model”API,构建一个递归神经网络(LSTM),对可变长度序列进行动态计算分类。

无监督方式

  • 自编码器。构建一个自编码器,将一个图像编码到一个较低的维度,并重新构建它。
  • 深度卷积生成对抗网络(DCGAN)。构建深度卷积生成对抗网络(DCGAN)以从噪声生成图像。

4. 工具

  • 保存和加载模型。使用TensorFlow 2.0保存和加载模型。
  • 构建自定义层和模块。学习如何构建自己的层/模块,并将它们集成到TensorFlow 2.0模型中。

5. 数据管理

  • 加载和解析数据。使用TensorFlow 2.0构建高效的数据管道(Numpy数组、图像、CSV文件、自定义数据等)。
  • 构建和加载TFRecords。将数据转换为TFRecords格式,并使用TensorFlow 2.0加载它们。
  • 图像变换(即图像增强)。使用TensorFlow 2.0应用各种图像增强技术,生成用于训练的失真图像。

安装

要安装TensorFlow 2.0,只需运行:

pip install tensorflow==2.0.0

或者(如果你需要GPU版本):

pip install tensorflow_gpu==2.0.0
Image placeholder
boer0924
未设置
  46人点赞

没有讨论,发表一下自己的看法吧

推荐文章
入门 | Tensorflow实战讲解神经网络搭建详细过程

作者| AI小昕编辑| 磐石出品| 磐创AI技术团队【磐创AI导读】:本文详细介绍了神经网络在实战过程中的构建与调节方式。之前我们讲了神经网络的起源、单层神经网络、多层神经网络的搭建过程、搭建时要注意

TensorFlow技术主管Peter Wardan:机器学习的未来是小而美

大数据文摘授权转载自OReillyAIPeteWardan任谷歌TensorFlow移动和嵌入式团队的leader,在O’ReillyAIConference2019的Keynote演讲环节,他对机器

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

大数据文摘出品来源:thegradient编译:张大笔茹、曹培信、刘俊寰、牛婉扬、Andy2019年,机器学习框架之争进入了新阶段:PyTorch与TensorFlow成为最后两大玩家,PyTorch

10分钟,用TensorFlow.js库,训练一个没有感情的“剪刀石头布”识别器

大数据文摘出品编译:Luciana、小七、宁静“剪刀石头布”是我们小时候经常玩的游戏,日常生活中做一些纠结的决策,有时候也常常使用这种规则得出最后的选择,我们人眼能很轻松地认知这些手势,“石头”呈握拳

TensorFlow与PyTorch之争,哪个框架最适合深度学习

谷歌的Tensorflow与Facebook的PyTorch一直是颇受社区欢迎的两种深度学习框架。那么究竟哪种框架最适宜自己手边的深度学习项目呢?本文作者从这两种框架各自的功能效果、优缺点以及安装、版

如何使用TensorFlow机器学习对图像进行分类?

本文将介绍如何使用迁移学习使用TensorFlow机器学习平台对图像进行分类。在机器学习环境中,迁移学习是一种技术,使我们能够重用已经训练的模型并将其用于另一个任务。图像分类是将图像作为输入并为其分配

Flutter路由项目实战之fluro

github:https://github.com/zhengzhuan...关于flutter路由,在小项目中,就按照原生写法,但是在大型项目中,这样的我就不会进行推荐,我这里使用的fluro路由管

Stack Overflow 上最火的一个问题:什么是 NullPointerException

在逛StackOverflow的时候,发现最火的问题竟然是:什么是NullPointerException(java.lang.NullPointerException),它是由什么原因导致的,有没有

数据结构与算法分析——开篇以及复杂度分析

开篇 你也许已经发现了,工作了几年,原以为已经是一只老鸟。但看到刚参加工作的同事,你发现,原来自己一直在原地踏步。跟新人相比,你的唯一优势就是对业务更熟悉而已,别的就没有什么优势了。 怎样才能够让自己

数据结构与算法分析——开篇以及复杂度分析

开篇你也许已经发现了,工作了几年,原以为已经是一只老鸟。但看到刚参加工作的同事,你发现,原来自己一直在原地踏步。跟新人相比,你的唯一优势就是对业务更熟悉而已,别的就没有什么优势了。怎样才能够让自己更上

Stack Overflow上188万浏览量的提问:Java 到底是值传递还是引用传递?

在逛StackOverflow的时候,发现了一些访问量像阿尔卑斯山一样高的问题,比如说这个:Java到底是值传递还是引用传递?访问量足足有188万+,这不得了啊!说明有很多很多的程序员被这个问题困扰过

Stack Overflow 上 370万浏览量的一个问题:如何比较 Java 的字符串?

在逛StackOverflow的时候,发现了一些访问量像喜马拉雅山一样高的问题,比如说这个:如何比较Java的字符串?访问量足足有370万+,这不得了啊!说明有很多很多的程序员被这个问题困扰过。PS:

老焦专栏 | 用 RACI 模式梳理业务流程,提高业务发布的效率

转载本文需注明出处:微信公众号EAWorld,违者必究。最近经常在不同场合说,技术发展已经进入深水区。IT技术发展已经越来越成熟了,尤其在金融行业,以前是解决从无到有的问题,现在该有的系统都有了,是解

专栏第一页

大家好,欢迎来到这个专栏。在我开始写这个专栏之前,我常看知乎上一些零星的数据库论文总结与整理。其中的一篇惊为天人https://zhuanlan.zhihu.com/p/...。谢谢这一篇专栏给我的灵

基于JS的高性能Flutter动态化框架MXFlutter

导语:18年10月份,手机QQ看点团队尝试使用Flutter,做为iOS开发,一接触到Flutter就马上感受到,Flutter虽然强大,但不能像RN一样动态化是阻碍我们使用她的唯一障碍了。看Goog

让AI无处不在:滴滴与蚂蚁金服开源共建SQLFlow

2018年1月,Oracle的官方博客上发表了一篇文章,标题是“It’sPervasive:AIIsEverywhere”。作为全球最著名的商业数据库系统提供商,Oracle在这篇文章里历数了AI在企

Hyperf 权限管理组件 hyperf-permission 发布

本人正在申请版主,还望各位多评论,收藏,点赞GITHUB:https://github.com/donjan-deng/hyperf-perm...欢迎star,欢迎pr.Hyperf权限管理组件sp

Go语言高级编程_2.6 实战: 封装qsort

2.6实战:封装qsort qsort快速排序函数是C语言的高阶函数,支持用于自定义排序比较函数,可以对任意类型的数组进行排序。本节我们尝试基于C语言的qsort函数封装一个Go语言版本的qsort函

基于 Hyperf 实现 RabbitMQ + WebSocket 消息推送

#介绍 基于Hyperf+WebSocket+RabbitMQ实现的一个简单大屏幕的消息推送。 #思路 利用WebSocket协议让客户端和服务器端保持有状态的长链接,保存链接上来的客户端id。订阅发

Hyperf 框架创建 JSON-rpc 服务

我们创建一个User服务供其他服务调用以实现认证和鉴权。创建文件UserService.phpcheckToken方法接收两个参数,一个token,一个permission,首先验证token获得us

Spring Cloud 上手实战-架构解析及实作

Spring简介为什么要使用微服务单体应用:目前为止绝大部分的web应用软件采用单体应用,所有的应用的用户UI、业务逻辑、数据库访问都打包在一个应用程序上。缺点:开发相互干扰,随着应用的不断升级沟通协

GoWeb教程_09.1. 预防CSRF攻击

什么是CSRF CSRF(Cross-siterequestforgery),中文名称:跨站请求伪造,也被称为:oneclickattack/sessionriding,缩写为:CSRF/XSRF。

两年Flink迁移之路:从standalone到on yarn,处理能力提升五倍

一、背景与痛点在2017年上半年以前,TalkingData的AppAnalytics和GameAnalytics两个产品,流式框架使用的是自研的td-etl-framework。该框架降低了开发流式

css使用float怎么居中?

css使用float怎么居中?css并没有float:center,但是实现水平居中浮动是可以实现的。以下面的Li列表为例,我们要实现中间LI的居中浮动: 列表一 列表二 列表三 我们需要先了解下

Python可视化 | Seaborn5分钟入门(二)——barplot&countplot&pointplot

微信公众号:「Python读财」如有问题或建议,请公众号留言Seaborn是基于matplotlib的Python可视化库。它提供了一个高级界面来绘制有吸引力的统计图形。Seaborn其实是在matp