【完结】TensorFlow2.0 快速上手手册

tensorflow2.0教程- Keras 快速入门 tensorflow.keras 快速入门 完整tensorflow2.0教程代码请看tensorflow2,0:中文教程tensorflow2_tutorials_chinese(欢迎star) Keras 是一个用于构建和训练深度学习模型的高阶 API。它可用于快速设计原型、高级研究和生产。 keras的3个优点: 方便用户使用、模块化和可组合、易于扩展 1.导入tf.keras tens... 阅读详情

大家好,这是专栏《TensorFlow2.0》的第五篇文章,我们对专栏《TensorFlow2.0》进行一个总结。

我们知道全新的TensorFlow2.0 Alpha已经于2019年3月被发布,新版本对TensorFLow的使用方式进行了重大改进,为了满足各位AI人对TensorFlow2.0的需求,我们推出了专栏《TensorFlow2.0》,前四篇文章带大家领略了全新的TensorFlow2.0的变化及具体的使用方法。今天就带大家总结下TensorFlow2.0的一些变化。

作者&编辑 | 汤兴旺 

1 默认动态图机制

在tensorflow2.0中,动态图是默认的不需要自己主动启用它。

import tensorflow as tf

上面的结果是tf.Tensor([5 7 9], shape=(3,), dtype=int32)

可以说有了动态图,计算是非常方便的了,再也不需要理解复杂的graph和Session了。

另外我们在对比看下Pytorch中是如何计算上面的结果的。

import torch

a = torch.Tensor([1,2,3])

b = torch.Tensor([4,5,6])

print(a+b)

可以发现TensorFlow2.0和Pytorch一样简单了,而且代码基本一样。

2 弃用collections

我们知道在TensorFlow1.X中可以通过集合 (collection) 来管理不同类别的资源。例如使用tf.add_to_collection 函数可以将资源加入一个或多个集合。使用tf.get_collection获取一个集合里面的所有资源。这些资源可以是张量、变量或者运行 Tensorflow程序所需要的资源。我们在训练神经网络时会大量使用集合管理技术。如通过tf.add_n(tf.get_collection("losses")获得总损失。

由于collection控制变量很不友好,在TensorFlow2.0中,弃用了collections,这样代码会更加清晰。

我们知道TensorFlow2.0非常依赖Keras API,因此如果你使用tf.keras,每个层都会处理自己的变量,当你需要获取可训练变量的列表,可直接查询每个层。

from tensorflow import keras

我们通过model.weights,就可以查询每一层的可训练的变量。结果如下面这种形式。

<tf.Variable'dense/kernel:0' shape=(2,100)             

 dtype=float32,   numpy=array([[...]]), dtype=float32)>,

另外在TensorFlow2.0中,也删除了Variable_scopes和tf.get_variable(),需要用面向对象的方式来处理变量共享。

3 删除杂乱的API,重用Keras

之前TensorFlow1.X中包含了很多重复的API或者不推荐使用的 API,杂乱无章,例如可以使用 tf.layers或tf.keras.layers创建图层,这样会造成很多重复和混乱的代码。

如今TensorFlow 2.0正在摆脱tf.layers,重用Keras 层,可以说如果你使用TensorFlow2.0,那么使用Keras构建深度学习模型是你的不二选择。

详细介绍请看文后第二篇文章《以后我们再也离不开Kera了》。

另外tf.contrib的各种项目也已经被合并到Keras等核心API 中,或者移动到单独的项目中,还有一些将被删除。

可以说TensorFlow 2.0会更好地组织API,使编码更简洁。

4 学习TensorFlow2.0的建议

不管你是AI小白,还是已经学习很久的大神,对于TensorFlow2.0,我们或许都需要重新学,因为它的变化太多了。当你学习TensorFlow2.0时,有如下建议供你参考:

首先不要上来就是import tensorflow as tf。其实没有必要,我建议大家先把数据预处理先学会了。比如数据你怎么read,怎么数据增强。


这个可以查看文后第三篇文章《数据读取与使用方式》。


这篇文章介绍了Tensorflow2.0读取数据的二种方式,分别是Keras API和Dataset类对数据预处理。


另外对于数据导入方式,最好使用Dataset类,个人认为这个比较方便。一个简单的例子如下:

import tensorflow as tf

从上面的代码我们可以看出在2.0中导入数据没有make_one_shot_iter() 这样的方法了。这个方法已经被弃用了,直接用 take(1)。


当你学会了读取数据和数据增强后,你就需要学会如何使用TensorFlow2.0构建网络模型,在TensorFlow2.0中搭建网络模型主要使用的就是Keras高级API。


如果你想要学会这个本领,可以参考文后的第四篇文章《如何搭建网络模型》。


在这篇文章我们详细介绍了如何使用Keras API搭建线性模型VGG16和非线性模型Resnet。如果你是AI小白,想要更好的掌握TensorFlow2.0,建议你使用TensorFlow2.0完成搭建VGG、GoogLeNet、Resnet等模型,这样对你掌握深度学习框架和网络结构更有帮助。


当你完成了数据读取和模型搭建后,现在你需要做的就是训练模型和可视化了。一个简单的示例如下:

import tensorflow as tf

上面简单示例的数据集是我们框架系列文章一直所用的表情二分类数据集。从上面的代码我们可以看出从数据读取到模型定义再到训练和可视化基本用的都是Keras 高级API,这里不再赘述。需要下载数据集的请移步github。

acc和loss可视化结果如下两图,可以看出效果还是比较可以的,上面的代码已经同步到有三AI的GitHub项目,如下第一个。

640?wx_fmt=png

640?wx_fmt=png

5 TensorFlow2.0优秀的github

1、https://github.com/tangxingwang/yousan.ai

1、https://github.com/czy36mengfei/tensorflow2_tutorials_chinese

3、https://github.com/jinfagang/yolov3_tf2

总结

本期我们总结了TensorFlow2.0的变化及使用方法,而且还介绍了学习它的方法和一些比较好的Github。希望您尽快能掌握它!

春季划报名倒计时“7天”

640?wx_fmt=png

有三AI纪念版扑克牌发售中

640?wx_fmt=jpeg

今日直播

640?wx_fmt=png

今日知识汇总

640?wx_fmt=png

今日网络结构

640?wx_fmt=png

有三AI生态

640?wx_fmt=png

转载文章请后台联系

侵权必究

更多请关注知乎专栏《有三AI学院》

640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

往期精选

Tensorflow 2.0 教程-Windows10安装tensorflow2.0 Windows10安装tensorflow2.0(GPU、CPU) 完整tensorflow2.0教程代码请看github:中文教程tensorflow2_tutorials_chinese(欢迎star) 更多TensorFlow2.0 入门教程请持续关注本博客:https://blog.csdn.net/qq_31456593/article/details/88606284 1.安装anac... 阅读详情

相关推荐

tensorflow2.0教程—快速入门

文章目录模型的序列化API基本示例模型细节查看查看序列化模型中间层的输出序列化API型缺陷模型的函数式API基本步骤应用模型的训练和评估(1)加载数据集(2)模型的compile(3)模型的训练(4)模型的评估、预测多输入多输出模型模型的保存与读取 本文主要讲解tensorflow 2.0 搭建网络结构的技术细节。 在使用tensorflow 之前首先导入tensorflow import tensorflow as tf from tensorflow import keras from tensorfl

zhong_ddbb的博客 6307

TensorFlow官方文档学习(二)

一、Hello Tensorflow 打开anaconda prompt activate tensor flow python &amp;gt;&amp;gt;&amp;gt;import tensorflow as tf &amp;gt;&amp;gt;&amp;gt;hello=tf.constant('hello') &amp;gt;&amp;gt;&amp;gt;s=tf.Session() &amp;g

weixin_43226400的博客 414

Tensorflow 2.0 使用指南 (图文并茂,入门实战)

作者:禅与计算机程序设计艺术 1.简介 TensorFlow是一个开源的机器学习框架,它目前被广泛应用于各个领域,比如图像处理、自然语言处理、推荐系统等。近年来,TensorFlow的2.0版本在性能和可用性上都取得了显著的进步。本文将从一个TensorFlow新手的视角出发,带领大家熟悉TensorF

AI天才研究院 1342

TensorFlow基本使用方法

TensorFlow的基本使用教程,适合无基础入门新手。

Dear_Atri的博客 3151

tensorflow使用手册

tensorflow使用手册tensorflow使用手册tensorflow使用手册

tensorflow 操作手册 中文版

tensorflow, deep learning, python tensorflow 操作手册 中文版

入门TensorFlow 2.0必备,全中文教学,北大学霸出品

鱼羊 发自 凹非寺量子位 报道 | 公众号 QbitAITensorFlow 2.0已在十一发布,香不香?好用不好用?现在,这里有一份全中文教学的快速上手指南,基于Ker...

机器学习算法那些事 630

tensorflow 官方文档中文版

tensorflow官方文档的中文翻译版,适合作为初学tensorflow的指南

0 读取数据_【完结】TensorFlow2.0 快速上手手册

大家好,这是专栏《TensorFlow2.0》的第五篇文章,我们对专栏《TensorFlow2.0》进行一个总结。我们知道全新的TensorFlow2.0 Alpha已经于2019年3月被发布,新版本对TensorFLow的使用方式进行了重大改进,为了满足各位AI人对TensorFlow2.0的需求,我们推出了专栏《TensorFlow2.0》,前四篇文章带大家领略了全新的TensorFlow2....

weixin_32089639的博客 233

视频监控设备(NVR、IPC等)如何通过国标GB28181接入到视频监控平台,以及接入过程如何测试视频接入是否成功

GB/T28181标准广泛的应用,视频监控设备通过国标GB28181接入视频监控平台的过程变成程序化、标准化的互联过程,确保了视频监控设备能够在不同系统、不同网络环境下实现远程、跨区域、跨级别的访问和控制。版本有GB28181-2011、2016、2022几个常用版本,威迪斯特的视频监控平台完全支持GB28181的这几个版本,能够实现不同品牌视频监控设备的国标视频接入(国标视频监控接入),或者为国标28181视频接入(国标28181视频监控接入),也为国标281818接入(国标GB/T28181接入。

weixin_70208651的博客 1万+

用Python+OpenCV搞定线激光相机标定:从棋盘格到3D点云的保姆级实战

本文详细介绍了使用Python和OpenCV进行线激光相机标定的全流程实战,从硬件准备到3D点云重建。涵盖相机内参标定、激光平面方程拟合、三维重建等关键技术,提供完整的代码实现和工程优化建议,帮助开发者实现毫米级精度的工业检测和三维测量系统。

weixin_29227425的博客 287

internetreadfile读取数据长度为0_【完结】TensorFlow2.0 快速上手手册

大家好,这是专栏《TensorFlow2.0》的第五篇文章,我们对专栏《TensorFlow2.0》进行一个总结。我们知道全新的TensorFlow2.0 Alpha已经于2019年3月被发布,新版本对TensorFLow的使用方式进行了重大改进,为了满足各位AI人对TensorFlow2.0的需求,我们推出了专栏《TensorFlow2.0》,前四篇文章带大家领略了全新的TensorF...

weixin_39640646的博客 82

【rotors】多旋翼无人机仿真(五)——多无人机仿真

如何创建多个无人机仿真

caiqidong321的博客 2394

简单粗暴上手TensorFlow 2.0,北大学霸力作,必须人手一册!

(图片付费下载自视觉中国) 整理 | 夕颜 出品 | AI科技大本营(ID:rgznai100) 【导读】 TensorFlow 2.0 于近期正式发布后,立即受到学术界与科研界的广泛关注与好评。此前,AI 科技大本营曾特邀专家回顾了 TensorFlow 2.0 从初版到最新版本的发展史。今天,我们将介绍一本全面详解 TensorFlow 2.0 的手册。这本手册是 Go...

AI科技大本营 1万+

芯片散热技术突破:多尺度结构与VC集成方案解析

在半导体技术快速发展的背景下,芯片散热成为制约性能提升的关键瓶颈。传统散热技术如风冷和水冷已接近物理极限,而两相浸没式液冷技术凭借其超高传热系数成为新的解决方案。通过多尺度表面结构设计与真空腔均热板(Vapor Chamber)的集成创新,可以显著提升沸腾性能,降低沸腾起始温差(ONB)并突破临界热流密度(CHF)限制。这种技术在数据中心、高性能计算(HPC)和边缘计算等高热流密度场景中具有重要应用价值,能有效提升能效比(PUE)并降低能耗。

weixin_36288992的博客 156

微信小程序:errno: 600001, errMsg: “uploadFile:fail errcode:-101 cronet_error_code:-10001 error_msg:net::E

微信小程序报错uploadFile:fail errcode:-101 cronet_error_code:-10001 error_msg:net::ERR_CONNECTION_RESET, custum ip is invalid, didn't find user's ip,wx.uploadFile errno: 600001 errcode:-101 ?微信小程序wx.uploadFile错误,wx.uploadFile 在真机上报下面的错误,调试工具里没有问题,其它接口在真机/调试工具都正常,

✅ 精选推荐文章 4260

TensorFlow 2.0 教程

最全TensorFlow2.0教程-持续更新 Tensorflow 2.0 教程持续更新: TensorFlow 2.0 教程- Keras 快速入门 TensorFlow 2.0 教程-keras 函数api TensorFlow 2.0 教程-使用keras训练模型 TensorFlow 2.0 教程-用keras构建自己的网络层 TensorFlow 2.0 教程-keras模型保存和序列化...

知行_那片天 11万+

深度解析电力负荷预测:基于深度学习的完整实战指南

电力负荷预测是智能电网运行中的核心技术之一,准确的负荷预测对于电网的稳定运行、电力市场交易以及能源调度具有重要意义。本文将详细介绍电力负荷预测的完整解决方案,从数据预处理、特征工程到模型构建与评估,提供完整的可执行代码。我们将使用LSTM(长短期记忆网络)和Transformer两种主流深度学习模型进行实现,并通过实际数据集验证模型效果。电力负荷预测是指根据历史负荷数据、气象因素、时间特征等多维信息,预测未来某一时段的电力需求。超短期负荷预测:未来几分钟到几小时短期负荷预测:未来1天到1周中期负荷预测。

YOLO 111

TensorFlow2.0 教程-图像分类

TensorFlow 教程-图像分类 from __future__ import absolute_import, division, print_function import tensorflow as tf from tensorflow import keras from tensorflow.keras import layers import numpy as np import ...

知行_那片天 2万+

【BlueZ】编译产物详解:可执行文件/库文件/工具的生成路径与用途

BlueZ二次开发编译产物机制解析 摘要:在BlueZ蓝牙协议栈二次开发中,90%的报错源于对编译产物类型和路径的混淆。本文系统剖析BlueZ的三阶段编译机制:1)配置阶段生成Makefile;2)编译阶段在.libs目录下产生临时库和可执行文件(不可直接运行);3)安装阶段将产物部署到系统标准路径。重点解析守护进程、命令行工具、动态库的核心路径差异,并针对五大高频问题(如临时库运行崩溃、动态库不匹配、系统覆盖等)给出解决方案。

byte轻骑兵的技术小窝 1万+

Android NDK/JNI面试题大全及参考答案(3万字长文)

是一套工具集合,它允许开发者为Android平台编写原生应用程序或者应用程序的部分模块。NDK 主要用于开发那些需要高性能计算的应用程序,例如游戏引擎、图像处理软件或音频/视频编码解码器等。通过使用 C 或 C++ 编写代码,开发者可以利用硬件加速功能,提高应用性能。NDK 提供了一系列工具来帮助开发者完成从源代码到可执行文件的整个过程,包括编译、链接、调试等功能。

大模型大数据攻城狮的专栏 1260

简单粗暴上手TensorFlow 2.0,北大学霸力作,必须人手一册

【导读】 TensorFlow 2.0 于近期正式发布后,立即受到学术界与科研界的广泛关注与好评。此前,AI 科技大本营曾特邀专家回顾了 TensorFlow 2.0 从初版到最新版本的发展史。今天,我们将介绍一本全面详解 TensorFlow 2.0 的手册。这本手册是 Google Summer of Code 2019 项目之一,从基础安装与环境配置、部署,到大规模训练与加速、扩...

张伟的专栏 6193

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

TensorFlow 2.0 教程-安装TensorFlow 2.0

完整tensorflow2.0教程代码请看github:中文教程tensorflow2_tutorials_chinese(欢迎star) 更多TensorFlow2.0 入门教程请持续关注本博客:https://blog.csdn.net/qq_31456593/article/details/88606284 TensorFlow 2.0 教程-安装TensorFlow 2.0 Tensorf...

知行_那片天 1万+

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

tensorflow如何做幂律分布_如何简单粗暴地上手 TensorFlow 2.0?

整理 | 夕颜出品 | AI科技大本营(ID:rgznai100)【导读】 TensorFlow 2.0 于近期正式发布后,立即受到学术界与科研界的广泛关注与好评。此前,我们曾特邀专家回顾了 TensorFlow 2.0 从初版到最新版本的发展史。今天,我们将介绍一本全面详解 TensorFlow 2.0 的手册。这本手册是 Google Summer of Code 2019 项目之一...

weixin_39982537的博客 175
上一篇: 【Git项目】想成为大咖,先从八卦大咖开始,这个GitHub项目你值得拥有
下一篇: 再印!抽奖!有三AI学习扑克牌新一批货到
言有三
言有三 领域专家: 人工智能技术领域 领域专家: 人工智能技术领域
博客等级 码龄15年 3635粉丝 976原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

言有三

三人行必有AI

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值