tensorflow语法基础

tensorflow语法基础

变量类型:
Variable:变量
constant:常量
指定参数
name:变量在tensorflow中的名字
dtype:变量的数据类型 可以是tf.float32, tf.int32之类的
e.g.

import tensorflow as tf
a=tf.Variable(0,dtype=int32)		#类型为int32的变量 ,赋初值为0
b=tf.constant(36,name="b")		#名字为"b"的常量,值恒为36
c=tf.Variable(a-b,name="c")		#变量可以通过其他变量运算的结果赋初值
init=tf.global_variables_initializer		#一个对所有变量初始化的函数
session=tf.Session()		#一个封装了所有变量、常量的环境
session.run(init)			#调用init函数

sesson
对session比较好的解释:tensorflow文档。注意销毁session的方式:session.close()
session.run(function):执行函数
session.run(variable):计算某个变量的值
占位符
占位符可以先分配内存,稍后赋值。对占位符进行赋值一般在session.run中进行,值在feed_dict中。

xx=tf.placeholder(tf.int32,name="xx")	#分配一块int32大小的内存,没有数据
res=session.run(xx**2,feed_dict={xx:30})		#先将x赋值为30,然后平方,结果赋值给res

feed_dict={占位符:具体的值}
矩阵
初始化(a,b)的矩阵:
常量:

x=tf.constant(np.random.randn(a,b), name="x")

变量:

x=tf.get_variable(name="x", shape=[3,2], dtype=tf.float32,initializer=tf.zeros_initializer())

全1:

tf.ones([a,b]):

全0:

tf.zeros([a,b])

相乘:

tf.matmul(A,B)

相加:

tf.add(A,B)

重要函数
sigmoid:

tf.sigmoid

relu:

tf.nn.relu

softmax计算cost function

tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits_v2(logits = ..., labels = ...))

其中,reduct_mean表示向量中各项总和,logits是z3不是a3
优化

optimizer = tf.train.GradientDescentOptimizer(learning_rate = learning_rate).minimize(cost)
_ , c = sess.run([optimizer, cost], feed_dict={X: minibatch_X, Y: minibatch_Y})

让cost最小,通过gradient descent进行优化。
X,Y是在cost的计算函数(forward_propagation)中出现过的参数。
_存储optimizer的值,不关心;c存储cost的值

tensorflow一般步骤
1、创建tensorflow变量/常量
2、创建对这些变量进行操作的函数
3、创建初始化这些变量的函数(初始化只分配内存,不计算)
4、创建session
5、在session中执行初始化函数
6、在session中执行其他函数(计算)

  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值