成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

OpenAI 是如何估計與分析模型計算量的?

發布于 2024-6-25 10:03
瀏覽
0收藏

今天看到OpenAI前些年發布的一個模型計算量的分析,感覺很有價值,有需求的人童鞋可以看一下, 內容如下:


自 2012 年以來,最大規模 AI 訓練運行中使用的計算量呈指數級增長,翻倍時間為 3.4 個月(相比之下,摩爾定律的翻倍期為 2年)。自 2012 年以來,這一指標增長了 300,000 多倍(2 年的翻倍期只能產生 7 倍的增長)。計算能力的提升一直是 AI 進步的關鍵組成部分,因此只要這一趨勢持續下去,就值得為遠遠超出當今能力的系統帶來的影響做好準備。


AlexNet 到 AlphaGo Zero:計算量增加了 300,000 倍

OpenAI 是如何估計與分析模型計算量的?-AI.x社區

總計算量(以千萬億次/秒為單位),$[footnote-petaflops]$用于訓練相對知名的選定結果,在其時間內使用了大量計算,并提供了足夠的信息來估計所使用的計算。

概述

推動人工智能發展的因素有三個:算法創新、數據(可以是監督數據或交互式環境)以及可用于訓練的計算量。算法創新和數據難以追蹤,但計算卻可以量化,為衡量人工智能進步的一項投入提供了機會。當然,大規模計算的使用有時只會暴露我們當前算法的缺點。


但至少在當前的許多領域中,更多的計算似乎可預見地帶來更好的性能(https://arxiv.org/abs/1712.00409),并且通常與算法的進步相補充。


對于此分析,OpenAi認為相關數字不是單個 GPU 的速度,也不是最大數據中心的容量,而是用于訓練單個模型的計算量——這個數字最有可能與我們的最佳模型的強大程度相關。每個模型的計算與總體計算有很大不同,因為并行性受到限制(http://learningsys.org/nips17/assets/slides/dean-nips17.pdf)(硬件和算法)限制了模型的大小或訓練效果。當然,重要的突破仍然需要適度的(https://openai.com/index/ai-and-compute/#appendixrecentnovelresultsthatusedmodestamountsofcompute)計算量——下面的分析僅涵蓋計算能力。


這一趨勢每年大約增長 10 倍。這在一定程度上是由定制硬件推動的,這些硬件允許以給定價格(GPU 和 TPU)每秒執行更多操作,但主要推動力是研究人員不斷尋找并行使用更多芯片的方法,并愿意為此付出經濟成本。

時代

根據提供的圖表,我們可以將GPU在機器學習領域的發展歷程分為四個階段:


  1. 2012年之前,GPU用于機器學習比較罕見,導致無法獲得相關結果;
  2. 2012年到2014年,雖然在多臺GPU上進行訓練的基礎設施并不普及,但大多數結果仍使用1-8個GPU,每個GPU的性能 1-2 TFLOPS, 總計 0.001-0.1PFSDays;
  3. 2014年到2016年,出現了支持更大規模算法并行性的技術,如大批量、架構搜索和專家迭代等方法,以及TPU和更快互連等專用hardware。這些改進顯著削減了先前的限制,至少對某些應用程序而言;
  4. 2016年到2017年,AlphaGo Zero / AlphaZero是大規模算法并行性的一個引人注目的公開示范。但是,這種規模的許多其他應用程序在算法上已經可行,并且很可能已經在生產環境中得到應用。


需要指出的是,2012年到2014年期間,大多數結果使用了1-8個GPU,每個GPU的性能峰值約為1-2 TFLOPS,共計0.001-0.1PFSDays。隨著數據并行化帶來的效益逐漸降低,進一步擴大規模的訓練所帶來的價值也會受到限制。

期待

基于給定的圖表,OpenAI認為 ML 的這種趨勢可能會繼續存在。首先,許多硬件初創公司正在開發 AI 專用芯片,并聲稱在未來 1-2 年內將實現FLOPS/Watt的大幅提升(FLOPS/$ 也類似)。這意味著僅僅通過以更低的經濟成本執行相同數量的操作,就可能帶來好處。在并行性方面,許多最近的算法創新原則上可以相互累積,例如架構搜索和大規模并行 SGD。


然而,成本最終會限制這種趨勢的并行性方面,而物理會限制芯片效率方面。當今最大規模的訓練運營使用的硬件購買成本高達數百萬美元(盡管攤銷成本要低得多)。但事實上,大部分神經網絡計算仍在推理(部署)中完成,而不是訓練,這意味著公司可以重復利用或負擔得起購買更大的芯片用于訓練。因此,只要有足夠的經濟動力,我們可能會看到更大規模的并行訓練運營,這將使這種趨勢繼續數年。


另外,全球硬件總預算為 1 萬億美元/年,因此絕對上限仍然遙遙無期。總的來說,考慮到以往的數據、計算指數趨勢的先例、機器學習專用硬件的發展以及其中的經濟動力,認為這種趨勢不會在短期內繼續下去是不切實際的。


雖然過去的趨勢不足以預測未來這種趨勢將持續多久,也不足以預測這種趨勢將持續下去會發生什么,但即使有快速提升能力的合理潛力,也意味著現在開始解決人工智能的安全和惡意使用問題至關重要。遠見至關重要,對于負責任的政策制定和負責任的技術發展,必須在這些趨勢的前面行事,而不是遲緩地做出反應。

附錄:方法

OpenAI使用兩種方法生成數據點:

  1. 當有足夠信息時,我們計算每個訓練樣本中所述架構的 FLOPs (浮點運算次數),再乘以整個訓練過程中前向傳播和 backward propagation 的總輪次。
  2. 當缺乏直接計算FLOPs的信息時,我們觀察GPU訓練時長和使用的GPU總數,假設利用率(通常為0.33)。


對于大多數論文,我們優先選擇第一種方法;但是,對于一部分論文,我們采用第二種方法,并盡可能同時計算這兩種方法以做一致性檢查。OpenAI還與作者核實了結果。坐著的計算準確性不是非常嚴格,但能夠在2-3倍范圍內正確。并在下文提供了一些計算示例。

方法1:計算模型中的計算

當作者提供了前向傳遞中使用的操作數時,該方法非常便于使用。例如,Resnet 論文(尤其是 Resnet-151 模型)中給出了操作數。

計算公式為:(add-multiplies per forward pass) × (2 FLOPs/add-multiply) × (3 for forward and backward pass) × (number of examples in dataset) × (number of epochs)

Resnet-151 模型:

OpenAI 是如何估計與分析模型計算量的?-AI.x社區

在某些深度學習框架中,我們甚至可以通過編程方式計算已知模型架構的操作數,或者手動計算操作數。如果論文提供了足夠的信息來進行此計算,計算結果會非常準確。但是,在某些情況下,論文可能沒有提供所有必要的信息,作者也可能無法透露這些信息。

方法2:GPU 時間

如果不能直接計算操作數,我們可以檢查訓練了多少個 GPU,訓練花費了多長時間,然后假設 GPU 利用率,嘗試估計執行的數量。OpenAI在這里沒有計算峰值理論 FLOPS,而是使用假設的理論 FLOPS 分數來嘗試猜測實際 FLOPS。根據經驗,通常假設 GPU 的利用率為 33%,CPU 的利用率為 17%,除非Open獲取到更具體的信息(例如,作者交流過,或工程是在 OpenAI 完成的)。


例如,AlexNet 論文中指出:"網絡在兩個 GTX 580 3GB GPU 上訓練需要五到六天的時間"。根據我們的假設,這意味著總計算量為:

OpenAI 是如何估計與分析模型計算量的?-AI.x社區

更多模型的計算

DropOut(https://arxiv.org/abs/1207.0580)

方法 2:1 GPU * 4 days * 1.54 TFLOPS/GTX 580 * 0.33 utilization = 184 PF = 0.0021 pfs-days

可視化并理解卷積網絡(https://arxiv.org/abs/1311.2901)

方法 2: 1 GPU * 12 days * 1.54 TFLOPS/GTX 580 * 0.33 utilization = 532 PF = 0.0062 pfs-days

DQN(https://arxiv.org/abs/1311.2901)

  • 方法 1:
  • Network is 84x84x3 input, 16, 8x8, stride 4, 32 4x4 stride 2, 256 fully connected
  • First layer: 20203168*8 = 1.23M
  • add-multiplies Second layer: 9916324*4 = 0.66M
  • add-multiplies Third layer: 9932*256 = 0.66M
  • add-mutliplies Total ~ 2.55M
  • add-multiplies 2.5 MFLOPs * 5M updates * 32 batch size * 2 multiply-add * 3 backward pass = 2.3 PF = 2.7e-5 pfs-days

Seq2Seq(https://arxiv.org/abs/1409.3215)

  • 方法 1: (348M + 304M) words * 0.380 GF * 2 add-multiply * 3 backprop * 7.5 epoch = 7,300 PF = 0.085 pfs-days
  • 方法 2: 10 days * 8 GPU’s * 3.5 TFLOPS/ K20 GPU * 0.33 utilization = 8,100 PF = 0.093 pfs-days

VGG(https://arxiv.org/pdf/1409.1556.pdf)

  • 方法 1:1.2 M images * 74 epochs * 16 GFLOPS * 2 add-multiply * 3 backward pass = 8524 PF = 0.098 pfs-days
  • 方法 2:4 Titan Black GPU’s * 15 days * 5.1 TFLOPS/GPU * 0.33 utilization = 10,000 PF = 0.12 pfs-days

DeepSpeech2(https://arxiv.org/abs/1512.02595)

  • 方法 1:1 timestep = (1280 hidden units)^2 * (7 RNN layers * 4 matrices for bidirectional + 2 DNN layers) * (2 for doubling parameters from 36M to 72M) = 98 MFLOPs 20 epochs * 12,000 hours * 3600 seconds/hour * 50 samples/sec * 98 MFLOPs * 3 add-multiply * 2 backprop = 26,000 PF = 0.30 pfs-days
  • 方法 2:16 TitanX GPU’s * 5 days * 6 TFLOPS/GPU * 0.50 utilization = 21,000 PF = 0.25 pfs-days

Xception(https://arxiv.org/abs/1610.02357)

  • 方法 2:60 K80 GPU’s * 30 days * 8.5 TFLOPS/GPU * 0.33 utilization = 4.5e5 PF = 5.0 pfs-days

Neural Architecture Search(https://arxiv.org/abs/1611.01578)

  • 方法1:50 epochs * 50,000 images * 10.0 GFLOPSs * 12800 networks * 2 add-multiply * 3 backward pass = 1.9e6 PF = 22 pfs-days
  • 方法 2:800 K40’s * 28 days * 4.2 TFLOPS/GPU * 0.33 utilization = 2.8e6 PF = 31 pfs-days

本文轉自AI生成未來 ,作者:APlayBoy


原文鏈接:??https://mp.weixin.qq.com/s/E2IgMSoou_hvlMPnn7zf9g??

已于2024-6-25 10:04:23修改
收藏
回復
舉報
回復
相關推薦
主站蜘蛛池模板: 亚洲一区二区三区在线播放 | av天天澡天天爽天天av | 九九久久国产精品 | 成人a网| 国产精品免费看 | 成人在线 | 草草视频在线免费观看 | 免费一级大片 | 日日骚视频 | 精品视频在线观看 | 欧美一区二区三区 | 欧美h| 欧美激情精品久久久久久 | 精品欧美一区二区三区精品久久 | 一区在线观看 | 欧美精品1区2区3区 精品国产欧美一区二区 | 亚洲精品久久久久久国产精华液 | 国产精久久久久久久 | 91视频国产精品 | 亚洲精色| 中文字幕在线一区二区三区 | 日韩一区二区av | 久久综合久久综合久久综合 | 不卡的av电影 | 日韩欧美黄色 | 国产精品无码久久久久 | 成人性生交大片免费看r链接 | 日韩精品一区二区三区中文在线 | 中日字幕大片在线播放 | 午夜无码国产理论在线 | 日韩精品一区二区三区中文在线 | 欧日韩在线观看 | 午夜视频网 | 亚洲福利在线观看 | 在线欧美日韩 | 国产在线观 | 精品久久一区 | 国产aⅴ爽av久久久久久久 | 亚洲日本中文字幕在线 | 黄色成人国产 | aaa级片 |