2015-11-17 11 views

cevap

71

Güncelleme 11/2/2016

tf.reset_default_graph()

Eski şeyler

reset_default_graph ancak kamu API (birisi file an issue istiyor mu, olması gerektiğini düşünüyorum parçası olmayan var GitHub?)

İşlerimi sıfırlamak için yaptığım iş şu:

from tensorflow.python.framework import ops 
ops.reset_default_graph() 
sess = tf.InteractiveSession() 
30

Varsayılan olarak, varsayılan grafik etrafında bir oturum oluşturulur. Oturumda ölü düğümleri bırakmaktan kaçınmak için, varsayılan grafiği denetlemeniz veya açık bir grafik kullanmanız gerekir.

  • Eğer tf.reset_default_graph fonksiyonunu kullanabilirsiniz, varsayılan grafik temizleyin.

    tf.reset_default_graph() 
    sess = tf.InteractiveSession() 
    
  • Ayrıca açıkça bir grafiği oluşturmak ve varsayılan birini kullanarak önleyebilirsiniz. Normal bir Session kullanırsanız, oturumu oluşturmadan önce grafiği tam olarak oluşturmanız gerekir. başka değişiklikler ilan etmek InteractiveSession için, sadece grafik ilan edebilir ve bir içerikten olarak kullanmak:

    g = tf.Graph() 
    sess = tf.InteractiveSession(graph=g) 
    with g.asdefault(): 
        # Put variable declaration and other tf operation 
        # in the graph context 
        .... 
        b = tf.matmul(A, x) 
        .... 
    
    sess.run([b], ...) 
    

EDIT: tensorflow son sürümleri için (1.0 +), doğru fonksiyon g.as_default olduğunu. IPython/Jupyter dizüstü bilgisayar hücreleri, bir hücrenin çalışır durumları arasında durumu korur.

+2

tensorflow> = 1.0, 'g.as_default()' –

+0

Yazım: Açıklama ifadesinde, g.as_default() – user3750988

+0

altyazısını unuttuysanız, bu yanıtı bulduğuma çok sevindim. beni delirtiyor ... –

3

grafiği yukarı temizlenir,

def main(): 
    # Define your model 
    data = tf.placeholder(...) 
    model = ... 

with tf.Graph().as_default(): 
    main() 

kez koştu:

bir özel grafiği oluşturun.

İlgili konular