TensorFlow2.0快速入门:https://tf.wiki/zh/basic/tools.html

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

TensorFlow:官方文档

TensorFlow:项目地址

本篇列出文章对于全零新手不太合适,可以尝试TensorFlow入门系列博客,搭配其他资料进行学习。

Keras使用tf.Session训练方法教程

一、API介绍

基础操作列表

『TensorFlow』0.x_&_1.x版本框架改动汇总

『TensorFlow』函数查询列表_数值计算

『TensorFlow』函数查询列表_张量属性调整

『TensorFlow』简单的数学计算

『TensorFlow』变量初始化

常用基础操作

『TensorFlow』pad图片

『TensorFlow』滑动平均

『TensorFlow』one_hot化标签

『TensorFlow』张量尺寸获取

『TensorFlow』张量拼接_调整维度_切片

『TensorFlow』简单的数学计算

流程控制

『TensorFlow』流程控制

『TensorFlow』流程控制之tf.identity

『PyTorch』第六弹_最小二乘法对比PyTorch和TensorFlow   :参数更新机制分析,流程控制初探

神经网络构建

『TensorFlow』函数查询列表_神经网络相关

『TensorFlow』网络操作API_上   :卷积层,池化层,激活函数(含dropout和bias_add)

层/网络解析与实现

『TensorFlow』批处理类

『TensorFlow』layer封装合集

『TensotFlow』转置卷积

『TensotFlow』深层循环神经网络

『TensorFlow』卷积层池化层API对应数学过程

『教程』CapsNet 架构 & TensorFlow 实现

『TensorFlow』降噪自编码器设计

『TensorFlow』单&双隐藏层自编码器设计

『TensorFlow』读书笔记_SoftMax分类器

『TensorFlow』读书笔记_降噪自编码器

『TensorFlow』读书笔记_多层感知机

『TensorFlow』读书笔记_简单卷积神经网络

『TensorFlow』读书笔记_进阶卷积神经网络_上

『TensorFlow』读书笔记_进阶卷积神经网络_下

『TensorFlow』读书笔记_AlexNet

『TensorFlow』读书笔记_VGGNet

『TensorFlow』读书笔记_Inception_V3_上

『TensorFlow』读书笔记_Inception_V3_下

『TensorFlow』读书笔记_ResNet_V2

『TensorFlow』读书笔记_Word2Vec

『PyTorch × TensorFlow』第十七弹_ResNet快速实现

优化器&梯度操作

.minimize

  • compute_gradients
  • apply_gradients

『TensorFlow』网络操作API_下   :优化器相关接口

『TensorFlow』梯度优化相关   :梯度操作

集合操作与正则化实现

『TensorFlow』正则化添加方法整理

『TensorFlow』使用集合collection控制variables

#集合转换为字典,{节点名:输出张量值}
end_points = slim.utils.convert_collection_to_dict(end_points_collection) # 收集 & 获取 变量
tf.add_to_collection("loss",mse_loss)
tf.add_n(tf.get_collection("loss"))

损失函数

L2正则化损失

『TensorFlow』交叉熵API介绍

『TensorFlow』网络操作API_中   :损失函数以及分类器

模型载入

『TensorFlow』模型载入方法汇总

命令行解析

『Argparse』命令行解析

『TensorFlow』命令行参数解析

线程操作&数据读取

Dataset API读取数据

『TensorFlow』数据读取类_data.Dataset

传统数据读取方法

『TensorFlow』从磁盘读取数据

十图详解TensorFlow数据读取机制

『TensorFlow』读书笔记_TFRecord学习

『TensorFlow』TFR数据预处理探究以及框架搭建   :基于queue处理TFR数据

『TensorFlow』线程控制器类&变量作用域

线程控制器原理:

监视tensorflow所有后台线程,有异常出现(主要是越界,资源循环完了)时,其should_stop方法就会返回True,而它的request_stop方法则用于要求各个线程安全退出。需要使用local变量,初始化时注意。

常规图片数据读取方式:

img_bytes = tf.read_file(FLAGS.style_image)

image = tf.image.decode_png(img_bytes)

涉及队列操作时报错可能解决办法

OutOfRangeError (see above for traceback): FIFOQueue '_1_input_producer' is closed and has insufficient elements (requested 1, current size 0) [[Node: ReaderReadV2 = ReaderReadV2[_device="/job:localhost/replica:0/task:0/cpu:0"](WholeFileReaderV2, input_producer)]]

因为局部变量(local variables)没有初始化,将初始化变量语句改为

全局变量初始化:tf.global_variables_initializer().run()

局部变量初始化:tf.local_variables_initializer().run()

不再报错。局部变量很少,一般都是系统自己创建的变量,如记录训练进度的epoch。

可视化相关

『TensorFlow』第三弹_可视化框架介绍_悄悄问圣僧

『TensorFlow』第三弹_可视化程序实战_女儿美不美

ctrl + 鼠标滑轮 可以放大&缩小tensorboard中所有的页面

命名空间设置好:添加记录节点 -> 汇总记录节点 -> run汇总节点 -> [书写器生成]书写入文件 [-> 刷新缓冲区]

# 书写器生成,会自动记录指定图
tf.summary.FileWriter('./', sess.graph)
# 张量记录
tf.summary.histogram(layer_name+'/weights',Weights)
# 标量记录
tf.summary.scalar = ('loss',cross_entropy)
# 记录激活
merged = tf.summary.merge_all()
# 书写器生成
train_writer = tf.summary.FileWriter('logs/train',sess.graph)
# run记录
train_result = sess.run(merged, feed_dict={xs: X_train, ys: y_train, keep_prob:1})
# 书写记录
train_writer.add_summary(train_result,i)
# 刷新缓冲区,立即写入文件
train_writer.flush()

slim模块

slim源码

『TensorFlow』slim高级模块

二、TensorFlow的tips

节点和张量

节点张量铺设好了之后,只要不加sess.run(),可以运行脚本检查张量节点是否匹配,无需传入实际数据流。

'conv1'指节点,'conv1:0'指节点输出的第一个张量。

sess上下文环境中的函数调用即使不传入sess句柄,函数体内也存在于默认的sess环境中,可以直接sess.run()。

image_holder = tf.placeholder(tf.float32,[None, None, None, 3]),使用None回避指定大小。

sess实际运行单机模式时,会提取目标节点的所有前置依赖构建成子图,然后按照设备划分成多个局部图,局部图根据依赖先后关系对节点进行加载

设备指定使用tf.device('/cpu:0')上下文操作,且支持嵌套,逻辑于slim的scope一致

查看信息版本安装路径

import tensorflow as tf
tf.__version__ # 版本
tf.__path_ # 路径
# __看着是一个下划线,实际上是两个下划线

通常张量的Feed

『TensotFlow』基础RNN网络回归问题

TensorFlow中所有张量而不仅是占位符都是可以feed的,如果有feed,其优先级大于图中的计算流程。

『TensorFlow』专题汇总的更多相关文章

  1. 『MXNet』专题汇总

    MXNet文档 MXNet官方教程 持久化模型 框架介绍 『MXNet』第一弹_基础架构及API 『MXNet』第二弹_Gluon构建模型 『MXNet』第三弹_Gluon模型参数 『MXNet』第四 ...

  2. 『TensorFlow』模型保存和载入方法汇总

    『TensorFlow』第七弹_保存&载入会话_霸王回马 一.TensorFlow常规模型加载方法 保存模型 tf.train.Saver()类,.save(sess, ckpt文件目录)方法 ...

  3. 『TensorFlow』滑动平均

    滑动平均会为目标变量维护一个影子变量,影子变量不影响原变量的更新维护,但是在测试或者实际预测过程中(非训练时),使用影子变量代替原变量. 1.滑动平均求解对象初始化 ema = tf.train.Ex ...

  4. 『TensorFlow』流程控制

    『PyTorch』第六弹_最小二乘法对比PyTorch和TensorFlow TensorFlow 控制流程操作 TensorFlow 提供了几个操作和类,您可以使用它们来控制操作的执行并向图中添加条 ...

  5. 『TensorFlow』读书笔记_降噪自编码器

    『TensorFlow』降噪自编码器设计  之前学习过的代码,又敲了一遍,新的收获也还是有的,因为这次注释写的比较详尽,所以再次记录一下,具体的相关知识查阅之前写的文章即可(见上面链接). # Aut ...

  6. 『TensorFlow』梯度优化相关

    tf.trainable_variables可以得到整个模型中所有trainable=True的Variable,也是自由处理梯度的基础 基础梯度操作方法: tf.gradients 用来计算导数.该 ...

  7. 『TensorFlow』命令行参数解析

    argparse很强大,但是我们未必需要使用这么繁杂的东西,TensorFlow自己封装了一个简化版本的解析方式,实际上是对argparse的封装 脚本化调用tensorflow的标准范式: impo ...

  8. 『TensorFlow』TFR数据预处理探究以及框架搭建

    一.TFRecord文件书写效率对比(单线程和多线程对比) 1.准备工作 # Author : Hellcat # Time : 18-1-15 ''' import os os.environ[&q ...

  9. 『TensorFlow』第七弹_保存&载入会话_霸王回马

    首更: 由于TensorFlow的奇怪形式,所以载入保存的是sess,把会话中当前激活的变量保存下来,所以必须保证(其他网络也要求这个)保存网络和载入网络的结构一致,且变量名称必须一致,这是caffe ...

随机推荐

  1. C# 读取xml——XmlReader和XElement

    1.有些xml文件头部有DTD,程序解析的时候会报错 如:其他信息: 打开外部 DTD“file:///E:/PM数据/MeContext=CDF2775/MeasDataCollection.dtd ...

  2. java23种设计模式之: 策略模式,观察者模式

    策略模式  --老司机开车,但是他今天想到路虎,明天想开奔驰...针对他不同的需求,来产生不同的应对策略    策略类是一个接口,定义了一个大概的方法,而实现具体的策略则是由实现类完成的,这样的目的是 ...

  3. VS2015右键集成TortoiseGit

    先上效果 再说步骤 1.安装VS TortoiseGit等~~ 2.以外部工具方式调用TortoiseGit 3.在VS中设置右键菜单 在菜单栏下方右键,选择自定义 在弹出窗口中选择,命令->上 ...

  4. Typora/VSCode/Sublime 更改Markdown默认宽度样式等

    Typora 所见即所得Markdown编辑器更改 最大宽度 C:\Users\Desk\AppData\Roaming\Typora\themes\github.css CSS第46行改为 max- ...

  5. IP通信第四周作业

    一.选择交换机的主要技能指标是什么? a.背板带宽.二/三层交换吞吐率. b.VLAN类型和数量. c.交换机端口数量及类型. d.支持网络管理的协议和方法.需要交换机提供更加方便和集中式的管理. e ...

  6. 使用特性将数据库返回的datatable转换成对象列表

    public class ColumnMapAttribute : Attribute { private readonly string _name; public ColumnMapAttribu ...

  7. Git随笔 -- 初始化远程仓库

    1. 新建文件夹(作为本地仓库与之远程仓库关联),进入文件夹空白处右键选择Git Bash(安装程序下载).[或者在开始菜单里找到Git Bash并打开,使用命令进入文件夹:cd 文件夹名称.] 2. ...

  8. JavaScript数组对象常用方法

    JavaScript数组对象常用方法 方法 形式 返回值 是否改变原数组 描述 concat -items: ConcatArray[] 追加之后的数组 否 连接两个或更多的数组,并返回结果.注意 c ...

  9. .NET平台常用的开发组件(csdn)

    .NET平台常用的开发组件 原创 2017年02月24日 09:20:04 工欲善其事,必先利其器.学习.NET也10年有余,其优雅的编程风格,高效率的开发速度,极度简单的可扩展性,足够强大开发类库, ...

  10. 【模板】快速幂&取余运算

    输入\(b\),\(p\),\(k\)的值,求\(b^p mod k\)的值.其中\(b\),\(p\),\(k^2\)为长整型数. 1.普通做法 \(print\) \(pow(b,p)\)\(mo ...