TensorFlow 常用的4个模块

1、 tf.nn

神经网络的功能支持模块,这是最常用到的一个模块,用于构建经典的卷积网络,它下面还包含了 rnn_cell 的子模块,用于构建循环神经网络;

avg_pool(...): 平均池化

batch_normalization(...): 批标准化

bias_add(...): 添加偏置

conv2d(...): 2维卷积

dropout(...): 随机丢弃神经网络单元

relu(...): relu 激活层

sigmoid_cross_entropy_with_logits(...): sigmoid 激活后的交叉熵

softmax(...): softmax 激活层

2、 tf.contrib

所有的易于变动的,或者说实验性质的功能就放在这个模块里面;所以它下面是有着及其丰富的功能子模块的,从中也可一窥 TensorFlow 后续的发展,所以看看它下面包含的全部子模块:

3、 tf.train

这个模块主要是用来支持训练模型的,照样挑几个它下面包含的常用类和函数看看:

class AdadeltaOptimizer: Adadelta 优化器

class AdamOptimizer: Adam 优化器

class Coordinator: 线程管理器

class Example tfrecord 的生成模板

class ExponentialMovingAverage: 指数移动平均

class GradientDescentOptimizer: 梯度下降优化器

class MomentumOptimizer: 动量优化器

class NanTensorHook: loss 是否为 NaN 的捕获器

class QueueRunner: 入队队列启动

class RMSPropOptimizer: RMSProp 优化器

class Saver: 保存模型和变量类

NewCheckpointReader(...)checkpoint 文件读取

batch(...): 生成tensorsbatch

create_global_step(...): 创建 global step

get_checkpoint_state(...): "checkpoint" 文件返回模型状态

init_from_checkpoint(...): checkpoint 文件初始化变量

latest_checkpoint(...): 寻找最后一次的 checkpoint 文件

list_variables(...): 返回 checkpoint 文件变量为列表

load_variable(...): 返回 checkpoint 文件某个变量的值

match_filenames_once(...): 寻找符合规则的文件名称

shuffle_batch(...): 创建随机的 Tensor batch

start_queue_runners(...): 启动计算图中所有的队列

可以看到,主要包含了模型优化器、tfrecord 数据准备、模型保存、模型读取四个大类的功能。

4、 tf.summary

用来配合 tensorboard 展示模型的信息,几个常用类和函数如下:

class FileWriter: Summary文件生成类

class Summary Summary

get_summary_description(...): 获取计算节点信息

histogram(...): 展示变量分布信息

image(...): 展示图片信息

merge(...): 合并某个 Summary 信息

merge_all(...): 合并所有的各处分散的 Summary 信息到默认的计算图

scalar(...): 展示某个标量的值

text(...): 展示文本信息

5、 tensorflow还把一些经常使用的Tensor操作直接放到tf下面,包括了MathsArrayMatrix 相关的操作,也就是例如算术操作、张量(矩阵)操作、数据类型转换、矩阵的变形、切片、合并、规约、分割、序列比较与索引提取等常用功能。

你可能感兴趣的:(TensorFlow 常用的4个模块)