深度學習框架 如tensorflow pytorch 如何驗證複雜tensor的運算是否按照期望工作?

時間 2021-06-03 10:49:48

1樓:帶你飛

首先需要明確各個緯度的意義,然後在進行運算的時候,不妨把batch設定為1,多看幾遍運算結果,理解各個緯度的作用關係,加上一些時間積累,就能夠做到準確無誤的使用各種矩陣操作

2樓:eddy

你可以設計有規律的輸入,比如從1到9(假設輸入是3*3矩陣),然後看輸出是也存在對應規律,還有就是可以用tensorboard視覺化,直方圖統計等也能發現一些問題

3樓:臉雲

一般形狀對了,框架本身提供的運算不會出問題,碰到 bug 是小概率事件,但是確實出現過。

動態圖(TF 1.5+eager execution/TF2.0/PyTorch)的話,就像程式除錯一樣,斷點、單步到相應位置,檢查變數值就好

TF靜態圖的話,有 tf.print/tf.assert/tf.

py_func/tf_debug 可以在執行期檢查,當然也可以 summary - tensorboard 視覺化的檢查

初學的時候,或者懷疑有 bug 時,可以利用全 0 /全 1 矩陣人為控制運算結果,有異常就會很顯眼。

4樓:墨雨蕭軒

好問題,我也想知道有啥好的辦法沒。確實很難驗證,所以只能靠寫的時候盡可能的小心了。

一般如果你理解各個操作的含義並且沒有用錯API的話,那基本上靠tensor的形狀就能大體上判斷是否照著期望在工作。

5樓:

這個問題是做框架的人要思考的,如果你懷疑某個運算有問題,你可以設計實驗去測試你的想法。確定有問題的話去 Github 提交 issue 就好。

這次dmlc發布的深度學習框架mxnet比之caffe有什麼優缺點?

王潛 這個問題回答的人好少啊 mxnet主要是繼承自Minerva和cxxnet,cxxnet的特性 李沐 在樓上已經說了,既然Minerva的開發者們不在知乎出現,作為當初的合作者我就冒昧說幾句我知道的吧 當初做Minerva的目的是提供乙個可以快速實現原型演算法的系統。從前開發演算法一般首先是在...

深度學習框架有哪些?各有什麼特點?

去太平洋游泳 說到深度學習框架,國內外框架有幾十種。最流行的還是那幾個,caffe,tensorflow,pytorch。caffe是面向c 的 2016年底谷歌開源了深度學習框架tensorflow,在社群火熱程度超過了caffe.因為上手快,python比c 好學。後來出來了pytorch,因為...

如何評價Python的深度學習框架DeepPy?

智星雲服務 專案 Deepy 簡介 它使用numpy進行計算。API類似於PyTorch的API。在示例目錄中有乙個線性分類器,其準確率超過96 from deepy.module import Linear,Sequentialfrom deepy.autograd.activations imp...