Tensorflow一些常用基本概念与函数(3)

Tensorflow常用函数汇总_tensorflow函数 操作描述返回一个用于寄存op类型的梯度函数的装饰器设置操作节点类型op_type的节点没有指定的梯度返回一个用于寄存op类型的shape函数的装饰器表示tensor的shape与other合并shape信息,返回一个TensorShape类与other的维度相连结返回tensor的rank返回tensor的维度以list的形式返回tensor的shape判断shape是否为兼容TensorShape(None)与其他任何shape值兼容判断dims是否为兼容。 阅读详情

摘要:本系列主要对tf的一些常用概念与方法进行描述。本文主要针对tensorflow的数据IO、图的运行等相关函数进行讲解。为‘Tensorflow一些常用基本概念与函数’系列之三。

1、序言

本文所讲的内容主要为以下相关函数:

操作组操作
Data IO (Python functions)TFRecordWrite,rtf_record_iterator
Running GraphsSession management,Error classes

2、tf函数

2.1 数据IO {Data IO (Python functions)}

一个TFRecords 文件为一个字符串序列。这种格式并非随机获取,它比较适合大规模的数据流,而不太适合需要快速分区或其他非序列获取方式。

数据IO {Data IO (Python functions)}
操作描述
class tf.python_io.TFRecordWriter一个用于将记录(records)写入TFRecords文件的类
tf.python_io.TFRecordWriter.__init__(path, options=None)打开文件路径,并创建一个TFRecordWriter以供写入
tf.python_io.TFRecordWriter.write(record)将一个字符串records写入文件中
tf.python_io.TFRecordWriter.close()关闭文件
tf.python_io.tf_record_iterator(path, options=None)从TFRecords文件中读取记录的迭代器

2.2 运行图(Running Graphs)

会话管理 (Session management)
操作描述
class tf.Session运行TF操作的类,
一个Session对象将操作节点op封装在一定的环境内运行,
同时tensor对象将被计算求值
tf.Session.__init__(target=”, graph=None, config=None)创建一个新的会话
tf.Session.run(fetches, feed_dict=None,
options=None, run_metadata=None)
运行fetches中的操作节点并求其值
tf.Session.close()关闭会话
tf.Session.graph返回加载值该会话的图(graph)
tf.Session.as_default()设置该对象为默认会话,并返回一个上下文管理器
tf.Session.reset(target, containers=None, config=None)重设target的资源容器,并关闭所有连接的会话
在0.10版本该功能仅应用在分布会话中
target:为执行引擎所连接的目标,其包含有资源容器,
该资源容器分布在同一个集群的所有works上
class tf.InteractiveSession使用在交互式上下文环境的tf会话,比如shell,ipython
tf.InteractiveSession.close()关闭一个InteractiveSession
tf.get_default_session()返回当前线程的默认会话

tf.Session

#一个简单的tf.Session例子
# 建立一个graph.
a = tf.constant(5.0)
b = tf.constant(6.0)
c = a * b

# 将graph载入到一个会话session中
sess = tf.Session()

# 计算tensor `c`.
print(sess.run(c))
#一个会话可能会占用一些资源,比如变量、队列和读取器(reader)。释放这些不再使用的资源非常重要。
#使用close()方法关闭会话,或者使用上下文管理器,释放资源。
# 使用`close()`方法.
sess = tf.Session()
sess.run(...)
sess.close()

# 使用上下文管理器
with tf.Session() as sess:
  sess.run(...)

tf.Session()的变量设置, ConfigProto protocol buffer为会话提供了不同的配置选项。比如,创建一个会话,对设备布局使用软约束条件,以及对分布

# Launch the graph in a session that allows soft device placement and
# logs the placement decisions.
sess = tf.Session(config=tf.ConfigProto(allow_soft_placement=True,
                                        log_device_placement=True))

tf.Session.run


 a = tf.constant([10, 20])
   b = tf.constant([1.0, 2.0])
   # 'fetches' 可以为单个数
   v = session.run(a)
   # v is the numpy array [10, 20]
   # 'fetches' 可以为一个list.
   v = session.run([a, b])
   # v a Python list with 2 numpy arrays: the numpy array [10, 20] and the
   # 1-D array [1.0, 2.0]
   # 'fetches' 可以是 lists, tuples, namedtuple, dicts中的任意:
   MyData = collections.namedtuple('MyData', ['a', 'b'])
   v = session.run({'k1': MyData(a, b), 'k2': [b, a]})
   # v 为一个dict,并有
   # v['k1'] is a MyData namedtuple with 'a' the numpy array [10, 20] and
   # 'b' the numpy array [1.0, 2.0]
   # v['k2'] is a list with the numpy array [1.0, 2.0] and the numpy array
   # [10, 20].

tf.Session.as_default()
使用关键字with指定会话, 可以在会话中执行Operation.run()或Tensor.eval(),以得到运行的tensor结果

c = tf.constant(..)
sess = tf.Session()

with sess.as_default():
  assert tf.get_default_session() is sess
  print(c.eval())

使用函数tf.get_default_session()来得到当前默认的会话
需要注意的是,退出该as_default上下文管理器时,并没有关闭该会话(session ),必须明确的关闭会话

c = tf.constant(...)
sess = tf.Session()
with sess.as_default():
  print(c.eval())
# ...
with sess.as_default():
  print(c.eval())
#关闭会话
sess.close()
#使用 with tf.Session()方式可以创建并自动关闭会话

tf.InteractiveSession

sess = tf.InteractiveSession()
a = tf.constant(5.0)
b = tf.constant(6.0)
c = a * b
# 我们直接使用'c.eval()' 而没有通过'sess'
print(c.eval())
sess.close()

以上的例子,在非交互会话的版本中为,

a = tf.constant(5.0)
b = tf.constant(6.0)
c = a * b
with tf.Session():
  # We can also use 'c.eval()' here.
  print(c.eval())

ABC

错误类 (Error classes)
操作描述
class tf.OpError一个基本的错误类型,在当TF执行失败时候报错
tf.OpError.op返回执行失败的操作节点,
有的操作如Send或Recv可能不会返回,那就要用用到node_def方法
tf.OpError.node_def以NodeDef proto形式表示失败的op
tf.OpError.error_code描述该错误的整数错误代码
tf.OpError.message返回错误信息
class tf.errors.CancelledError当操作或者阶段呗取消时候报错
class tf.errors.UnknownError未知错误类型
class tf.errors.InvalidArgumentError在接收到非法参数时候报错
class tf.errors.NotFoundError当发现不存在所请求的一个实体时候,比如文件或目录
class tf.errors.AlreadyExistsError当创建的实体已经存在的时候报错
class tf.errors.PermissionDeniedError没有执行权限做某操作的时候报错
class tf.errors.ResourceExhaustedError资源耗尽时报错
class tf.errors.FailedPreconditionError系统没有条件执行某个行为时候报错
class tf.errors.AbortedError操作中止时报错,常常发生在并发情形
class tf.errors.OutOfRangeError超出范围报错
class tf.errors.UnimplementedError某个操作没有执行时报错
class tf.errors.InternalError当系统经历了一个内部错误时报出
class tf.errors.DataLossError当出现不可恢复的错误
例如在运行 tf.WholeFileReader.read()读取整个文件的同时文件被删减
tf.errors.XXXXX.__init__(node_def, op, message)使用该形式方法创建以上各种错误类


相关链接:

[1] 安装Tensorflow(Linux ubuntu) http://blog.youkuaiyun.com/lenbow/article/details/51203526
[2] ubuntu下CUDA编译的GCC降级安装 http://blog.youkuaiyun.com/lenbow/article/details/51596706
[3] ubuntu手动安装最新Nvidia显卡驱动 http://blog.youkuaiyun.com/lenbow/article/details/51683783
[4] Tensorflow的CUDA升级,以及相关配置 http://blog.youkuaiyun.com/lenbow/article/details/52118116
[5] 基于gensim的Doc2Vec简析 http://blog.youkuaiyun.com/lenbow/article/details/52120230
[6] TensorFlow的分布式学习框架简介 http://blog.youkuaiyun.com/lenbow/article/details/52130565
[7] Tensorflow一些常用基本概念与函数(1) http://blog.youkuaiyun.com/lenbow/article/details/52152766
[8] Tensorflow一些常用基本概念与函数(2) http://blog.youkuaiyun.com/lenbow/article/details/52181159

【问题记录】RuntimeError: `loss` passed to Optimizer.compute_gradients should be a function when eager exe 一次问题记录与解决。【问题记录】RuntimeError: `loss` passed to Optimizer.compute_gradients should be a function when eager exe。人工智能 面试题:什么是序列到序列(Sequence-to-Sequence)模型?它在自然语言处理中的应用有哪些? 阅读详情

相关推荐

logBak lib/jar

logBak lib/jar 下载。可以在项目中运用这个log框架--调试bug,记入跟踪日志.具体例子网上很多,这里只提供必要的类库。

`loss` passed to Optimizer.compute_gradients should be a function when eager execution is enabl

loss passed to Optimizer.compute_gradients should be a function when eager execution is enabl 1、错误原因: 这是因为tensorflow版本的问题,tensorflow1和tensorflow2中的代码略有不同,更换部分代码即可 2、tensorflow1出错的代码 loss = tf.reduce_mean(tf.square(y-y_data)) optimizer = tf.compat.v1.train.

weixin_42962565的博客 3526

Tensorflow 2.1 报错整合

文章目录Tensorflow 2.1 报错整合RuntimeError: `loss` passed to Optimizer.compute_gradients should be a function when eager execution is enabled.RuntimeError: Attempting to capture an EagerTensor without building a function.RuntimeError: When eager execution is enabled, `var_list` must specify a list or dict

`loss` passed to Optimizer.compute_gradients should be a function when eager execution is enabled.

loss = tf.reduce_mean(tf.square(y - y_data)) 出错: `loss` passed to Optimizer.compute_gradients should be a function when eager execution is enabled. 错误原因:Tensorflow 版本问题 在Tensorflow 2.0 中,eager execution 是默认开启的。 需要先关闭eager execution,在代码前加入 tf.disa..

weixin_38594096的博客 2060

GD32F303调试小记(一)之USART(接收中断、接收空闲中断+DMA、发送DMA)

前言 之前写了GD32F103调试小记(二)之USART(接收中断、接收空闲中断+DMA、发送DMA)一文。这次我们来看看GD32F303的USART是如何配置的,结合这两篇文章,相信大家GD32的USART配置流程会十分熟悉。 DMA 能大大减轻CPU负荷的东西,建议场景合适的情况下,都去用DMA功能。 USART 一种串行通信协议, ...

欢喜6666的博客 3万+

IPD(集成产品开发)管理之道

IPD,是集成产品开发(Integrated Product Development)的缩写,它是集成了众多管理模型和理论、众多企业最佳管理实践的一整套体系,可以帮助企业快速响应市场变化、缩短产品上市时间、减少资源浪费、提高生产力,最终取得商业成功。IPD的思想最早来源于美国PRTM公司出版的《产品及生命周期优化法》一书中,该书详细描述了IPD模式所包含的各个方面。但IPD在中国的普及,源于IBM和华为的推行使用。IPD作为一套先进的产品研发管理模式,其成功的基础是功能部门和各团队之间的密切配合。

钢镚·真的博客 2709

错误处理-`loss` passed to Optimizer.compute_gradients should be a function when eager execution is enabl

错误解释:`loss '传递给Optimizer.compute_gradients应该是一个启用了立即执行的函数。 错误解决: In Tensorflow 2.0, eager execution is enabled by default. 在Tensorflow 2.0 中,eager execution 是默认开启的。 所以,需要先关闭eager execution tf.compat.v...

monissa.J的学习博客 1万+

PayPal支付集成完全指南:开源库实践

本文介绍了如何从零开始集成PayPal支付功能。首先概述了PayPal提供的多语言SDK和开源库,包括PHP、Python、Node.js等版本。然后详细说明了准备工作,包括注册开发者账号、获取API凭证和使用沙盒环境测试。文章以Node.js为例,演示了安装SDK、基础配置和实现支付流程的完整代码,包括创建订单和捕获支付两个核心功能。最后提及了订阅支付等高级功能,为开发者提供了完整的支付集成方案。通过清晰的代码示例和步骤说明,帮助开发者快速实现PayPal支付功能集成。

2501_93501927的博客 1257

tf.InteractiveSession()与tf.Session()

tf.InteractiveSession() tf.InteractiveSession():它能让你在运行图的时候,插入一些计算图,这些计算图是由某些操作(operations)构成的。这对于工作在交互式环境中的人们来说非常便利,比如使用IPython。 tf.InteractiveSession()是一种交互式的session方式,它让自己成为了默认的session,也就是说用户在不需要指明用哪个session运行的情况下,就可以运行起来,这就是默认的好处。这样的话就是run()和eval()函数可以

Jq的博客 1697

eMMC数据擦除的方式

接下来主要是讲解erase、trim、discard的差异,涉及的command有CMD35、CMD36、CMD38。一般用来擦除整卡或者某些分区,如果只想擦除一个。以下是device status的部分解释。eMMC的数据擦除方式有6种,分别是。将会跳过写保护,只执行其他的范围。Discard的命令序列是。Erase的命令序列是。的范围有包含写保护,Trim的命令序列是。

DPJimmy的博客 1763

Windows下用Anaconda安装d2l库避坑指南(附PermissionError解决方案)

本文详细介绍了在Windows系统下使用Anaconda安装d2l库的完整指南,特别针对常见的PermissionError问题提供了多种解决方案。从环境准备到库安装,再到VSCode配置和数据路径处理,帮助读者顺利搭建深度学习环境并运行《动手学深度学习》的代码示例。

3a9bq4r8t2y的博客 224

Tensorflow一些常用基本概念与函数3

摘要:本系列主要对tf的一些常用概念与方法进行描述。本文主要针对tensorflow的数据IO、图的运行等相关函数进行讲解。为‘Tensorflow一些常用基本概念与函数’系列之三。 1、序言 本文所讲的内容主要为以下相关函数: 操作组 操作 Data IO (Python functions) TFRecordWrite,rtf_r

YiLiang 643

如何评估一颗 AI 芯片的真实性能?TOPS、FPS 与 Token/sec 全解析

AI 芯片在实际部署中,其理论峰值性能往往无法反映真实执行效率。如何科学评估一颗 AI 芯片的“真实性能”,已成为芯片选型与系统集成环节中的关键技术问题。本文从工程实战角度出发,深入拆解当前常用性能评估指标(TOPS、FPS、Token/sec)背后的定义逻辑与使用陷阱,并结合推理模型部署与执行路径,系统讲解 AI 芯片在不同场景下的性能验证方法。通过对芯片算力-功耗-调度三维关系的分析,读者将掌握评估一颗 AI 芯片是否“跑得动业务”的核心判断能力。

努力分享一些人工智能、计算机视觉、影像等相关的知识干货! 3383

Tensorflow一些常用基本概念与函数(4-3)

摘要:本系列主要对tf的一些常用概念与方法进行描述。本文主要针对tensorflow的数据IO、图的运行等相关函数进行讲解。为‘Tensorflow一些常用基本概念与函数’系列之三。 1、序言 本文所讲的内容主要为以下相关函数: 操作组 操作 Data IO (Python functions) TFRecordWrite,rtf_record_iterator Running Graphs Session management,Error classes 2、tf函数

Thomas会写字 216

Google Earth Engine(GEE)——将sentinel - 2影像所有波段重采样到10m分辨率 (resample 和 projection的使用)

影像重投影是将一个影像从一个坐标系投影到另一个坐标系的过程。这通常涉及到将像素从一个平面坐标系变换到另一个平面坐标系。这可以用于许多应用中,例如建立数字高程模型(DEM)和地图制图。影像重投影通常需要进行数学计算,包括转换矩阵和插值算法,以确保像素值的准确性和精度。这次我们将对哨兵2好数据中20m分辨率的波段,重采样到10m分辨率中,然后同一参与计算。

此星光明博客 3106

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

python3__深度学习:TensorFlow__常用基本概念和函数

1.转载博客 https://blog.youkuaiyun.com/lenbow/article/details/52152766 该博客内容相对来说十分的全面,但随着TensorFlow版本的提高,有的函数发生了修改,或者添加了一些函数,特在下边进行说明。 2.补充函数 tensorflow.stack(values, axis=0, name="stack") 沿某个轴,将rank-R的...

也许有一天我们再相逢 睁开眼睛看清楚 我才是英雄! 500

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

TensorFlow基本概念与常用函数

本人人工智能入门小白一枚,在网上学习人工智能实践-TensorFlow2.0(北大公开课)课程,将自己学习到的东西进行整理,为方便后面复习,如有错误,烦请指出!多谢!!

Juwenile的博客 1799

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

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

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

TensorFlow基本概念与常用函数,my write

本人人工智能入门小白一枚,在网上学习人工智能实践-TensorFlow2.0(北大公开课)课程,将自己学习到的东西进行整理,为方便后面复习,如有错误,烦请指出!多谢!!

小硕算法工程师 1289

Tensorflow一些常用基本概念与函数(1)

摘要:本文主要对tf的一些常用概念与方法进行描述。

lenbow的博客 15万+

Tensorflow一些常用基本概念与函数

参考文献 Tensorflow一些常用基本概念与函数 http://www.cnblogs.com/wuzhitj/archive/2017/03.html Tensorflow笔记:常用函数说明: http://blog.youkuaiyun.com/u014595019/article/details/52805444 Tensorflow一些常用基本概念与函数(1) http://

jiandanjinxin的专栏 6819

Tensorflow一些常用基本概念与函数(2)

摘要:本文主要对tf的一些常用概念与方法进行描述。为‘Tensorflow一些常用基本概念与函数’系列之二。

lenbow的博客 8万+
上一篇: Tensorflow一些常用基本概念与函数(2)
下一篇: Tensorflow一些常用基本概念与函数(4)
林海山波
博客等级 码龄16年 496粉丝 9原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值