如何對比 PyTorch 和 Gluon 的煉丹體驗?

時間 2021-05-07 00:19:44

1樓:kobena

老手無差,新手的話感覺gluon更容易上手吧~

最近pytorch很火啊,可參考更多~

最近無網安裝mxnet到崩潰,現在在用pytorch……

2樓:林孟瀟

兩個框架都玩過一點,不過由於很早就接觸了 MXNet 所以對 gluon 更有好感,最近自己玩的實驗性小專案都是用 gluon 寫的。這裡說幾個 gluon/MXNet 的優點吧:

對 Object detection 的各種奇怪操作支援得很好,比如 ROIPooling,由於MSRA Jifeng Dai 組用 MXNet 公開 Deformable Convolution,所以 gluon 也輕鬆支援。

對部署相對友好,這個請看 HybridBlock。

中文社群發達,這特別要感謝 @李沐 博士的辛勤工作。

至於坑的話……就是文件檢索起來實在難受,但是也不是不能用。整體來說 gluon 坑比較少,我自己實現了乙個 Faster R-CNN 和乙個 LSTM-based Dependency Parser (請見Mengxiao Lin's Homepage),雖然寫得很糙效能並不好,但是至少是可以正常用的。這兩種模型應該算是CV和NLP兩個領域的典型模型了,至少對於這兩個領域的同學們來說大部分工作都是可以輕鬆開展的。

3樓:

思想保守跟不上時代的人表示還是覺得caffe好用啊

需要什麼功能往上加就行了,至少框架做了啥是完全清楚的。其他的框架寫一堆python都不知道後台幹了啥,心裡沒底。。

4樓:羅若天是真的菜

看到了這個

zh.mxnet.io/blog/learn-但是這裡面說的東西也不是最新的了,master上,pytorch已經不需要variable了,並且用了torch.

no_gard來做inference(而gluon用record來做訓練),然後scalar得用.item()而不是.data[0]了,類似於gluon的asscalar

(master上這些個feature其實有一會了已經)btw,大家不要學習這個tutorial裡面的寫法哦:

total_loss += loss.mean()這樣是會爆記憶體的,(∩_∩)

5樓:小小將

看起來還是Pytorch更流行一些,畢竟好多模型都可以找到Pytorch版本的實現。

也不要忽略TensorFlow,雖然是靜態圖結構,但現有的模型基本都有開源實現。

作為一名合格的煉丹師,怎麼可能只有乙個煉丹爐!

6樓:

感覺pytorch、chainer還有gluon此類程式設計正規化只是一種短暫的潮流。所謂動態圖也只是對問題的理解沒有到一定的Level,我們在做的一些非影象、非NLP的深度學習專案——較大規模的點雲處理,嘗試了gluon的動態圖和靜態圖兩種寫法,動態圖的版本因為記憶體占用大小不斷動盪不僅沾滿了所有顯示卡、而且速度還慢,靜態圖乙個卡就能跑。如果你聽說過tensorflow-fold,那你一定要好好研究下,這才是真正動態圖的未來——以靜制動。

總的來說,如果你做影象,那麼你用gluon或者pytorch、keras什麼的都可以;如果你做NLP之類的,用pytorch應該不錯;但是當你的研究不是前二者、或者在深度學習的更高的層次上,我建議用tensorflow

7樓:劉浩鵬

gluon的model zoo比pytorch要弱,dpn,nananet,inception v4,xception,resnext貌似沒有在gluon的model zoo裡。

tensorflow和pytorch是否可以在同乙個環境下使用?

阿爾法 浪 估計題主先使用的TensorFlow在這塊卡上,並沒有設定TensorFlow gpu相關配置,預設TensorFlow會將整塊gpu卡占滿,因此在跑pytorch的時候,此卡就不可用了。 陳桓 不建立虛擬環境會有一些麻煩,你可以建立乙個conda環境,在這乙個環境裡面同時裝兩套,然後將...

新手如何入門pytorch?

君玉工作室 入門pytorch分六個步驟 1.配置好開發環境。這邊直接參考官網的教程就可。2.理解張量的概念,以及相應的運算,在pytorch中實現。3.用pytorch搭建感知機 神經網路 卷積神經網路以及LSTM等常見的簡單的網路,進行前向傳播推理,能夠執行即可,其中理解全連線,池化,卷積模組,...

pytorch如何設定batch size和num workers,避免超視訊記憶體, 並提高實驗速度?

黃掛 batch size一般是往大了調,調到視訊記憶體不能再放下報cuda oom的報錯為止。然後num worker是dataset的程序數,要理解pytorch的訓練過程是乙個生產消費模型,一端是cpu處理資料,放到乙個queue裡,一端是gpu計算資料。一般而言,overhead都應該是gp...