TF学习笔记1

一、关于TensorFlow的基本概念

TensorFlow的计算模型、数据模型、运行模型,主要是一些理论概念的整理。

1、TensorFlow的计算模型——计算图

Tensor—张量,即可简单理解为多维数组,表明其数据结构。

Flow—流,直观的表达了张量之间通过计算相互转化的过程,体现其计算模型。

TensorFlow—一个通过计算图的形式来表述计算的编程系统,TensorFlow中的每一个计算都会被转化为计算图上的一个节点,而节点之间的边表述了计算之间的依赖关系。

2、TensorFlow的数据模型——张量

即TensorFlow管理数据的形式。

在TensorFlow程序中,所有的数据都通过张量的形式来表示,可简单理解为多维数组。但张量在TF中的实现并不是直接采用数组的形式,它只是对TF中运算结果的引用。在张量中并没有真正保存数字,它保存的是如何得到这些数字的计算过程。

张量的使用有以下两类:

1)对中间计算结果的引用,主要是提高可阅读性,同时方便获取中间结果。比如在CNN中,卷积层或者池化层有可能改变张量的维度,通过result.get_shape函数来获取结果张量的维度信息可以免去人工计算的麻烦。

2)获得计算结果,即得到真实的数字。张量本身并没有存储具体的数字,但通过会话session就可以得到这些具体的数字。

3、TensorFlow的运行模型——会话

使用会话来执行定义好的运算。会话拥有并管理TF程序运行时的所有资源。

TF使用会话一般有两种模式:

1)明确调用会话生成函数和关闭会话函数

sess=tf.Session()//创建一个会话

sess.run()//使用会话得到运算结果

sess.close()//关闭会话,释放资源

由于该情况可能会出现异常退出导致无法执行关闭会话的函数,从而使资源泄露的问题。

解决方法:TF通过Python的上下文管理器来使用会话。

with tf.Session() as sess:

    sess.run(...)

2)通过设定默认会话计算张量的取值

sess=tf.Session()

with sess.as_default():

       print(result.eval())

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值