tensorflow中placeholder, constant与variable的用法

import os
os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
#这段代码可以屏蔽因为CPU的警告



接下来,我对variable、placeholer与constant的用法做了一些验证,我将自己一些总结写于下面:
一、区别。
variable 是一个类;
placeholder是一个函数;
constant是一个已知常量;
二、用法,用代码形式讲解
import tensorflow as tf
import numpy as np
import tensorflow as tf
a = tf.Variable([[2,3],[4,6]],dtype=tf.float32) #variable必须给定初始化值,不能是定义变量,否则会报错 ①
b = tf.placeholder(tf.float32,[2,2]) #可以给定张量维度,如2行2列
c = tf.add(a,b) #若没有placeholder,可以使用c=a*a (a=tf.constant(tf.ones(2,3))),其它运算可以类比 ②
sess = tf.Session()
init=tf.global_variables_initializer() #有Variable时候才初始化,实际告诉计算机解释①中variable定义初始化变量可以使用了
sess.run(init) #开始进行初始化运算,将值赋给变量
print(init)
import numpy as np
k=np.ones([2,2]) # 绝对不能是python定义列表等,我试过会报错,最好是numpy来给想要的数组
print('c\n')
ff=sess.run(c,feed_dict={b:k}) #feed_dict 在placeholder时候使用,告诉变量用什么值,如果没有placeholder 可以不用写feed_dict 直接运行结果,如解释2中的sess.rn(c)
print(ff)








猜你喜欢

转载自www.cnblogs.com/tangjunjun/p/10891858.html