0
當添加新的運算,文檔(https://www.tensorflow.org/versions/r0.10/how_tos/adding_an_op/index.html)表示:如果我沒有爲tensorflow中的op提供梯度,梯度下降如何工作?
任選地,編寫一個函數來計算用於運算梯度。
由於這是可選的,如果我不寫它,梯度下降如何計算梯度?它是否使用數值方法?如果是這樣,什麼?這會更慢嗎?
當添加新的運算,文檔(https://www.tensorflow.org/versions/r0.10/how_tos/adding_an_op/index.html)表示:如果我沒有爲tensorflow中的op提供梯度,梯度下降如何工作?
任選地,編寫一個函數來計算用於運算梯度。
由於這是可選的,如果我不寫它,梯度下降如何計算梯度?它是否使用數值方法?如果是這樣,什麼?這會更慢嗎?
取決於操作。如果操作由其他原語組成,則梯度下降能夠產生自動微分功能。
如果您的操作是新基元,那麼您必須提供梯度函數或梯度下降不起作用。
Tensorflow中的梯度實現是精確的函數。數值方法僅用於測試梯度函數實現。