边看边学TensorFlow

从安装开始学TensorFlow

内容来源:http://www.tensorfly.cn/

TensorFlow中文社区

1.

tf.Graph()

1). 它可以通过tensorboard用图形化界面展示出来流程结构

2). 它可以整合一段代码为一个整体存在于一个图中

2.

tf.set_random_seed

设置图级随机seed。

依赖于随机seed的操作实际上从两个seed中获取:图级和操作级seed。 这将设置图级别的seed.

1).如果没有设置图形级别和操作seed,则使用随机seed进行操作。
2).如果设置了图级seed,但操作seed没有设置:系统确定性地选择与图级seed一起的操作seed,以便获得唯一的随机序列。
3).如果没有设置图级seed,但是设置了操作seed:使用默认的图级seed和指定的操作seed来确定随机序列。
4).如果图级和操作seed都被设置:两个seed联合使用以确定随机序列。

3.

tf.placeholder

用于定义过程,执行时再赋具体的值

参数:

  1. dtype:数据类型。常用的是tf.float32,tf.float64等数值类型
  2. shape:数据形状。默认是None,就是一维值,也可以是多维(比如[2,3], [None, 3]表示列是3,行不定)
  3. name:名称

4.

tf.nn.embedding_lookup

选取一个张量里面索引对应的元素

5.

tf.reduce_sum

压缩求和,用于降维

x = tf.constant([[1, 1, 1], [1, 1, 1]])
tf.reduce_sum(x)  # 6
tf.reduce_sum(x, 0)  # [2, 2, 2]
tf.reduce_sum(x, 1)  # [3, 3]
tf.reduce_sum(x, 1, keep_dims=True)  # [[3], [3]]
tf.reduce_sum(x, [0, 1])  # 6

6.

tf.square

tf.square(a)是对a里的每一个元素求平方

7.

tf.subtract

返回 x-y 的元素.

函数参数:

  • x:一个 Tensor,必须是下列类型之一:half,bfloat16,float32,float64,uint8,int8,uint16,int16,int32,int64,complex64,complex128.
  • y:一个 Tensor,必须与 x 具有相同的类型.
  • name:操作的名称(可选).

函数返回值:

tf.subtract函数返回一个Tensor,与 x 具有相同的类型.

8.

tf.nn.dropout

tf.nn.dropout是TensorFlow里面为了防止或减轻过拟合而使用的函数,它一般用在全连接层。

tf.nn.dropout(x, keep_prob, noise_shape=None, seed=None,name=None)

上面方法中常用的是前两个参数:

第一个参数x:指输入

第二个参数keep_prob: 设置神经元被选中的概率,在初始化时keep_prob是一个占位符,  keep_prob = tf.placeholder(tf.float32) 。tensorflow在run时设置keep_prob具体的值,例如keep_prob: 0.5

第五个参数name:指定该操作的名字。
---------------------
作者:huahuazhu
来源:优快云
原文:https://blog.youkuaiyun.com/huahuazhu/article/details/73649389
 

9.

tf.add_n  

tf.add_n([p1, p2, p3....])函数是实现一个列表的元素的相加。就是输入的对象是一个列表,列表里的元素可以是向量,矩阵,等

10.

tf.nn.l2_loss

tf.nn.l2_loss(

    t,

    name=None

)

参数:

t:一个张量(tensor),类型可以为:half, bfloat16, float32, float64

name:op的一个名字,即为这个操作取个名字

作用:不使用sqrt计算张量的L2范数的一半

输出:

一个tensor,数据类型和t相同,是一个标量

计算公式:

output = sum(t**2)/2

简单的可以理解成张量中的每一个元素进行平方,然后求和,最后乘一个1/2

l2_loss一般用于优化目标函数中的正则项,防止参数太多复杂容易过拟合(所谓的过拟合问题是指当一个模型很复杂时,它可以很好的“记忆”每一个训练数据中的随机噪声的部分而忘记了要去“学习”训练数据中通用的趋势)
---------------------
作者:飞翔的小绵羊_fly
来源:优快云
原文:https://blog.youkuaiyun.com/yangfengling1023/article/details/82910536

11.

tf.contrib.layers.l2_regularizer

规则化可以帮助防止过度配合,提高模型的适用性。(让模型无法完美匹配所有的训练项。)(使用规则来使用尽量少的变量去拟合数据)

11.

tf.train.AdamOptimizer

class tf.train.AdamOptimizer

__init__(learning_rate=0.001, beta1=0.9, beta2=0.999, epsilon=1e-08, use_locking=False, name='Adam')

此函数是Adam优化算法:是一个寻找全局最优点的优化算法,引入了二次方梯度校正。

相比于基础SGD算法,1.不容易陷于局部优点。2.速度更快
---------------------
作者:zj360202
来源:优快云
原文:https://blog.youkuaiyun.com/zj360202/article/details/70263110

12.

tf.int32

tf.cast(x, dtype, name=None)

此函数是类型转换函数

参数

  • x:输入
  • dtype:转换目标类型
  • name:名称

返回:Tensor

13.

tf.device

用于指定模型运行的具体设备,可以指定运行在GPU还是CUP上,以及哪块GPU上。

14.

tf.nn.embedding_lookup

选取一个张量里面对应的元素

15.

tf.ConfigProto()

用在创建session的时候,用来对session进行参数配置

16.

tf.get_default_graph()

获取当前默认计算图

17.

tf.Variable

变量的初始化,tf.Variable(initializer,name),参数initializer是初始化参数,name是可自定义的变量名称

18.

tf.random_normal

用于从服从指定正太分布的数值中取出指定个数的值

tf.random_normal(shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=None, name=None)

    shape: 输出张量的形状,必选
    mean: 正态分布的均值,默认为0
    stddev: 正态分布的标准差,默认为1.0
    dtype: 输出的类型,默认为tf.float32
    seed: 随机数种子,是一个整数,当设置之后,每次生成的随机数都一样
    name: 操作的名称
---------------------
作者:-牧野-
来源:优快云
原文:https://blog.youkuaiyun.com/dcrmg/article/details/79028043

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值