今天老师带领我们入门TensorFlow2.0。至于tensorflow2.0是啥嘛,详细的可以度娘一下。我简述一下,就是一个end-to-end machine-Learning open source plantform(端对端的开源机器学习的平台)。学习tensorflow需要引入tensor这个概念,tensor的汉语意思就是张量。张量是数学和力学的概念,是矢量的延伸,矢量是一阶张量,至于张量具体是什么大家感兴趣就度娘吧,我也不是专业的数学研究人员不很懂。tensorflow1.0引入了deferred execution(延迟执行)机制,在构建阶段是不执行计算操作的,因此称为静态图,要想执行计算操作,需要创建Session()对象才可以执行计算操作。而在tensorflow2.0里引入了默认执行eager execution机制,无需首先创建静态图,可以立刻执行计算操作,并返回结果,不像1.0那样需要创建Session对象。但是动态图执行效率不高,不利于后期调试。但是可以在程序调试阶段使用动态图,快速建立模型、调试程序;在部署阶段,采用静态图机制,从而提高模型的性能和部署能力。tensorflow2.0清理和整合API,将tf.keras作为构建和训练模型的标准API。

机器学习

安装tensorflow这个老生常谈了。

pip install tensorflow -i https://pypi.tuna.tsinghua.edu.cn/simple

我们来简单入门讲讲tensorflow。它可以运行在GPU、CPU、嵌入式等等平台。你可以理解为是对numpy的二次封装,对numpy进行加速运算。numpy只能在CPU里计算,而tensorFlow可以在CPU、GPU、TPU里计算。当tensorflow与numpy一起在CPU里计算时,它们共享同一段内存。

它的基本运算是张量,张量是由Tensor实现,每个张量都是一个Tensor对象。可以使用tf.constant() 函数来创建张量。代码如下:

import tensorflow as tfa = tf.constant([[1,2],[3,4]])print(a)
  1. value:可以是数字或python列表或numpy数组
  2. shpae:张量的形状
  3. dtype:元素数据类型

dtype:全称是digital type汉语意思就是数字类型。这就创建了一个二维张量。

运行结果就是:

tf.Tensor([[1 2] [3 4]], shape=(2, 2), dtype=int32)

张量还可以使用Numpy方法,代码如下:

a = tf.constant([[1,2],[3,4]])print(a.numpy)print(type(a))

那么运行结果就是:

>

使用numpy方式生成张量时需要注意以下几点:numpy方法创建张量 使用np创建浮点数组时默认64位,而tensorflow默认时float32,但是tensorflow接受时自动转为64位浮点。一般建议使用np创建数组时建议为float32位足以使用。但是不建议低精度兼容高精度,因为会溢出。比如int32去兼容int64可能会存在溢出。

Python

它的内置API非常多:

  1. cast()改变张量的数据类型,tensor支持转变的数据类型有:string int float bool。
  2. tf.convert_to_tensor()函数其他数据类型转换成tensor类型
  3. tf.fill()在tensor张量里自动填充某个元素,第一个参数是shape,第二个是value,根据传入的value自动判断数据类型
  4. tf.constant()也可以实现fill一样的功能,只不过它的填充数字在前面,shape参数位于后面。
  5. tf.random.normal(形状,均值,标准差,数据类型=tf.float32)这个是正态分布函数。均值即为:mean。标准差是:stddev。当mean=0,stddev=1为标准正态分布
  6. tf.random.truncated_normal()创建随机数张量。截断正态分布,基本参数一致。截断的依据是正态分布的2倍标准差。
  7. tf.random.set_seed()函数。设置随机数种子
  8. tf.random.uniform(shape,minval,maxval,dtype)函数。功能是均匀分布张量,它是一个左闭右开的区间。tf.random.uniform(shape,minval,maxval,dtype='int32')
  9. tf.random.shuffle()函数。功能是随机打乱序列。
  10. tf.range()创建整数序列,是左闭右开区间。

还可以使用字典式访问tensor对象属性,依次取出ndim、shape、dtype属性,代码如下:

atfc = tf.constant([[3,5],[7,0]])print('ndim:',atfc.ndim)print('shape:',atfc.shape)print('dtype:',atfc.dtype)

总结一下:tensorflow所有的运算都是在张量之间运行的。而numpy只是作为input和output使用的。我只是列举了常用的API,大家有兴趣的可以尝试尝试。

我始终保持开放的态度学习python,大佬可以批评指正。python之路漫漫,吾将上下而求索。

diskgeniusv4.4.0_入门TensorFlow2.0相关推荐

  1. 深度学习loss值变为0_利用TensorFlow2.0为胆固醇、血脂、血压数据构建时序深度学习模型(python源代码)...

    背景数据描述 胆固醇.高血脂.高血压是压在广大中年男性头上的三座大山,如何有效的监控他们,做到早发现.早预防.早治疗尤为关键,趁着这个假期我就利用TF2.0构建了一套时序预测模型,一来是可以帮我预发疾 ...

  2. diskgeniusv4.4.0_一文上手最新Tensorflow2.0系列|TensorFlow2.0安装

    本文中我们将会详细讲解TensorFlow2.0安装.Tensorflow兼容性最好的是Unix内核的系统,如Linux,MacOS等.另外TensorFlow的GPU版本仅支持Linux环境,不支持 ...

  3. mybatis-plus对datetime返回去掉.0_华为AI认证-TensorFlow2.0编程基础

    参考<HCIA-AI2.0培训教材><HCIA-AI2.0实验手册> 认证要求: 了解TensorFlow2.0是什么以及其特点 掌握TensorFlow2.0基础和高阶操作方 ...

  4. 【NLP】NLP实战篇之tensorflow2.0快速入门

    修改上版代码格式问题.Tensorflow2.0跟Keras紧密结合,相比于1.0版本,2.0可以更快上手,并且能更方便找到需要的api.本文中以IMDB文本分类为例,简单介绍了从数据下载.预处理.建 ...

  5. pip更新失败_最全Tensorflow2.0 入门教程持续更新

    最全Tensorflow 2.0 入门教程持续更新: Doit:最全Tensorflow 2.0 入门教程持续更新​zhuanlan.zhihu.com 完整tensorflow2.0教程代码请看ht ...

  6. TensorFlow2.0实战: 入门到进阶深度学习

    TensorFlow2.0 入门到进阶 课程以Tensorflow2.0框架为主体,以图像分类.房价预测.文本分类等项目为依托,讲解Tensorflow框架的使用方法,同时学习到相关的深度学习/机器学 ...

  7. Tensorflow2.0深度学习入门与实战(日月光华)(学习总结1)

    Tensorflow2.0深度学习入门与实战(学习总结1) 我是刚学的,网易云课堂跟着日月光华老师,现在对每节课的学习课程做一下记录,总结,仅仅作为总结. 1.使用快捷键 shift+enter执行代 ...

  8. tensorflow2.0教程- Keras 快速入门

    tensorflow2.0教程-tensorflow.keras 快速入门 Tensorflow 2.0 教程持续更新: https://blog.csdn.net/qq_31456593/artic ...

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

    大家好,这是专栏<TensorFlow2.0>的第五篇文章,我们对专栏<TensorFlow2.0>进行一个总结. 我们知道全新的TensorFlow2.0 Alpha已经于2 ...

最新文章

  1. 1.2 离散时间信号-采样
  2. python判断txt文件是否为空_Python中的空值怎么判断
  3. CentOS7安装xfce桌面环境
  4. CentOS 下 yum(基于rpm的包管理工具) 命令详解
  5. php语句结束标记,PHP结束标记“?”
  6. Java BigDecimal valueOf()方法与示例
  7. mysql sphfiks_使用sphinx索引mysql数据
  8. (43) 讨论和通知
  9. 一位程序员的爱情故事
  10. 如使用JDBC连接Mysql数据库
  11. 项目管理学习 总结(一)
  12. linux下安装Telnet服务器
  13. Google深度学习TensorFlow最好的入门文章!
  14. 什么是URL Rewrite?URL Rewrite有什么用?
  15. 对CMSIS的学习(第1-3部分)
  16. steam无法连接至计算机,详解无法连接至steam网络怎么办
  17. 车牌识别系统原理及代码【YOLO+MLP】
  18. WinXP如何自动清理Temp文件夹
  19. 【素描黑白】精致的IU手绘素描源码文件一键领取哦~
  20. 湖北省促进服务业领域困难行业恢复发展若干措施申报奖补指南

热门文章

  1. 云计算与星辰大海的结合——不要回答,来自百亿光年外的未知信号
  2. BZip2Codec压缩、Map端压缩控制、Reduce端压缩控制……都在这份Hadoop整合压缩知识点里了!...
  3. 备战双 11!蚂蚁金服万级规模 K8s 集群管理系统如何设计?
  4. 混合云异军突起 英特尔的全“芯”体验为企业保驾护航
  5. video怎么重新加载 vue_vue 事件中更改video的src成功,视频不加载
  6. Oracle run leve,UNIX自动启动oracle
  7. java 租车管理系统_jsp+servlet+jdbc实现的java web共享租车信息管理系统,包括登陆注册,页面框架Easy UI...
  8. oracle默认导出路径linux,传统路径导出 VS 直接路径导出(oracle exp direct=y)
  9. android studio证件照代码,Android 修图(换证件照背景,污点修复)
  10. springboot3.x 集成持久层框架