2016-12-18 15 views
1

"クリーン"なコードを書こうとしています。TensorFlow:初期化されていない変数を変数スコープで初期化し、再利用する方法はありますか?

try: 
    with scope('my scope'): 
     var = tf.get_variable('v', reuse=True) 
except ValueError: 
    with scope('my scope'): 
     var = tf.get_variable('v', reuse=False) 

しかし、それは動作するようには思えない。私は何をしたい私はこれをやってみました

if(var exists) 
    var = tf.get_variable(...) 
else 
    var = init_var 

のtry-除いて、それほどのようなものです。 私はオンラインでサンプルを探しましたが、私が解決しようとしているケースに近いものは見つかりませんでした。これは、ほとんどすべての変数が異なるスコープにある大規模なネットワークを使い分けることです。

+0

私はTensorFlow部分については知らないが、私はあなたが変数かどうかを確認したい場合は、例外が '(代わりにValueError'を送出'の)NameError'されるべきだと思います存在するか否かを判断する。 –

答えて

関連する問題