2019年11月,tensorflow已經發布2.0正式版本,tf 1.1x版本用戶應該如何選擇?
之前一直用的是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。
推薦閱讀: