精品欧美一区二区三区在线观看 _久久久久国色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技術棧公眾號

欧美午夜精品久久久久久超碰| 久久天堂av综合合色蜜桃网| 久久99国产综合精品女同| 亚洲精品鲁一鲁一区二区三区| av中文字幕在线观看第一页| 国产亚洲一本大道中文在线| 91在线观看免费高清完整版在线观看| 久久久久久国产精品免费播放| 日本久久成人网| 欧美年轻男男videosbes| 日韩xxxx视频| 尤物在线视频| 99riav久久精品riav| 国产九九精品视频| 99热只有这里有精品| 欧美成免费一区二区视频| 亚洲精品第一国产综合精品| 热久久久久久久久| 中文字幕一区久| 伊人色综合久久天天| 日产国产精品精品a∨| 一级黄色片网站| 香蕉国产精品偷在线观看不卡| 久久精品小视频| aa一级黄色片| 爱爱精品视频| 91精品国产色综合久久ai换脸 | 被黑人猛躁10次高潮视频| 在线观看特色大片免费视频| 亚洲精品大片www| 天堂一区二区三区 | 国产精品午夜一区二区| 亚洲激情亚洲| 久久99亚洲热视| 香蕉成人在线视频| 国产欧美日韩免费观看| 日韩成人在线视频网站| av漫画在线观看| 精品国产麻豆| 欧美精品一卡两卡| 91人人澡人人爽人人精品| 美女福利一区二区三区| 欧美色xxxx| 女人天堂av手机在线| 欧洲成人综合网| 亚洲一区二区黄色| 精品人妻大屁股白浆无码| 中文字幕资源网在线观看| 国产精品国产三级国产| 婷婷四房综合激情五月| 黄色av免费在线观看| 久久日一线二线三线suv| 久久综合给合久久狠狠色| 蜜桃av鲁一鲁一鲁一鲁俄罗斯的| 国产福利一区二区三区| 国产66精品久久久久999小说| 国产普通话bbwbbwbbw| 狠狠狠色丁香婷婷综合久久五月| 国产日韩精品一区二区| 亚洲中文字幕一区二区| 精品一区二区在线播放| 成人欧美一区二区三区在线| 91福利在线观看视频| 国产在线一区观看| 成人综合电影| 欧美视频xxx| 2023国产一二三区日本精品2022| 欧美连裤袜在线视频| 国产污视频在线| 国产精品理伦片| 天天做天天爱天天高潮| 天天干在线视频论坛| 亚洲成人www| aa在线免费观看| aaaa欧美| 日韩欧美www| 中文字幕xxx| 欧美成人激情| 国内偷自视频区视频综合| 午夜婷婷在线观看| 免费在线观看成人| 99久久精品无码一区二区毛片 | 色综合久综合久久综合久鬼88 | 美女诱惑黄网站一区| 国产成人a亚洲精品| 亚洲天堂手机在线| 成人综合婷婷国产精品久久| 欧美精品二区三区四区免费看视频 | 日韩av一区在线观看| 美女爆乳18禁www久久久久久| 日韩电影免费在线观看| 欧美国产第一页| 国产一级片av| 国产成a人亚洲| 欧美亚洲免费在线| 黄色网页在线看| 亚洲6080在线| gai在线观看免费高清| aaa国产精品视频| 一区二区三区 在线观看视| 男女免费视频网站| 奇米影视一区二区三区| 国产精品v欧美精品∨日韩| 国产三级在线| 亚洲1区2区3区视频| 亚欧激情乱码久久久久久久久| 一区二区三区免费在线看| 亚洲人精品午夜在线观看| 免费一级片视频| 日本免费新一区视频| 国产伦精品一区二区三区高清 | 欧美三级午夜理伦三级小说| 中文字幕在线亚洲| 97久久久久久久| 国产乱子伦视频一区二区三区| 欧美精彩一区二区三区| 国精一区二区三区| 4438x成人网最大色成网站| 亚洲精品成人无码熟妇在线| 中文字幕免费精品| 国产精品一区二区三区久久久| 亚洲av综合色区无码一二三区| 国产精品视频一二三区 | 精一区二区三区| 另类欧美小说| 爱看av在线| 日韩一区二区在线播放| 日日操免费视频| 老牛国产精品一区的观看方式| 国产精品免费观看高清| av中文在线| 色偷偷久久一区二区三区| 男人网站在线观看| 欧美日本不卡高清| 91入口在线观看| 看黄网站在线| 欧美老年两性高潮| 999精品久久久| 麻豆国产精品官网| 一区二区三区四区免费视频| 日本美女久久| 在线视频精品一| 日韩国产成人在线| 国产日产亚洲精品系列| 亚洲成熟丰满熟妇高潮xxxxx| 久久大胆人体视频| 91国产中文字幕| 日本激情视频网站| 亚洲v中文字幕| 精品无码在线视频| 久久都是精品| 日韩福利二区| 精品美女一区| 久久精品国产亚洲7777| 国产理论片在线观看| 亚洲日本在线天堂| 手机看片国产精品| 伊人天天综合| 久久精品久久精品国产大片| 波多野结衣亚洲| 亚洲一区第一页| 一区二区视频网站| 自拍偷拍亚洲综合| 日日夜夜精品视频免费观看 | 国产精品午夜春色av| 亚洲一区二区三区观看| 欧美激情第二页| 国产精品裸体一区二区三区| 在线视频超级| 伊人久久男人天堂| 91一区二区视频| 亚洲一区二区av在线| 在线精品一区二区三区| 日韩精品91亚洲二区在线观看 | 欧美精品久久久久久久多人混战| 久久av红桃一区二区禁漫| 国产福利91精品一区| 欧美视频在线免费播放| 精品福利久久久| 亚洲最大成人网色| 国产va在线视频| 一本色道久久88综合亚洲精品ⅰ| 一区二区三区播放| 亚洲一线二线三线视频| 一二三不卡视频| 另类专区欧美蜜桃臀第一页| 激情五月婷婷六月| 国内成人精品| 99久久精品免费看国产四区 | 一道本在线观看| 免费的国产精品| 男人插女人视频在线观看| 精品国产一区二区三区av片| 成人区精品一区二区| 桃子视频成人app| 欧美丰满少妇xxxx| 电影av在线| 亚洲成人网在线| 一级特黄色大片| 丰满岳妇乱一区二区三区| 99久久久免费精品| 久久久青草青青国产亚洲免观| 日本美女久久久| 石原莉奈在线亚洲二区| 欧美亚洲黄色片| 91视频一区| 欧美午夜免费| 国产美女撒尿一区二区| 国产美女久久精品| 黄色成人免费网| 97碰在线观看| 神马午夜伦理不卡| 日韩在线播放视频| 极品美乳网红视频免费在线观看| 精品久久五月天| 91精品国自产| 欧美影院午夜播放| 精品国产乱码一区二区| 亚洲欧美激情插| 日韩欧美视频免费观看| 久久久久久97三级| 久久一区二区电影| 成人av影院在线| 中文字幕在线播放一区二区| 麻豆成人91精品二区三区| 欧美性猛交久久久乱大交小说| 在线不卡亚洲| 成人在线视频一区二区三区 | 奇米精品一区二区三区| 欧美精品一线| 中文字幕欧美日韩一区二区| 清纯唯美亚洲综合一区| 日本精品一区二区三区不卡无字幕| 成人噜噜噜噜| 成人夜晚看av| 国产精品一区二区三区av| 国产精品一区二区三区久久久| www成人在线视频| 国产不卡在线观看| 美女18一级毛片一品久道久久综合| 欧美一级免费视频| 春色校园综合激情亚洲| 午夜免费日韩视频| 老司机深夜福利在线观看| 91精品国产色综合| 毛片在线网站| 欧美一区二区.| 免费看av不卡| 国产精品久久久久久久av大片| 日本综合字幕| 国产福利视频一区| www.成人在线视频| 成人精品在线视频| 激情五月综合婷婷| 成人综合av网| 日韩激情网站| 日本一区二区在线视频观看| heyzo久久| 亚洲色图自拍| 欧美成人午夜| 日韩伦理在线免费观看| 午夜亚洲影视| 91欧美视频在线| 国产在线精品免费| 人体私拍套图hdxxxx| 久久亚洲影视婷婷| 亚洲精品国产精品乱码在线观看| 亚洲视频中文字幕| 国产一级特黄毛片| 一本色道a无线码一区v| 中文字幕久久网| 日韩欧美资源站| 秋霞av在线| 在线观看欧美视频| 久操视频在线免费播放| 久久久欧美一区二区| 欧美性xxx| 亚洲影院在线看| 自拍偷拍一区| 2021狠狠干| 噜噜爱69成人精品| 日韩视频在线观看一区二区三区| 国产一区 二区 三区一级| 影音先锋黄色资源| 国产精品伦理一区二区| 国产真实乱偷精品视频| 欧美在线观看视频在线| 亚洲第一视频在线| 一区二区三区四区在线观看视频| 国产在线观看91| 欧美中文字幕精品| 国产精品视频一区二区三区| 蜜桃久久精品乱码一区二区| 羞羞答答成人影院www| 国产99久久九九精品无码| 精品无人码麻豆乱码1区2区| 一本色道综合久久欧美日韩精品| 国产精品电影院| 麻豆成人免费视频| 日韩欧美亚洲国产精品字幕久久久| 九色在线免费| 欧美精品18videos性欧| 欧美高清影院| 欧美亚洲丝袜| 一道本一区二区| 久久aaaa片一区二区| 欧美国产视频在线| 国产精品老女人| 精品动漫一区二区三区在线观看| av基地在线| 日本精品在线视频| 国产精品videossex| 国产人妻互换一区二区| 视频一区国产视频| 黄色a一级视频| 亚洲成人自拍一区| 国内精品偷拍视频| 日韩中文字幕在线精品| 国产精品迅雷| 久久综合给合久久狠狠色| 亚洲经典自拍| 白丝校花扒腿让我c| 日韩美女视频一区二区 | 青青青伊人色综合久久| www.久久国产| 激情成人在线视频| 欧美 日韩 国产 成人 在线 91 | 精品视频久久久久| 欧美一区二区视频在线观看2022| 成人一区二区不卡免费| 日韩美女免费视频| 免费精品国产的网站免费观看| 欧美爱爱视频免费看| 成人免费电影视频| 久久久国产成人| 欧美成人性福生活免费看| 国产超级va在线视频| 成人黄色片在线| 68国产成人综合久久精品| 一级淫片在线观看| 亚洲色图在线播放| 国产精品一区二区人人爽| 久久久极品av| 无码国模国产在线观看| 国产精品国产三级国产专区51| 色七七在线观看| 中文字幕av一区 二区| 亚洲网站免费观看| 久久中国妇女中文字幕| 久久久91麻豆精品国产一区| 中文字幕の友人北条麻妃| 国产精品一级黄| 精品小视频在线观看| 亚洲а∨天堂久久精品9966| 国产精品原创| 色综合影院在线观看| 蜜桃av一区二区在线观看| 国产黄a三级三级| 欧美一区二区三区性视频| 免费电影网站在线视频观看福利| 国产精品久久亚洲| 久久免费黄色| 日韩av网站在线播放| 欧美大片免费久久精品三p| 成人bbav| 亚洲欧美日韩精品久久久| 精品在线观看免费| 激情综合网五月婷婷| 亚洲精品影视在线观看| 国产乱子精品一区二区在线观看| www.亚洲一区二区| 99久久精品99国产精品| 国产女主播喷水视频在线观看| 中文字幕最新精品| a级日韩大片| 不卡av免费在线| 亚洲欧美另类久久久精品2019| 日本高清视频在线| 国产精品免费电影| 欧美色图麻豆| 99久久精品免费视频| 日韩一区二区三区高清免费看看| 爱草tv视频在线观看992| 亚洲第一导航| 成人免费高清视频| 在线观看免费视频a| 国产+人+亚洲| 成人影视亚洲图片在线| 国产精品99精品无码视亚| 欧美中文字幕久久| 毛片网站在线看| 亚洲国产精品一区在线观看不卡 | 黄色工厂在线观看| 欧美区在线观看| 在线播放高清视频www| 在线一区亚洲| 久久久三级国产网站| 性生活视频软件| 国产欧美一区二区| 亚洲一区国产一区|