0
A
回答
4
創建一個變量並選擇正確尺寸的隨機分佈。
w = tf.Variable(tf.random_uniform((dim1, dim2)))
對於初始化,您需要創建隨機數。該鏈接爲您提供了Tensorflow中的所有隨機操作(分佈)。 https://www.tensorflow.org/api_guides/python/constant_op#Random_Tensors
3
小非負數初始化變量:
norm = tf.random_uniform_initializer(minval=0, maxval = 1, dtype=tf.float32)
with tf.variable_scope('scope') as scope:
w = tf.get_variable('w', [inp.get_shape()[1], output_dim], initializer=norm, dtype=tf.float32)
3
有非負random numbers in TensorFlow幾個選項。在[minval, maxval)
w = tf.Variable(tf.random_uniform(shape, minval=0, maxval=max))
均勻隨機數:正如其他人已經提到的,你可以使用tf.random_uniform
。對於更一般的分佈,您可以使用tf.random_gamma
,該參數從gamma distribution中抽取樣本,參數爲形狀參數alpha
,反比例參數beta
。 alpha
必須提供,但beta=1
默認情況下(即使指紋說None
):
w = tf.Variable(tf.random_gamma(shape, alpha=alpha, beta=beta))
伽瑪分佈有支持[0, +inf)
和其它的一些特性(在某些假設的最大熵分佈,結合之前的一些事情在貝葉斯統計中)。取決於您的參數,您可以從中獲得很多不同的形狀。它與正態分佈類似,但僅適用於正數。
你也可以(雖然我不知道,我會推薦它,它感覺怪怪的)使用tf.truncated_random_normal
,它從一個正態分佈樣本指定mean
和stddev
,但樣品的加或減2外標準差下降,重採樣:
w = tf.Variable(tf.truncated_random_normal(shape, mean=mean, stddev=stddev))
其中mean
將一些正值,stddev
將最多等於mean/2
。
相關問題
- 1. 如何初始化張量流中的變量C API
- 2. 初始化張量
- 3. STM32:非初始化變量?
- 4. C++中非初始化變量的值
- 5. 如何檢查多個變量並初始化非空變量?
- 6. 初始化用的for_each列表的隨機變量
- 7. 張量流中的隨機值
- 8. 初始化數組變量
- 9. 變量初始化
- 10. 初始化變量
- 11. 變量初始化
- 12. 初始化變量
- 13. 運行導入張量流圖對未初始化的變量失敗
- 14. 如何用JavaScript初始化php變量?
- 15. 編譯時數組初始化與非常量變量的大小
- 16. 用變量的值初始化常量
- 17. 如何從變量大小的數組初始化HoH
- 18. 如何初始化協變變量?
- 19. 如何在張量流中改變三維張量的尺寸?
- 20. 函數中的變量初始化
- 21. JavaScript:初始化函數中的變量
- 22. 隨機數未初始化
- 23. 如何避免初始化已經初始化的變量?
- 24. 變量初始化的ExceptionInInitializerError
- 25. 如何在初始化後始終提供變量/常量?
- 26. 使用增量變量初始化
- 27. 如何在C++中初始化變量大小的整數數組爲0?
- 28. 非初始化數組中的隨機數C++
- 29. 在C++函數頭初始化變量
- 30. 在C99中使用靜態變量初始化靜態變量
如果任何答案對您有幫助,請將其標記爲正確,以便人們知道未來他們遇到問題時會發揮什麼作用。 – Engineero