python库--tensorflow
方法 | 返回值类型 | 参数 | 说明 |
张量 | |||
.constant() |
Tensort 张量 实例t |
value | 创建一个常量tensor |
dtype=None | 输出类型 | ||
shape=None | 返回tensor的形状 | ||
name='Const' | 张量名 | ||
verify_shape=False | 是否保留输入数据的形状且不能被更改. True若shape与输入形状不一致则报错 | ||
t.device | str | 表示tensor将被产生的设备名称 | |
t.dtype | 元素类型 | ||
t.graph | 此tensor被哪个图所有 | ||
t.name | 张量名 | ||
t.op | 产生这个tensor作为输出的操作 | ||
t.shape | TensorShape | tensor的形状 | |
t.value_index | 表示这个tensor在其操作结果中的索引 | ||
t.consumers() | list | 返回消耗这个tensor的操作列表 | |
t.eval() | ndarray | feed_dict=None | 用于placeholder赋初始值{placeholder_object: value} |
session=None | 用来计算此tensor的session | ||
t.get_shape() | TensorShape | tensor的形状 | |
t.set_shape() | None | shape | 更新tensor的形状, verify_shape=False |
.zeros() | Tensor | (shape, dtype=tf.float32, name=None) 按shape生成一个全0 tensor | |
.zeros_like() | Tensor | (tensor, dtype=None, name=None) 按tensor的shape创建一个新全0 tensor | |
.ones() .ones_like() | Tensor | 参考上面两个, 创建全1 tensor | |
.fill() | Tensor | (dims, value, name=None) 值全为value, 形状为dims的tensor | |
.linspace() | 1DTensor | 创建包含num个元素, 且步长固定的tensor | |
start | 起始值(包含) | ||
stop | 结束值(包含) | ||
num | 步长 = (stop - start) / (num-1) | ||
name=None | 张量名 | ||
.range() | 1DTensor | (start, limit, delta=1, name='range') 创建范围为[start, limit)步长为delta的tensor | |
.placeholder() 占位符(feed_dictation) run的时候才赋初始值 |
Tensor | dtype | 数据类型, 必须制定, 推荐float32(或1) |
shape=None | 指定返回张量的形状, None表示任意形状, 某一维为None则表示次维不做限制 | ||
name=None | 张量名 | ||
.nn.embedding_ lookup() |
Tensor | params | 多维数据, |
ids | 多维数据, 值为params的索引, 返回params的对应值 | ||
partition_strategy='mod' | |||
name=None | 张量名 | ||
validate_indices=True | |||
max_norm=None | |||
.layers.dense() 全连接层 |
Tensor | ||
inputs | 二维tensor | ||
units | 输出空间的维度(该层神经单元节点数) | ||
activation及其以后参数同tf.layers.conv1d | |||
变量 | |||
.Variable() |
Variable 变量 实例v |
initial_value | Tensor or Tensor_like. 变量的初始化值. 必须指定shape, 除非validate_shape=False |
trainable=True | 是否将该变量添加到图形集合`GraphKeys.TRAINABLE_VARIABLES` | ||
collections=None | 图表集合键的列表。新的变量被添加到这些集合中。默认为`[GraphKeys.GLOBAL_VARIABLES]` | ||
validate_shape=True | 是否允许变量初始化为未知形状的值 | ||
caching_device=None | 描述设备的字符串, 表示哪个设备用来读取缓存. 默认是device | ||
name=None | 变量名 | ||
variable_def=None | |||
dtype=None | 指定数据类型 | ||
expected_shape=None | TensorShape类型. 要是设置了, 那么初始的值会是这种形状 | ||
import_scope=None | |||
v.device | 设备名称 | ||
v.dtype | 数据类型 | ||
v.graph | 存放变量的图 | ||
v.initial_value | Tensor | 变量的初始值 | |
v.initializer | 变量的初始化器 | ||
v.name | 变量名 | ||
v.op | 产生这个variable作为输出的操作 | ||
v.assign() | Variable | value | 为变量指定一个新值(形状相同) |
use_locking=False | |||
v.assign_add() | Variable | delta, use_locking | 为这个变量加上一个值(形状相同) |
v.assign_sub() | Variable | delta, use_locking | 为这个变量减去一个值(形状相同) |
v.count_up_to() | Variable | limit | 上限值. 当Op运行时, 它试图将变量+1, 如果增加变量使其超过限制, 将会引发异常 |
v.eval() | session=None | 在一个session里计算并返回变量值 | |
v.get_shape() | 返回变量的形状 | ||
v.initialized_value() | Tensor | 返回已经初始化变量的值 | |
v.load() | Variable | value | 新的变量值. 把新值载入到变量里 |
session=None | 用来估算这个变量的Session | ||
v.read_value() | Tensor | 返回这个变量的值 | |
v.scatter_sub() | sparse_delta | ||
use_locking=False | |||
v.set_shape() | Variable | shape | 改变变量形状 |
.get_variable() | Variable | name | 新的或现有变量名(可用于变量复用) |
shape=None | 新变量或现有变量的形状 | ||
dtype=None | 新变量或现有变量的类型 | ||
initializer=None | 变量的初始值设定项 | ||
regularizer=None | |||
trainable=True | 是否将变量添加到图形集合 | ||
collections=None | 图形集合键列表 | ||
caching_device=None | |||
partitioner=None | |||
validate_shape=True | 是否允许变量初始化为未知形状的值 | ||
use_resource=None | |||
custom_getter=None | |||
将value赋给ref来更新ref | |||
.assign() | Variable | ref | Veriable |
value | 跟ref同类型的Tensor | ||
validate_shape=None | True: value需和ref形状相同(默认) | ||
False: ref将对value的形状进行引用 | |||
use_locking=None | |||
name=None | 操作的名称 | ||
.global_variables() | 返回全局变量 | ||
.local_variables() | 返回局部变量 | ||
.variables_ initializer() | var_list | 待初始化变量列表 | |
name='init' | 操作的名称 | ||
.global_variables_ initializer() | Op | (替换tf.initialize_all_variables()的新方法)返回一个初始化所有全局变量的操作. 类似variables_initializers(global_variables()) | |
.local_variables_ initializer() | Op | 返回一个初始化所有局部变量的操作 | |
Graph(图) | |||
.get_default_graph() | 返回默认图 | ||
.Graph() | 实例g | 创建一个图 | |
g.building_function | |||
g.finalized | 若此图被终止了则返回True | ||
g.graph_def_versions | |||
g.seed | 此图的图层随机种子 | ||
g.version | |||
g.add_to_collection() | |||
name | |||
value | |||
g.as_default() | with...: | 将此图设为默认, 其包含的张量将在此图中 | |
g.device() | matmul_on_gpu | 参见tf.device | |
g.finalize() | 结束这个Graph, 使得它只读 | ||
g.get_all_collection_ key() | list | 返回Graph中的collection列表 | |
g.get_operation_ by_name() | name | 根据操作名返回操作 | |
g.get_operations() | list | 返回图中操作列表 | |
g.get_tensor_by_ name() | Tensor | name | 根据张量名返回tensor |
g.is_feedable() | bool | tensor | 判断tensor能否被feed |
g.is_fetchable() | bool | tensor_or_op | 判断tensor或op能否被取到 |
g.name_scope() | 参考tf.name_scope() | ||
Session | |||
.InteractiveSession() | 实例s | 创建一个新的session并设为默认 | |
target='' | 连接执行引擎, 默认in-process | ||
graph=None | 要计算的graph | ||
config=None | |||
.Session() | 实例s | 创建一个新的session, 包含了操作对象执行的环境 | |
target='' | 连接执行引擎, 默认in-process | ||
graph=None | 要计算的graph | ||
config=None | |||
s.graph | "投放"到session中的图 | ||
s.graph_def | 图的描述 | ||
s.sess_str | |||
s.run() | 运行操作计算tensor | ||
fetches | 图中的一个元素, 或元素列表. 或一个字典, 返回也将是字典, key不变, 值变为运算后的值 | ||
feed_dict=None | 用于placeholder赋初始值 | ||
options=None | |||
run_metadata=None | |||
s.close() | 关闭这个session | ||
s.as_default() | with...: | 将此对象设为默认的session | |
优化器Optimizer(tf.train) | |||
.Optimizer() | 优化器类的基类(基本不用) | ||
.GradientDescent Optimizer() | Op | 创建一个梯度下降算法的优化器 | |
learning_rate | 要是用的学习率 | ||
use_locking=False | |||
name='GradientDescent' | 操作的名称 | ||
Op.compute_ gradients() | |||
loss | 待减小的值 | ||
var_list=None | 默认GraphKey.TRAINABLE_VARIABLES | ||
gate_gradients= GATE_OP | |||
aggregation_method=N | |||
colocate_gradients_with_ ops=False | |||
grad_loss=None | |||
.AdadeltaOptimizer | 实现了Adadelta算法的优化器, 可以算是Adagrad算法的改进版 | ||
learning_rate=0.001 | 学习率 | ||
rho=0.95 | 衰减率 | ||
epsilon=1e-08 | |||
use_locking=False | |||
name='Adadelta' | 操作的名称 | ||
.AdagradOptimizer | 实现了Adagrad算法的优化器 | ||
learning_rate | 学习率 | ||
initial_accumulator_ value=0.1 | |||
use_locking=False | |||
name='Adagrad' | 操作的名称 | ||
.Momentum Optimizer() | |||
.AdamOptimizer() | |||
数学函数(Math)点击跳转到官方API(有墙) | |||
.argmax() | Tensor | 返回指定维度最大值的位置 | |
input | Tensor | ||
axis=None | 默认维度0 | ||
name=None | 操作名称 | ||
output_type=tf.int64 | tf.int32或tf.int64 | ||
.argmin() | Tensor | 同.argmax但作用相反 | |
.matmul() | Tensor | 计算矩阵的积 | |
a,b | 需要计算的两个矩阵 | ||
transpose_a=False | 是否将a计算前进行转置 | ||
transpose_b=False | 是否将b计算前进行转置 | ||
adjoint_a=False | 是否将a计算前进行共轭转置 | ||
adjoint_b=False | 是否将b计算前进行共轭转置 | ||
a_is_sparse=Fasle | a是否是稀疏矩阵 | ||
b_is_sparse=Fasle | b是否是稀疏矩阵 | ||
随机值 | |||
.random_normal() | Tensor | 返回一个指定形状,被随机正态分布值填充的tensor | |
shape | 指定返回张量的形状 | ||
mean=0.0 | 正态分布的均值 | ||
stddev=1.0 | 正态分布的标准差 | ||
dtype=tf.float32 | 输出类型: float32, float64, int32或int64 | ||
seed=None | 随机数种子 | ||
name=None | 张量名 | ||
.truncated_normal() | Tensor | 返回一个指定形状,被截断正态分布(truncated normal distribution)值填充的tensor(参数同上) | |
.random_unifrom() |
Tensor |
服从均值分布的随机数, 区间为[minval, maxval) | |
shape | 指定返回张量的形状 | ||
minval=0 | 随机值范围的下界(默认[0, 1)) | ||
maxval=None | 随机值范围的上界(int则必须指定此值) | ||
dtype, seed, name | 同上 | ||
.random_shuffle() | Tensor | 在第一个维度随机打乱顺序(可在随机梯度下降的时候用) | |
value | 待打乱的tensor | ||
seed, name | 同上 | ||
形状相关操作 | |||
.shape() | Tensor | 返回输入Tensor的形状 | |
input | 输入的Tensor | ||
name=None | 操作的名称 | ||
out_type=tf.int32 | 输出数据的数据类型 | ||
.shape_n() | |||
.size() | 返回输入Tensor的元素数量(参数同tf.shape) | ||
.rank() | (input, name=None)返回tensor的维度数 | ||
.reshape() | Tensor | 改变一个tensor的形状 | |
tensor | 输入tensor | ||
shape | tensor形状(某个分量可以是-1, 将将自动计算此值) | ||
name=None | 操作的名称 | ||
.squeeze() | |||
.expand_dims() | |||
.reduce_max() 参考np.max |
Tensor | input_tensor | 传入一个tensor或可转换为tensor的数据 |
axis=None(原reduction_indices) | 选择操作的维度, 默认操作全部数据 | ||
keep_dims=False | 是否保留原维度, 否则计算后维度降低 | ||
name=None | 张量名 | ||
.reduce_* | Tensor | 参考.reduce_max参数 | 参考np.* |
基本神经网络组件 | |||
激活函数(输入输出维度一致) | |||
.nn.relu() | Tensor | 计算修正线性单元 | |
features | tensor | ||
name=None | 操作的名称 | ||
.nn.relu6() | |||
.nn.crelu() | |||
.nn.elu() | |||
.nn.softsign() | |||
.nn.dropout() | Tensor | 随机丢弃一部分神经元 (有助于防止过度拟合) | |
inputs | Tensor | ||
rate=0.5 | 丢包率 | ||
noise_shape=None | |||
seed=None | 随机种子 | ||
training=False | |||
name=None | 操作名称 | ||
.nn.bias_add() | |||
.sigmoid() | |||
.tanh() | |||
分类 | |||
.nn.sigmoid_cross_ entropy_with_logits() | |||
.nn.softmax() | Tensor | softmax = tf.exp(logits) / tf.reduce_sum(tf.exp(logits), dim) | |
logits | Tensor | ||
dim=-1 | 运算的维度, 默认最后一个维度 | ||
name=None | 操作名称 | ||
.nn.log_softmax() | Tensor | logsoftmax = logits - log(reduce_sum(exp(logits), dim)) | |
参数同.nn.softmax() | |||
.nn.softmax_cross_ entropy_with_logits() | Tensor | 计算交叉熵(禁止使用位置参数)(损失函数, 越小模型越优) | |
labels=None | 有效概率分布 | ||
logits=None | 估计概率分布 | ||
dim=-1 | 维度, 默认最后一个维度 | ||
name=None | 操作名称 | ||
.nn.sparse_softmax_ cross_entropy_with_ logits() | |||
.nn.weighted_cross_ entropy_with_logits() | |||
各种卷积网络 | |||
基本卷积操作 | |||
.layers.conv1d() |
Tensor | inputs | 张量输入 |
filters | 整数, 输出空间的维数(即, 卷积核的数量) | ||
kernel_size | 一个整数或一个整数的元组/列表, 指定1D卷积窗的长度 | ||
strides=1 | 一个整数或一个整数的元组/列表, 指定卷积的步幅长度 | ||
padding='valid' | 'valid'或'same'不区分大小写 | ||
data_format= 'channels_last' | |||
dilation_rate=1 | |||
activation=None | 激活函数, 默认线性激活 | ||
ues_bias=True | 是否使用偏置 | ||
kernel_initializer=None | 卷积核初始化 | ||
bias_initializer= tf.zeros_initializer() | 偏置初始化, 默认初始化为0 | ||
kernel_regularizer=None | 卷积核化的正则化 | ||
bias_regularizer=None | 偏置项的正则化 | ||
activity_regularizer=None | 输出的正则化函数 | ||
kernel_constraint=None | |||
bias_constraint=None | |||
trainable=True | 该层的参数是否参与训练, True则变量加入到图集合中 | ||
name=None | 该层的名称 | ||
reuse=None | 是否重复使用参数 | ||
.layers.conv2d() |
Tensor | 二维卷积 | |
参数同.layers.conv1d, 只列出不同 | |||
kernel_size | 一个整数或2个整数的元组/列表, 指定2D卷积窗口的高度和宽度. 一个整数表示高=宽 | ||
strides | 一个整数或2个整数的元组/列表, 指定沿高度和宽度的步幅长度 | ||
dilation_rate | |||
.nn.conv2d() | Tensor | 二维卷积 | |
input | 输入 | ||
filter | [滤波器高,滤波器宽,深度(同输入),滤波器个数(输出的深度 )] | ||
strides | 滑动步长, 一般为[1, x_strides, y_strides, 1] | ||
padding | 'SAME'会有0填充, 使步长为1时保持输入输出尺寸不变, 而'VALID'则采取丢弃 | ||
use_cudnn_on_gpu=N | |||
data_format=None | 指明输入数据和输出数据的格式. 'NHWC': 数据存储格式为[batch, in_height, in_width, in_channels]; 'NCHW': 数据存储格式为[batch, in_channels, in_height, in_width] | ||
name=None | 操作的名称 | ||
.nn.atrous_conv2d() | Tensor | 空洞卷积(没有stride参数, 因为被固定为了1) | |
value | 4DTensor, 需要'NHWC'格式 | ||
filters | [滤波器高,滤波器宽,深度(同输入),滤波器个数(输出的深度 )] | ||
rate | 插入(rate-1)数量的'0' | ||
padding | 'VALID'或'SAME'. 'VALID'返回:[batch, height-2*(filter_width-1), width-2*(filter_height-1), out_channels]的Tensor; 'SAME'返回:[batch, height, width, out_channels]的Tensore | ||
name=None | 操作的名称 | ||
池化操作(Pooling) | |||
.nn.avg_pool() | Tensor | 平均 | |
value | [batch, height, width, channels] |
||
ksize | 滤波器形状, 一般二维图像为[1,高,宽,1] |
||
strides | 步长, 一般为[1, x_strides, y_strides, 1] | ||
padding | 'VALID'或'SAME' | ||
date_format='NHWC' | 'NHWC'或'NCHW' | ||
name=None | 操作名 | ||
.nn.max_pool() | |||
.nn.max_pool_with_ argmax() | |||
.nn.avg_pool3d() | |||
.nn.max_pool3d() | |||
.nn.fractional_avg_ pool() | |||
.nn.fractional_max_ pool() | |||
.nn.pool() | |||
.device() | with...: | '/cpu:0' | 指定运算设备为CPU, 即使多个CPU也不区分. |
'/gpu:n' | 多个GPU的名称是不同的, 第一个为'/gpu:0' | ||
.name_scope() | with...: | name | 在其下使用Variable, 变量名(V_n)前会被加上'name/...'且相同V_n会自动添加后缀加以区分, 使用get_variable, V_n不会变化, 且出现相同V_n会报错 |
default_name=None | 如果`name`参数是`None`,则使用默认名称 | ||
values=None | |||
.variable_scope() | with...as sc: |
name_or_scope | Variable以及get_variable变量名(V_n)前面都会被加上'name/...'但只有Variable的V_n会自动加后缀区分, 而在get_variable重复V_n前面加上sc.reuse_variables()可实现变量复用(指向同一变量)不加则报错 |
default_name=None | 如果`name_or_scope`参数是`None`,则使用默认名称 | ||
values=None | |||
initializer=None | 此范围内变量的默认初始值设定项 | ||
regularizer=None | 此范围内的变量的默认regularizer | ||
caching_device=None | 此范围内的变量的默认缓存设备 | ||
partitioner=None | 此范围内变量的默认分区程序 | ||
custom_getter=None | 这个范围内的变量的默认自定义getter | ||
reuse=None | |||
dtype=None | 在此作用域中创建的变量类型 | ||
use_resource=None | |||
#s3gt_translate_tooltip_mini { display: none !important }
#s3gt_translate_tooltip_mini { display: none !important }
#s3gt_translate_tooltip_mini { display: none !important }
#s3gt_translate_tooltip_mini { display: none !important }
#s3gt_translate_tooltip_mini { display: none !important }
#s3gt_translate_tooltip_mini { display: none !important }
#s3gt_translate_tooltip_mini { display: none !important }
#s3gt_translate_tooltip_mini { display: none !important }
python库--tensorflow的更多相关文章
- ZhuSuan 是建立在Tensorflow上的贝叶斯深层学习的 python 库
ZhuSuan 是建立在Tensorflow上的贝叶斯深层学习的 python 库. 与现有的主要针对监督任务设计的深度学习库不同,ZhuSuan 的特点是深入到贝叶斯推理中,从而支持各种生成模式:传 ...
- Python 库大全
作者:Lingfeng Ai链接:http://www.zhihu.com/question/24590883/answer/92420471来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非 ...
- 哪些 Python 库让你相见恨晚?【转】
原文链接:https://www.zhihu.com/question/24590883/answer/92420471 原文链接:Python 资源大全 ---------------- 这又是一个 ...
- Python库资源大全
转载地址:https://zhuanlan.zhihu.com/p/27350980 本文是一个精心设计的Python框架.库.软件和资源列表,是一个Awesome XXX系列的资源整理,由BigQu ...
- Python库,让你相见恨晚的第三方库
环境管理 管理 Python 版本和环境的工具 p – 非常简单的交互式 python 版本管理工具.pyenv – 简单的 Python 版本管理工具.Vex – 可以在虚拟环境中执行命令.virt ...
- 小众Python库介绍
Python 是世界上发展最快的编程语言之一.它一次又一次地证明了自己在开发人员和跨行业的数据科学中的实用性.Python 及其机器学习库的整个生态系统使全世界的用户(无论新手或老手)都愿意选择它.P ...
- Python资源 --Python库
环境管理 管理 Python 版本和环境的工具 pyenv – 简单的 Python 版本管理工具. Vex – 可以在虚拟环境中执行命令. virtualenv – 创建独立 Python 环境的工 ...
- 机器学习 python库 介绍
开源机器学习库介绍 MLlib in Apache Spark:Spark下的分布式机器学习库.官网 scikit-learn:基于SciPy的机器学习模块.官网 LibRec:一个专注于推荐算法的j ...
- python 库资源大全
偶然的机会翻到这篇文章,很全面,来源: Python 资源大全中文版 哪些 Python 库让你相见恨晚? 环境管理 管理 Python 版本和环境的工具 p:非常简单的交互式 pyth ...
随机推荐
- C++STL—string类
string容器 1.1 string容器的基本概念 string容器是一个类 这个容器中有一个指针,指针维护了一个数组 string容器提供copy.find.insert.replace等等功能 ...
- STM32启动文件详解及SystemInit函数分析(转)
;先在RAM中分配系统使用的栈,RAM的起始地址为0x2000_0000 ;然后在RAM中分配变量使用的堆 ;然后在CODE区(flash)分配中断向量表,flash的起始地址为0x0800_0000 ...
- Dired Mode in Emacs
Start up Dired mode: C-x d; (List dirs: C-x C-d) Hide Dired mode window: q; Mark Mark (for group man ...
- CodeReview of JDK Source Code
jdk1.6.0_35/src.zip, only java package is reviewd(full package review caused a OutofMemory on java h ...
- [源码解析] PyTorch 分布式(2) --- 数据加载之DataLoader
[源码解析] PyTorch 分布式(2) --- 数据加载之DataLoader 目录 [源码解析] PyTorch 分布式(2) --- 数据加载之DataLoader 0x00 摘要 0x01 ...
- 【网络编程】TCPIP_3_地址族与数据序列
目录 前言 3. 地址族与数据序列 3.1 分配给套接字的 IP 地址与端口号 3.2 参数 IP 地址 3.2.1 IPV4 地址的结构体 3.2.2 地址族(Address Family) 3.2 ...
- DVWA靶场之Command Injection(命令行注入)通关
Command Injection Low: <?php if( isset( $_POST[ 'Submit' ] ) ) { // Get input $target = $_REQUES ...
- Python小白的数学建模课-17.条件最短路径
条件最短路径问题,指带有约束条件.限制条件的最短路径问题.例如: 顶点约束,包括必经点或禁止点的限制: 边的约束,包括必经路段.禁行路段和单向路段:无权路径长度的限制,如要求经过几步或不超过几步到达终 ...
- MongoDB 数据库创建删除、表(集合) 创建删除、数据增删改查
使用数据库.创建数据库 use student 如果真的想把这个数据库创建成功,那么必须插入一个数据. 数据库中不能直接插入数据,只能往集合(collections)中插入数据.不需要专门创建集合,只 ...
- Qt简单的文件创建和读写
1 QFile fp; //要包含必要的头文件,这里省略 2 QDir(dir); 3 QString path("./"),filename("test.txt&quo ...