之前一直用的是tf 1.13和1.14。最近前一段的工作告一段落,目前在考慮要不要把tensorflow升級成2.0或者是轉投torch,還是一直用1.1x版本(感覺一直用下去不現實)。

自己主要的基本需求是演算法實現,有些地方需要能夠修改low-level的api,例如修改gru cell的權重和計算方式等,之前都是集成tensorflow的基本cell來修改的。

同時的顧慮還有之前老版本代碼的維護等問題。


個人覺得tf2.0比較好用,結合了tf的底層和keras的api,外加動態圖,同時也沒有完全摒棄靜態圖,確實是能滿足各個方面的需要。


2.0 的大改說明google意識到大家都不喜歡1.x的api,再不改市場都被pytorch搶去了,情急之下把現成的Keras拿來用,至少以後就別用1.x了


覺得還是過一段時間升級到最新,如果是企業的大規模計算,可以考慮一下tensorflow enterprise


有新用新~


用了Tensorflow2.0,只能說真香。

可以參見我寫的這篇 tensorflow2.0

這種情況當然首選tf2了。tf1和tf2的很多介面都是一樣的,上手快很多。另外tf和pytorch也有很多不同,比如pytorch的方法大都需要指定輸入和輸出channels,而tf的方法都只需要指定輸出channel就好。總之學習一個有基礎的框架比學習另一個沒用過的框架要容易的多。


1.15


既然曾經是tf 1的用戶,我認為tf 2發布之後,就沒有必要轉pytorch了。

從維護老版本代碼的角度看,轉到tf 2或pytorch你都需要重寫很多東西,所以不必糾結。

從易用性的角度看,tf 2已經十分接近pytorch。

從工程落地的角度看,tf優於pytorch。

從傳承性的角度看,tf 1的很多api在tf 2中可以繼續使用,所以你的這部分知識是可以復用的。

綜上所述,建議嘗試tf 2。


推薦閱讀:
相關文章