精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

對比復現34個預訓練模型,PyTorch和Keras你選誰?

開發 開發工具 深度學習
初學者該用什么樣的 DL 架構?當然是越簡單越好、訓練速度越快越好、測試準確率越高越好!那么我們到底該選擇 PyTorch 還是 Keras 呢?

Keras 和 PyTorch 當然是對初學者最友好的深度學習框架,它們用起來就像描述架構的簡單語言一樣,告訴框架哪一層該用什么。這樣減少了很多抽象工作,例如設計靜態計算圖、分別定義各張量的維度與內容等等。

但是,到底哪一個框架更好一點呢?當然不同的開發者和研究者會有不同的愛好,也會有不同的看法。本文主要從抽象程度和性能兩個方面對比 PyTorch 與 Keras,并介紹了一個新的基準,它復現并對比了兩個框架的所有預訓練模型。

在 Keras 和 PyTorch 基準項目中,MIT 在讀博士 Curtis G. Northcutt 復現了 34 個預訓練模型。該基準結合了 Keras 和 PyTorch,并將它們統一到一個框架內,這樣我們就能知道這兩個框架的對比結果,知道不同模型用什么框架好。例如,項目作者表示 ResNet 架構的模型使用 PyTorch 要比 Keras 效果好,Inception 架構的模型使用 Keras 又要比 PyTorch 好。

Keras 和 PyTorch 基準項目:https://github.com/cgnorthcutt/benchmarking-keras-pytorch

一、兩大框架的性能與易用性

作為 TensorFlow 的高度封裝,Keras 的抽象層次非常高,很多 API 細節都隱藏了起來。雖然 PyTorch 比 TensorFlow 的靜態計算圖更容易使用,但總體上 Keras 隱藏的細節更多一些。而對于性能,其實各框架都會經過大量的優化,它們的差別并不是很明顯,也不會作為主要的選擇標準。

1. 易用性

Keras 是一個更高級別的框架,將常用的深度學習層和運算封裝進便捷的構造塊,并像積木一樣搭建復雜模型,開發者和研究者不需要考慮深度學習的復雜度。

PyTorch 提供一個相對較低級別的實驗環境,使用戶可以更加自由地編寫自定義層、查看數值優化任務等等。例如在 PyTorch 1.0 中,編譯工具 torch.jit 就包含一種名為 Torch Script 的語言,它是 Python 的子語言,開發者使用它能進一步對模型進行優化。

我們可以通過定義簡單的卷積網絡看看兩者的易用性:

  1. model = Sequential() 
  2. model.add(Conv2D(32, (3, 3), activation='relu'input_shape=(32, 32, 3))) 
  3. model.add(MaxPool2D()) 
  4. model.add(Conv2D(16, (3, 3), activation='relu')) 
  5. model.add(MaxPool2D()) 
  6. model.add(Flatten()) 
  7. model.add(Dense(10, activation='softmax')) 

如上所示為 Keras 的定義方式,很多時候運算都會作為參數嵌入到 API 中,因此代碼會顯得非常簡潔。如下所示為 PyTorch 的定義方式,它一般都是通過類和實例的方式定義,且具體運算的很多維度參數都需要定義。

  1. class Net(nn.Module): 
  2.     def __init__(self): 
  3.         super(Net, self).__init__() 
  4.  
  5.         self.conv1 = nn.Conv2d(3, 32, 3) 
  6.         self.conv2 = nn.Conv2d(32, 16, 3) 
  7.         self.fc1 = nn.Linear(16 * 6 * 6, 10)  
  8.         self.pool = nn.MaxPool2d(2, 2) 
  9.  
  10.     def forward(self, x): 
  11.         x = self.pool(F.relu(self.conv1(x))) 
  12.         x = self.pool(F.relu(self.conv2(x))) 
  13.         xx = x.view(-1, 16 * 6 * 6) 
  14.         x = F.log_softmax(self.fc1(x), dim=-1) 
  15.  
  16.         return x 
  17.  
  18. model = Net() 

雖然 Keras 感覺比 PyTorch 更易于使用,但兩者的差別不大,都期望模型的編寫能更便捷。

2. 性能

目前有很多對比各框架性能的實驗都表明 PyTorch 的訓練速度相比 Keras 會快一些。如下兩張圖表展示了不同框架在不同硬件和模型類型的表現:

下面兩張同樣展示了不同模型在 PyTorch 和 Keras 框架下的性能,這兩份 18 年的測試都表明 PyTorch 的速度要比 Keras 快那么一點點。

這兩份對比細節可查閱:

  • https://github.com/ilkarman/DeepLearningFrameworks/
  • https://wrosinski.github.io/deep-learning-frameworks/

二、Keras 和 PyTorch Benchmark

現在如果我們從預訓練模型的角度看,那么相同的模型在不同的框架上,驗證集準確度又是什么樣的?在這個項目中,作者用兩個框架一共復現了 34 個預訓練模型,并給出了所有預訓練模型的驗證準確率。所以該項目不僅能作為對比依據,同時還能作為學習資源,又有什么比直接學習經典模型代碼更好的方法呢?

1. 預訓練模型不是已經可以復現了嗎?

在 PyTorch 中是這樣的。然而有些 Keras 用戶卻覺得復現非常難,他們遇見的問題可以分為三類:

  • 不能復現 Keras 已發布的基準結果,即使完全復制示例代碼也沒有用。實際上,他們報告的準確率(截止到 2019 年 2 月)通常略高于實際準確率。
  • 一些預訓練的 Keras 模型在部署到某個服務器或與其他 Keras 模型一起依次運行時會產生不一致或較低的準確率。
  • 使用批歸一化(BN)的 Keras 模型可能并不可靠。對于一些模型,前向傳播評估仍然會導致推理階段中的權重改變。

這些問題都是現實存在的,原 GitHub 項目為每個問題都提供了鏈接。項目作者的目標之一是通過為 Keras 預訓練模型創建可復現基準,從而幫助解決上述的一些問題。解決方法可分為以下三個方面,在 Keras 中要做到:推理期間避免分批(batches)。

每次運行一個樣本,這樣做非常慢,但可以為每個模型得出一個可復現的輸出。

只在本地函數或 with 語句中運行模型,以確保在加載下一個模型時,前一個模型的任何東西都不會保存在內存中。

2. 預訓練模型復現結果

以下是 Keras 和 PyTorch 的「實際」驗證集準確度表(已經在 macOS 10.11.6、Linux Debian 9 和 Ubuntu 18.04 上得到驗證)。

3. 復現方法

首先需要下載 ImageNet 2012 驗證集,該數據集包含 50000 張圖片。在 ILSVRC2012_img_val.tar 下載完成后,運行以下命令行預處理/提取驗證集:

  1. # Credit to Soumith: https://github.com/soumith/imagenet-multiGPU.torch 
  2. $ cd ../ && mkdir val && mv ILSVRC2012_img_val.tar val/ && cd val && tar -xvf ILSVRC2012_img_val.tar 
  3. $ wget -qO- https://raw.githubusercontent.com/soumith/imagenetloader.torch/master/valprep.sh | bash 

ImageNet 驗證集中每個示例的 top 5 預測已經進行了預計,運行以下命令行將直接使用這些預計算結果,并在幾秒內復現 Keras 和 PyTorch 基準。

  1. $ git clone https://github.com:cgnorthcutt/imagenet-benchmarking.git 
  2. $ cd benchmarking-keras-pytorch 
  3. $ python imagenet_benchmarking.py /path/to/imagenet_val_data 

不使用預計算數據也可以復現每個 Keras 和 PyTorch 的推理輸出。Keras 的推理要花很長時間(5-10 小時),因為每次只計算一個示例的前向傳播,還要避免向量計算。如果要可靠地復現同樣的準確率,這是目前發現的***的方法。PyTorch 的推理非常快(一個小時都不到)。復現代碼如下:

  1. $ git clone https://github.com:cgnorthcutt/imagenet-benchmarking.git 
  2. $ cd benchmarking-keras-pytorch 
  3. $ # Compute outputs of PyTorch models (1 hour) 
  4. $ ./imagenet_pytorch_get_predictions.py /path/to/imagenet_val_data 
  5. $ # Compute outputs of Keras models (5-10 hours) 
  6. $ ./imagenet_keras_get_predictions.py /path/to/imagenet_val_data 
  7. $ # View benchmark results 
  8. $ ./imagenet_benchmarking.py /path/to/imagenet_val_data 

你可以控制 GPU 的使用、批大小、輸出存儲目錄等。運行時加上-h flag,可以查看命令行參數選項。

看完文章之后,你更中意誰呢?

原文鏈接:http://l7.curtisnorthcutt.com/towards-reproducibility-benchmarking-keras-pytorch

【本文是51CTO專欄機構“機器之心”的原創譯文,微信公眾號“機器之心( id: almosthuman2014)”】 

戳這里,看該作者更多好文

責任編輯:趙寧寧 來源: 51CTO專欄
相關推薦

2021-05-24 15:28:55

機器學習人工智能計算機

2023-12-29 14:13:41

PyTorch模型開發

2023-03-28 16:01:01

PytorchSimCLR算法

2021-03-23 15:21:00

人工智能機器學習技術

2020-11-20 10:40:20

PyTorch神經網絡代碼

2024-09-26 16:51:23

2021-12-19 22:51:24

PyTorchTensorFlow框架

2021-01-27 10:46:07

Pytorch深度學習模型訓練

2020-10-15 11:22:34

PyTorchTensorFlow機器學習

2021-09-26 10:47:12

預訓練模型GPT

2025-06-13 09:29:51

2012-07-24 09:19:05

打印機

2023-05-19 07:25:34

2023-02-01 09:46:29

2020-10-15 13:18:08

EdgeChrome瀏覽器

2020-10-27 09:37:43

PyTorchTensorFlow機器學習

2024-11-04 00:24:56

2017-06-13 22:56:27

動態圖PyTorchKeras

2025-08-24 09:24:07

2023-05-06 12:47:41

點贊
收藏

51CTO技術棧公眾號

日韩美女在线看| 亚洲美女www午夜| 国产精品videossex国产高清 | 亚洲精品不卡在线| 亚洲人成无码www久久久| 久草中文在线| 91小视频免费看| 国产原创欧美精品| 日韩a级在线观看| 五月激情婷婷网| 免费在线观看一区二区三区| 欧美激情精品久久久久久变态| 捆绑裸体绳奴bdsm亚洲| 欧美成人aaa| 精品久久中文字幕久久av| 中文一区一区三区免费| 青青九九免费视频在线| 国产美女精品一区二区三区| 欧美一级淫片丝袜脚交| 久久爱一区二区| 精品在线播放| 精品国产精品网麻豆系列| 不要播放器的av网站| av午夜在线观看| 日韩美女久久久| 色女人综合av| 男人天堂网在线| www.亚洲色图.com| 91精品天堂| 中文字幕在线观看1| 国产精品一页| 97国产成人精品视频| 一区视频免费观看| 亚洲成人三区| xxxxx成人.com| 永久免费av无码网站性色av| 日韩有码一区| 亚洲电影在线观看| 欧美老女人bb| 日韩视频一二区| 欧美精品欧美精品系列| 亚洲高清免费在线观看| 日韩一区二区三区免费| 色婷婷精品大在线视频| 5月婷婷6月丁香| 黄色在线观看www| 亚洲成人自拍一区| 成人一区二区免费视频| www.综合网.com| 亚洲一区中文日韩| 日韩在线视频在线| 丁香高清在线观看完整电影视频| 亚洲精品日韩综合观看成人91| 影音先锋亚洲视频| 国产在线观看a| 亚洲色图视频网站| 最新av在线免费观看| 黄色av免费在线| 亚洲精品久久久蜜桃| 久久www视频| 免费电影网站在线视频观看福利| 亚洲一区二区在线免费观看视频| 欧美人与动牲交xxxxbbbb| 亚洲图区一区| 黄色精品在线看| 不卡影院一区二区| 国产精品久久久久久妇女| 欧美日韩的一区二区| 91精品视频国产| 亚洲精品v亚洲精品v日韩精品| 欧美大片拔萝卜| 波多野结衣有码| 国产精品欧美日韩一区| 中文字幕日韩在线视频| 亚洲一二三四五六区| 午夜激情一区| 2025国产精品视频| 在线观看一二三区| 国产91丝袜在线观看| 精品视频免费观看| eeuss影院www在线观看| 日韩毛片视频在线看| a级片一区二区| 亚洲精品mv| 欧美日本视频在线| 91超薄肉色丝袜交足高跟凉鞋| 首页亚洲中字| 久久久黄色av| 国产精品999在线观看| 日韩福利电影在线| av资源一区二区| 精品av中文字幕在线毛片| 成人欧美一区二区三区小说 | 久久亚洲图片| 国产欧美日韩丝袜精品一区| 蜜臀久久精品久久久久| 日本一区二区综合亚洲| 国产午夜精品视频一区二区三区| 少妇在线看www| 欧美美女bb生活片| 自拍视频一区二区| 国产精品99视频| 欧美综合第一页| 精品久久久久成人码免费动漫| 91亚洲永久精品| 小说区视频区图片区| 绿色成人影院| 欧美一级二级在线观看| аⅴ天堂中文在线网| 日韩视频在线一区二区三区| 国产色视频一区| 美女毛片在线看| 亚洲国产日日夜夜| 最新av免费在线观看| 日韩系列在线| 久久久久久高潮国产精品视| 中文字幕一级片| 91麻豆免费观看| 亚洲天堂第一区| 国产69精品久久| 亚洲欧美在线免费| 国产无遮挡又黄又爽在线观看| 美女mm1313爽爽久久久蜜臀| 麻豆久久久av免费| av今日在线| 欧美tk丨vk视频| 91麻豆免费视频网站| 免费在线视频一区| 特级西西444www大精品视频| 二区三区不卡| 亚洲老头同性xxxxx| 豆国产97在线 | 亚洲| 国产一区二区三区在线观看免费视频| 天堂√在线观看一区二区 | 成人福利视频网| 二区在线视频| 欧美性三三影院| 国产熟女一区二区| 久久久久欧美精品| 欧美日韩在线高清| 深夜成人福利| 亚洲一区二区久久| 国产三级理论片| 国产清纯美女被跳蛋高潮一区二区久久w | 91精品中文字幕一区二区三区| 一区二区三区伦理片| 亚欧成人精品| 日本视频一区二区不卡| 日本在线中文字幕一区二区三区| 亚洲欧洲黄色网| 日韩一级片中文字幕| 日本一二三四高清不卡| 国产免费999| 91欧美大片| 91免费看片网站| 亚洲七七久久综合桃花剧情介绍| 日韩视频在线观看一区二区| 欧美性猛交xxxxx少妇| 国产成人精品免费| 超碰成人免费在线| 亚洲理论电影片| 国产精品久久综合av爱欲tv| av网站在线免费播放| 91精品国产高清一区二区三区蜜臀 | 亚洲热在线视频| 欧美精品二区| 麻豆成人小视频| 欧洲亚洲精品久久久久| 久久不射电影网| 成人毛片在线免费观看| 欧美日韩国产专区| 五月天婷婷丁香网| 国产激情91久久精品导航| 免费网站在线观看视频| 日韩精品丝袜美腿| 国产精品久久久久久久久久 | 免费观看成年人视频| 欧美视频第一页| 一级片黄色录像| 国产98色在线|日韩| 免费欧美一级视频| 久久国产亚洲| 国产精品青青草| 日韩免费小视频| 啊v视频在线一区二区三区 | 99精品视频在线观看免费| 黄色片视频在线播放| 羞羞色午夜精品一区二区三区| 国产传媒欧美日韩| 亚洲伦理影院| 欧美人交a欧美精品| 国产精品久久久久一区二区国产 | 香蕉国产在线视频| 欧美在线你懂的| 国产一级在线观看视频| 久久久久成人黄色影片| 亚洲911精品成人18网站| 亚洲中字在线| 青少年xxxxx性开放hg| 日韩欧美美女在线观看| 91精品视频播放| 日韩电影免费观看高清完整版| 久久国产精品网站| 风间由美一区| 亚洲精品99久久久久| 国产又黄又大又粗的视频| 午夜a成v人精品| 天天操天天操天天操天天操天天操| av中文字幕不卡| 丰满人妻一区二区三区53视频| 久热精品在线| 国产精品久久..4399| 久久精品影视| 亚洲bbw性色大片| 天堂在线精品| 国产91亚洲精品一区二区三区| 免费一级欧美在线观看视频| 欧美整片在线观看| 国产偷倩在线播放| 欧美日本国产在线| 免费a级毛片在线播放| 国产一区二区精品丝袜| 亚洲三级黄色片| 亚洲第一级黄色片| 亚洲va欧美va| 日韩免费观看高清完整版| ,一级淫片a看免费| 欧美视频一区在线观看| 9i看片成人免费看片| 亚瑟在线精品视频| 精品在线视频观看| 亚洲一区影音先锋| 国产亚洲第一页| 亚洲成人动漫在线观看| 久久精品www人人爽人人| 亚洲免费av在线| 五月天婷婷色综合| 亚洲人成在线播放网站岛国 | 国产网站在线播放| 亚洲人a成www在线影院| 巨骚激情综合| 亚洲天堂久久av| 国产一级片在线| 曰本色欧美视频在线| av色图一区| 日韩在线免费高清视频| 自拍视频在线| 久久中文久久字幕| 在线三级电影| 欧美福利在线观看| a级片免费在线观看| 2019中文字幕在线观看| 在线观看涩涩| 国产精品成人品| 国产美女久久| 91日本视频在线| 日韩一级淫片| 国产激情美女久久久久久吹潮| 国产一区二区三区亚洲| 麻豆成人小视频| 三区四区不卡| 黄色一级片国产| 中文亚洲欧美| 91国产精品视频在线观看| 国模无码大尺度一区二区三区| 超级砰砰砰97免费观看最新一期| 国产成人丝袜美腿| 国产夫妻性爱视频| 中文字幕一区二区三区乱码在线| 天天鲁一鲁摸一摸爽一爽| 亚洲一区二区三区在线播放| 国产精品自拍99| 欧美日韩黄视频| 亚洲精品久久久久avwww潮水| 亚洲精品久久7777777| 好男人免费精品视频| www日韩欧美| а√在线天堂官网| 国产精品美乳一区二区免费| 精品国产一级| 久久亚洲综合网| 欧美激情理论| 欧美日韩在线中文| 激情成人综合网| 国产乱了高清露脸对白| 国产精品污www在线观看| 免看一级a毛片一片成人不卡| 欧美午夜视频一区二区| 夜夜嗨aⅴ一区二区三区| 精品久久五月天| av中文资源在线| 韩国福利视频一区| 伊人久久精品| 蜜桃视频成人| 国产一区二区三区自拍 | 国产成人精品免费网站| 熟女俱乐部一区二区视频在线| 亚洲免费av高清| 亚洲中文字幕无码爆乳av| 日韩视频一区在线观看| 国产小视频在线观看| 欧美精品videos| 欧美黄页免费| 欧美日韩综合久久| 国产一区日韩一区| 国产精彩免费视频| www.色综合.com| 日韩欧美中文字幕视频| 在线观看91精品国产入口| 性猛交xxxx| 欧美激情一级二级| 日韩色性视频| 日韩电影免费观看在| 国产欧美69| 精品少妇人妻av一区二区三区| 亚洲欧美中日韩| 中文字幕在线视频第一页| 亚洲欧美国产制服动漫| 波多野结衣在线播放| 亚洲一区亚洲二区| 日韩视频在线观看| 一级黄色香蕉视频| 久久亚洲二区三区| 日韩av大片在线观看| 日韩欧美色电影| 影音先锋中文在线视频| 92福利视频午夜1000合集在线观看| 日本一二区不卡| 成人精品小视频| www一区二区| 日本黄色片视频| 精品国产伦理网| 国产盗摄一区二区| 国产伦精品一区二区三区四区免费 | 亚洲日本韩国在线| 欧美精品一区二| 国产精品xx| 久久99久久精品国产| 黄色欧美日韩| 在线播放第一页| 亚洲午夜久久久| 国产综合在线播放| 午夜精品福利在线观看| 国产精品17p| 免费国产a级片| 久久综合久久鬼色中文字| 日韩 欧美 中文| 亚洲天堂av在线免费| 日韩高清不卡| 一本色道久久综合亚洲精品婷婷 | 欧美日韩黄色影视| 免费高清在线观看| 99久久精品免费看国产四区| 国产精品地址| 日韩免费高清一区二区| 日韩欧美999| av在线天堂播放| 国产美女直播视频一区| 婷婷六月综合| 丰满饥渴老女人hd| 亚洲第一激情av| 免费在线黄色网址| 国产精品视频自拍| 你懂的国产精品| 在线观看国产免费视频| 色诱视频网站一区| 免费a级人成a大片在线观看| 97免费资源站| 香蕉久久夜色精品| 五月天婷婷丁香网| 欧美不卡在线视频| 亚洲性色av| 波多野结衣激情| 91在线视频免费观看| 做爰视频毛片视频| 久久影院资源网| 日韩美女毛片| 九一精品久久久| 福利微拍一区二区| 日本在线观看免费| 国产视频精品网| 免费视频一区二区| 久久免费视频播放| 国产亚洲精品一区二555| 日韩成人在线观看视频| www黄色在线| 一区二区三区欧美| 爱久久·www| 国产精品一区二区免费看| 奇米精品一区二区三区在线观看 | 丰满的护士2在线观看高清| 欧美不卡在线一区二区三区| 国内精品视频666| av黄色在线播放| 成人444kkkk在线观看| 国产成人久久| 午夜视频在线观看国产| 51久久夜色精品国产麻豆| 欧美专区福利免费| 国产乱子伦精品无码专区|