Tensorflow中 tf.cast()的用法

tf.cast()

cast(
    x,
    dtype,
    name=None
)

將x的數據格式轉化成dtype數據類型.例如,原來x的數據格式是bool,
那麼將其轉化成float以後,就能夠將其轉化成0和1的序列。反之也可以

%%python2
import sys
import tensorflow as tf
print(sys.version)

a = tf.Variable([1.0,1.3,2.1,3.41,4.51])
b = tf.cast(a>3,dtype=tf.bool)
c = tf.cast(a>3,dtype=tf.int8)
e = tf.cast(a<2,dtype=tf.float32)
d = tf.cast(a,dtype=tf.int8)

sess = tf.Session()
sess.run(tf.initialize_all_variables())
print(sess.run(b))
print(sess.run(c))
print(sess.run(e))
print(sess.run(d))
[False False False  True  True]
[0 0 0 1 1]
[1. 1. 0. 0. 0.]
[1 1 2 3 4]

結論:

  • tf.cast()中的tensor爲全部內容時,完成的是所有tensor數據格式的轉換
  • tf.cast()中的tensor爲條件內容時,完成的是掩膜形式的數據格式轉換
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章