[python] placeholder 오류
2021. 9. 23. 22:56ㆍ파이썬
증상
텐서플로우가 2.0으로 업데이트 되면서 tf.placeholder를 사용할 수 없게 되었다. 다음과 같이 실행한다면 placeholder라는 속성을 찾을 수 없다는 오류를 낸다.
import tensorflow as tf
X = tf.placeholder("float")
이를 해결 할 수 있는 두 가지 방법을 알아보도록 하자.
Solution 1
: tensorflow의 버전 업데이트에 따른 변화를 적용하는 것이다. 업데이트에 대한 자세한 내용은 여기를 참고하기 바란다.
#tensorflow 1.x
self._states = tf.placeholder(shape=[None, self._num_states], dtype=tf.float32)
#tensorflow 2.x
self._states = tf.Variable(tf.ones(shape=[None, self._num_states]), dtype=tf.float32)
Solution 2
: compatibility mode를 적용해 1.x 버전의 기능을 그대로 사용하는 것이다.
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
x = tf.placeholder(shape=[None, 2], dtype=tf.float32)
위와 같이 tf.disable_v2_behavior()를 실행해서 tf.placeholder를 그대로 사용할 수 있다.
출처: https://gmnam.tistory.com/159 [Voyager]
'파이썬' 카테고리의 다른 글
[python] tf.constant vs tf.Variable (0) | 2021.09.23 |
---|---|
[python] feed_dect, placeholder (0) | 2021.09.23 |
[python] 2차원 배열 입력받기 (0) | 2021.01.27 |
주피터 노트북의 기본 웹 브라우저 설정방법 (0) | 2020.10.13 |
numpy의 axis (0) | 2020.10.13 |