浙大博士導師深度整理:Tensorflow 和 Pytorch 的筆記(包含經典專案實戰)

2022-01-13 10:00:10

作為一名 AI 工程師,掌握一門深度學習框架是必備的生存技能之一。

自 TensorFlow 從 Google 中脫穎而出以來,它在研究和商業領域成為最受歡迎的開源深度學習框架,緊接著 從 Facebook 誕生的 PyTorch 由於社群推動的易用性改進和越來越廣泛的用例部署,而迅速趕上 TensorFlow。

兩個框架在當年一度備受爭議,TensorFlow 和 PyTorch 誰更好?

從去年校招開始到現在負責部門的面試,從我手上流走的簡歷多多少少也有上百封了。

面試了很多候選人,當問他們常用的深度學習框架時,發現他們清一色的選擇了:PyTorch。

從各個方面可以看出,經過這些年的發展,PyTorch 在學術圈的「壟斷」地位基本已經站穩

誠然,比起 TensorFlow,大多數研究人員更偏愛 PyTorch 的 API,PyTorch 設計更科學,而 TensorFlow 自推出 2.0 版本後,與 TF 1.x 的 API 差異實在不小,導致 doc 的閱讀成本和版本適配成本都相當高。

如果是初學者,無腦 Pytorch 就對了。社群資源多、開原始碼多、上手也很簡單,各大廠商對 Pytorch 的支援也多 (TensorRT、ONNX)。

其實框架的作用就是我們無需造輪子可以直接使用,並且節省工作量,對於 Pytorch 來說對研究友好、對訓練友好、對白嫖大佬的開原始碼也友好,對模型部署也友好,可以節省大把時間去做其他有意義的事情,沒有理由不使用 Pytorch。

如果是工作了,就看公司在用什麼吧,因為公司是面向需求的

在業界,無論演演算法效能有多好,總歸還是要上線的,選擇框架的時候便會考慮以下這些問題,是否方便部署到線上,支援多語言,並且有較好的系統穩定性以及有非常多線上應用範例。

像業界大多數支撐搜廣推場景的模型,還是用 Tensorflow,TensorFlow 適合大規模部署,特別是需要跨平臺和嵌入式部署時。
網上解讀 Tensorflow、PyTorch 文章非常多但知識點零散,學習起來抓不住重點。

最近一段時間,我整理一套深度學習框架必備的學習資料,這套資料內容非常詳盡全面,課程通過講解和實戰操作,帶你從零開始訓練網路,做到獨立搭建和設計折積神經網路(包括主流分類和檢測網路),並進行神經網路的訓練和推理(涉及 PyTorch、Tensorflow、Caffe、Mxnet 等多個主流框架),通過實戰讓你掌握各種深度學習開源框架。

圖片
資料內容過多,不一一展開,僅擷取框架學習部分目錄大家感受下。

深度學習與神經網路

  • 深度學習簡介

  • 基本的深度學習架構

  • 神經元

  • 啟用函數詳解(sigmoid、tanh、relu 等)

  • 感性認識隱藏層

  • 如何定義網路層

  • 損失函數

推理和訓練

  • 神經網路的推理和訓練

  • bp 演演算法詳解

  • 歸一化

  • Batch Normalization 詳解

  • 解決過擬合

  • dropout

  • softmax

  • 手推神經網路的訓練過程

從零開始訓練神經網路

  • 使用 python 從零開始實現神經網路訓練

  • 構建神經網路的經驗總結

深度學習開源框架

  • pytorch

  • tensorflow

  • caffe

  • mxnet

  • keras

  • 優化器詳解 (GD,SGD,RMSprop 等

由於工作需要,這份教學我本人也在學習中,雖然已經從事這個行業多年,再看這份教學的時候,仍然能查漏補缺,收穫滿滿,我相信不管是 AI 入門,還是已經具備了一定的工作經驗,這份學習資料,都值得你去認真學習研究。

資料獲取

該資料已打包,梳理不易,獲取前麻煩點贊、收藏、關注。獲取方法有兩種:

  • 方式一、傳送如下圖片至微信,長按識別,回覆:20220112
  • 方式二、微信搜尋公眾號:機器學習社群,後臺回覆:20220112
    在這裡插入圖片描述