TensorFlow學習筆記之疑問解答(持續更新)
阿新 • • 發佈:2019-01-05
1、tensorflow中一箇中括號和兩個中括號是什麼意思?
b = tf.constant([3,3])
c = tf.constant([[3,3]])
with tf.Session() as sess:
print(b,c)
print(sess.run(b))
print(sess.run(c))
返回結果:
Tensor("Const_7:0", shape=(2,), dtype=int32) Tensor("Const_8:0", shape=(1, 2), dtype=int32)
[3 3]
[[3 3]]
解答:
b是shape=(2, )的一維constant
c是shape=(1, 2)的二維constant
2、TensorFlow的fetch使用時,sess.run([這裡op的順序]),run裡面op的順序是否會有影響?
#Fech
input1 = tf.constant(3.0)
input2 = tf.constant(2.0)
input3 = tf.constant(5.0)
add = tf.add(input2,input3)
mu1 = tf.multiply(input1,add)
with tf.Session() as sess:
result1 = sess.run([mu1,add])
result2 = sess.run([add,mu1])
print(result1,result2)
返回結果:[21.0, 7.0] [7.0, 21.0]
解答:
返回結果只是fetch的順序不同,不影響結果。
3、TensorFlow中CNN的兩種padding方式“SAME”和“VALID”
對於“VALID”,輸出的形狀計算: new_height=new_width=⌈ (W–F+1) / S ⌉
對於“SAME”,輸出的形狀計算: new_height=new_width=⌈ W / S ⌉
其中,W為輸入的size,F為filter為size,S為步長,⌈⌉為向上取整符號。
4、Tensor 和 numpy array互轉
①numpy array 到 Tensor
numpyData = np.zeros ((1,10,10,3),dtype=np.float32)
tf.convert_to_tensor(numpyData)
②Tensor到 numpy array
eval()
tf.constant([1,2,3]).eval()
5、ord()函式是chr()函式(對於8位的ASCII字串)或unichr()函式(對於Unicode物件)的配對函式,它以一個字元(長度為1的字串)作為引數,返回對應的ASCII數值,或者Unicode數值,如果所給的Unicode字元超出了你的Python定義範圍,則會引發一個TypeError的異常。