2016-03-22 12 views
1

session.run([tensor_to_eval])'u çalıştırdığımızı varsayalım, yalnızca yerleşik bilginin tf.Variable değerleri olduğu ve diğer tüm değerlendirme sonuçlarının çağrıdan döndüğü veya atıldığı doğru mu?Tensorflow, bir oturumda depolanan tek bağlam bilgisinin değişken değeridir.

İki oturumumuz olduğunu varsayalım, varsayılan grafik dışında herhangi bir şey paylaşıyorlar mı? devlet TensorFlow session içinde run() aramalar ("adımlar") arasında tutulan bir

cevap

7

çeşitli şekilleri vardır: Zaten belirttiği gibi

  • , okuma ve yazdığı edilebilir etkinleştirilmelerinde arasında tf.Variable nesneler mağaza değerleri herhangi bir adım.
  • TensorFlow sıraları (tutorial) 'daki bir sınırlı tampona enqueue one veya many değerleri ve daha sonraki bir adımda dequeue one veya many değerlerine olanak tanır. Kuyruklar ayrıca, üretici/tüketici ilişkisinde geri-baskı gibi adımlar arasındaki koordinasyonu destekler. Ayrıca, tf.train.batch() gibi işlevler kullanarak, öğe-eleman ve toplu hesaplama arasında geçiş yapmanızı sağlar.
  • TensorFlow okuyucular (tutorial), geçerli konumlarını bir dosyadaki adımları arasında hatırlayan örtülü dosya işaretçileri gibi davranır. Örnekler için farklı lines of a text file numaralı read() op veriminin sonraki yürütmeleri.

TensorFlow'un tek işlemli sürümünde, oturumlar herhangi bir durumu paylaşmaz. Aynı grafiği paylaşabilirler (her ikisi de aynı varsayılan grafikle oluşturulmuşlarsa), ancak durum bilgisi olan bileşenler (tf.Variable nesneler gibi) farklı oturumlarda farklı değerler alacaktır.

distributed runtime, oturumlar arasında paylaşılan "kaynak kapsayıcılar" için destek ekler. Bu değişkenler, sıralar ve okuyucular kapsar ve bu nesneler için yapıcıya isteğe bağlı container argümanını geçirerek yapılandırılabilir.