https://www.tensorflow.org/guide/migrate#2_%ED%8C%8C%EC%9D%B4%EC%8D%AC_%EA%B0%9D%EC%B2%B4%EB%A5%BC_%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC_%EB%B3%80%EC%88%98%EC%99%80_%EC%86%90%EC%8B%A4%EC%9D%84_%EA%B4%80%EB%A6%AC%ED%95%98%EC%84%B8%EC%9A%94
텐서플로우 2.0 마이그레이션 가이드 - 2.0에 맞도록 코드 수정하기 - 파이썬 객체를 사용하여 변수와 손실을 관리하세요. 부분을 확인하세요
2. 파이썬 객체를 사용하여 변수와 손실을 관리하세요.TF 2.0에서 이름 기반 변수 추적은 매우 권장되지 않습니다. 파이썬 객체로 변수를 추적하세요.
v1.get_variable 대신에 tf.Variable을 사용하세요.
모든 v1.variable_scope는 파이썬 객체로 바꾸어야 합니다. 일반적으로 다음 중 하나가 될 것입니다:
tf.keras.layers.Layer
tf.keras.Model
tf.Module
만약 (tf.Graph.get_collection(tf.GraphKeys.VARIABLES)처럼) 변수의 리스트가 필요하다면 Layer와 Model 객체의 .variables이나 .trainable_variables 속성을 사용하세요.
Layer와 Model 클래스는 전역 컬렉션이 필요하지 않도록 몇 가지 다른 속성들도 제공합니다. .losses 속성은 tf.GraphKeys.LOSSES 컬렉션 대신 사용할 수 있습니다.
자세한 내용은 케라스 가이드를 참고하세요.
경고: tf.compat.v1의 상당수 기능은 암묵적으로 전역 컬렉션을 사용합니다.