tensorflow中的dropout


  每一个output的值都有prob的概率被保留,如果保留=input/ prob,否则变为0
  dropout相当于一个过滤层,tensorflow不仅丢弃部分input,同时将保留下的部分适量地增加以试图弥补梯度
 1 inputs = tf.reshape(tf.range(40.), (2,4,5))
 2 t = tf.layers.dropout(inputs, rate=0.8, training=True)
 3 with tf.Session() as sess:
 4     print sess.run(inputs)
 5     print sess.run(t)
 6 """
 7 [[[ 0.  1.  2.  3.  4.]
 8   [ 5.  6.  7.  8.  9.]
 9   [10. 11. 12. 13. 14.]
10   [15. 16. 17. 18. 19.]]
11  [[20. 21. 22. 23. 24.]
12   [25. 26. 27. 28. 29.]
13   [30. 31. 32. 33. 34.]
14   [35. 36. 37. 38. 39.]]]
15 [[[  0.   0.  10.  15.   0.]
16   [ 25.   0.  35.   0.  45.]
17   [ 50.   0.  60.  65.   0.]
18   [  0.   0.   0.  90.   0.]]
19  [[  0. 105.   0.   0. 120.]
20   [125.   0.   0.   0.   0.]
21   [  0.   0.   0.   0.   0.]
22   [  0. 180.   0.   0.   0.]]]
23 """

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM