2016-08-15 15 views

cevap

3

Modelinizdeki düğümler için isteğe bağlı name="myname" bağımsız değişkenini bir düğüm oluşturan hemen hemen tüm Tensorflow operatörüne geçirerek seçebilirsiniz. Tensorflow, bunları belirtmezseniz otomatik olarak grafik düğümleri için adlar seçer, ancak bu düğümleri freeze_graph.py gibi bir araçla tanımlamak isterseniz, isimleri kendiniz seçmek en iyisidir. Bu isimler output_node_names'e ilettiğiniz adlardır.

+0

Teşekkürler, şimdi temel kavram var, ama hala model_with_buckets ile mücadele ediyorum ... Ben her biri bir kaç hücreden oluşan, embedded_attention_decoder ve ardından sequedding_attention_decoder ve daha sonra her biri bir RNN, 4 kova var ve Bütün isimleri verebilirim. Ama bir çıkış düğümü göremiyorum, "output_node_names" e geçebiliyorum. Seq2seq.py kodunun kodunda son düğüm gibi eklemem gerekir mi? Ve "output_node_names" veya "d" için bir çıkış düğümü var mı? – WS91

+0

Hangi düğümler hesaplamak istediğinize bağlıdır. Örneğin, bir çıkarım grafiğinde, genellikle modelin çıktısını temsil eden sadece bir düğüm kullanırsınız. Temel olarak --- grafiğinizi çalıştırırken session.run() öğesine geçmek istediğiniz düğümü kullanmalısınız. (Grafiğinizdeki her şeyi adlandırmak zorunda değilsiniz, sadece değerleri bilmek istediğiniz bir veya iki düğüm.) –

+0

Bu özel seq2seq grafiğinin dondurulmasının nasıl olduğu hala net değil. –

1

Sen böyle bir şey ile Modelinizdeki düğüm bütün isimleri alabilirsiniz:

node_names = [node.name for node in tf.get_default_graph.as_graph_def().node] 

Ya grafiği yeniden kazanması:

saver = tf.train.import_meta_graph(/path/to/meta/graph) 
sess = tf.Session() 
saver.resore(sess, /path/to/checkpoints) 
graph = sess.graph 
print([node.name for node in graph.as_graph_def().node]) 

yalnızca almak için bu filtre gerekebilir çıktı düğümleriniz veya yalnızca istediğiniz düğümler olabilir, ancak bu, en azından eğitim almış olduğunuz ve her düğüm için tanımlanmış name='some_name' ile yeniden hesaplayamayacağınız bir grafiğin isimlerini almanıza yardımcı olabilir.

İdeal olarak, daha sonra erişmek istediğiniz her işlem veya tensör için name parametresini tanımlamak istersiniz.

+1

Doğru, seq2seq modelinde binlerce var onlar. Ve kovalara bağlılar. –

+0

bu, grafikte her düğüm adını verir, çıktı olarak değil. – rambossa