💻 개인공부 💻/머신러닝, 딥러닝
[ Tensorflow ] tf.constant, tf.placeholder, tf.Variable의 차이를 알아보자
공대생 배기웅
2020. 12. 21. 01:10
반응형
Tensorflow에서 변수를 설정할 때 크게 3가지의 방법을 이용할 수 있다. 각각의 차이점을 알아보자.
1. tf.constant
변하지 않는 일정한 값의 상수를 설정할 때 사용한다.
tf.constant (value, dtype = None, Shape = None, anem='Const', verify_shape=False)
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
sess = tf.Session()
x = tf.constant([5])
init = tf.global_variables_initializer()
sess.run(init)
print(sess.run(x))
실행결과
2. tf.placeholder
일정 값을 받을 수 있는 그릇과 같은 역할을 한다.
placeholder를 실행시킬 때는 feed_dict={x:"들어갈 값"} 과 같은 식을 이용하여 실행한다.
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
input_data = [1,2,3]
x = tf.placeholder(dtype = tf.float32)
y = x*2
sess = tf.Session()
print(sess.run(y, feed_dict={x:input_data}))
실행 결과
3. tf.Variable
값이 변할 수도 있는 변수를 만들 때 사용한다.
단 변수는 그래프를 실행하기 전에 초기화 작업을 해줘야 한다.
세션을 초기화(tf.global_variables_initializer()) 하는 순간 변수에 그 값이 지정된다.
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
sess = tf.Session()
x = tf.Variable([2], dtype=tf.float32, name = "x")
init = tf.global_variables_initializer()
sess.run(init)
print(sess.run(x))
실행결과
wotres.tistory.com/entry/tfconstant-tfVariable-tfplaceholder-%EC%B0%A8%EC%9D%B4
728x90
반응형