Ipython'da tensorflow as tf
ve numpy as np
öğelerini içe aktardım ve bir TensorFlow InteractiveSession
oluşturdu. Koşuyorum ya numpy girişi olan bazı normal dağılım başlatılıyor am zaman , her şey iyi çalışır:TensorFlow: rasgele bir sabit oluşturma
some_test = tf.constant(np.random.normal(loc=0.0, scale=1.0, size=(2, 2)))
session.run(some_test)
İade:
array([[-0.04152317, 0.19786302],
[-0.68232622, -0.23439092]])
beklendiği gibi. Ben Tensorflow normal dağılım işlevini kullandığınızda
... ama:(...)
TypeError: List of Tensors when single Tensor expected
Burada ne eksik:
some_test = tf.constant(tf.random_normal([2, 2], mean=0.0, stddev=1.0, dtype=tf.float32))
session.run(some_test)
... o söyleyerek Tip hata yükseltir?
çıktısı:
sess.run(tf.random_normal([2, 2], mean=0.0, stddev=1.0, dtype=tf.float32))
tek başına np.random.normal
oluşturur aynısını geri - bir normal dağılım alınan değerleri ile şekil (2, 2)
arasında> bir matris.
Açıklama için teşekkürler! Bu yüzden "tf.Variable" kullanmam gerektiğinde GPU hızlandırması "ras" tensorflow rasgele "sabit" almak için ?! – daniel451
Evet, bu mantıklı değil mi? :) Sorun şu ki, TF'de, "değişken" ve "başlatılabilir" kavramları aynı türden bir araya getirilmiştir - zaman zaman başlatmanın daha iyi yollarını tartışmıştık (örneğin C- 'deki bazı statik başlatmalar eşdeğerdir. diller gibi), ama henüz bir tasarıma yerleşmediniz.(Böyle bir şeyin sabit katlama, vb. Gibi optimizasyonlar için nasıl yararlı olacağını hayal edebilirsiniz.) – mrry
Yanıt için teşekkürler @mrry. Aynı şeyi yapmaya çalışıyorum ama bundan sonra "some_test" değerini sabit tutmak istemiyorum, seçenek 2 ile aynı şeyi yapardım ama "sess.run (some_test.initializer)" ifadesini içermez miydim? – bnorm