1. 程式人生 > >TensorFlow 辨異 tf add a b 與 a b tf assign 與 tf nn bia

TensorFlow 辨異 tf add a b 與 a b tf assign 與 tf nn bia

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow

也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!

                       

1. tf.add(a, b) 與 a+b

在神經網路前向傳播的過程中,經常可見如下兩種形式的程式碼:

  • tf.add(tf.matmul(x, w), b)
  • tf.matmul(x, w) + b

簡而言之,就是 tf.add(a, b)a + b二者的區別,類似的也有,tf.assign=(賦值運算子)的差異。

在計算精度上,二者並沒有差別。運算子過載的形式a+b,會在內部轉換為,a.__add__(b),而a.__add__(b)會再一次地對映為tf.add,在 math_ops.py中相關的對映如下:

_OverrideBinaryOperatorHelper(gen_math_ops.add, "add")
   
  • 1

In tensorflow what is the difference between tf.add and operator (+)?

2. tf.nn.bias_add 與 tf.add

tf.nn.bias_add 是 tf.add 的一個特例,也即 tf.add 支援的操作比 tf.nn.bias_add 更多。二者均支援 broadcasting(廣播機制),也即兩個運算元最後一個維度保持一致。

除了支援最後一個維度保持一致的兩個運算元相加外,tf.add 還支援第二個運算元是一維的情況。

Tensorflow Python API 翻譯(nn)

           

給我老師的人工智慧教程打call!
http://blog.csdn.net/jiangjunshow

這裡寫圖片描述