本文共多圖,建議閱讀8分鐘。
本課程將深入介紹用於在機器學習系統中設計訓練和推理加速器的架構技術。
[ 導讀 ]學芯片技術的機會來了!斯坦福大學2018秋季學期推出《機器學習硬件加速器》課程,深入介紹機器學習系統中設計訓練和推理加速器的架構技術。課程涵蓋經典的ML算法,用於ML模型推理和訓練的加速器設計等,超多專業材料和PPT,是本領域不可多得的專業課程。
本課程將深入介紹用於在機器學習系統中設計訓練和推理加速器的架構技術。本課程將涵蓋經典的ML算法,如線性迴歸和支持向量機,以及DNN模型,如卷積神經網絡和遞歸神經網絡。我們將考慮這些模型的訓練和推理,並討論諸如batch size、精度、稀疏度和壓縮等參數對這些模型精度的影響。
我們將介紹用於ML模型推理和訓練的加速器設計。學生將熟悉使用並行性、局部性和低精度來實現ML中使用的核心計算內核的硬件實現技術。為了設計高效節能的加速器,學生們將建立直覺,在ML模型參數和硬件實現技術之間進行權衡。學生將閱讀最近的研究論文並完成一個設計項目。
主講教師
- Kunle Olukotun
Kunle Olukotun是斯坦福大學電氣工程和計算機科學的Cadence設計系統教授,自1991年以來一直在該系任教。Olukotun以領導Stanford Hydra研究項目而著名,該項目開發了首批支持thread-level speculation的芯片多處理器。
- Ardavan Pedram
Ardavan Pedram是斯坦福大學電氣工程系研究助理,與Kunle Olukotun教師合作的Pervasive Prallelism Laboratory (PPL) 項目的成員。
特邀講師
課程安排和閱讀材料
第1課:簡介,摩爾定律和Dennard Scaling定律後硬件加速器的作用
閱讀材料:
- 暗硅(Dark Silicon)有用嗎? Hennessy Patterson第7.1-7.2章:
https://ieeexplore.ieee.org/document/6241647/
第2課:經典ML算法:迴歸、SVM
閱讀材料:
- TABLA:基於統一模板的加速統計機器學習的架構:
https://www.cc.gatech.edu/~hadi/doc/paper/2015-tr-tabla.pdf
第3課:線性代數基礎和加速線性代數BLAS運算
20世紀的技術:收縮陣列和MIMD,CGRAs
閱讀材料:
- 為什麼選擇收縮架構?
www.eecs.harvard.edu/~htk/publication/1982-kung-why-systolic-architecture.pdf
- 高性能GEMM的剖析:
https://www.cs.utexas.edu/users/pingali/CS378/2008sp/papers/gotoPaper.pdf
第4課:評估性能、能效、並行性,局部性、內存層次,Roofline模型
閱讀材料:
- Dark Memory and Accelerator-Rich System Optimization in the Dark Silicon Era:
https://arxiv.org/abs/1602.04183
第5課:真實世界的架構:將其付諸實踐
加速GEMM:定製,GPU,TPU1架構及其GEMM性能
閱讀材料:
- Google TPU:
https://arxiv.org/pdf/1704.04760.pdf
- Codesign Tradeoffs:
https://ieeexplore.ieee.org/document/6212466/
- NVIDIA Tesla V100:
images.nvidia.com/content/volta-architecture/pdf/volta-architecture-whitepaper.pdf
第6課:神經網絡:MLP和CNN推理
閱讀材料:
- IEEE proceeding
- Brooks’s book (Selected Chapters)
第7課:加速CNN的推理:實踐中的阻塞(Blocking)和並行(Parallelism)
DianNao, Eyeriss, TPU1
閱讀材料:
- 一種阻塞卷積神經網絡的系統方法:
https://arxiv.org/abs/1606.04209
- Eyeriss:用於卷積神經網絡的節能數據流的空間架構
https://people.csail.mit.edu/emer/papers/2016.06.isca.eyeriss_architecture.pdf
- Google TPU (see lecture 5)
第8課:使用Spatial建模神經網絡,分析性能和能量
閱讀材料:
- Spatial:一種應用程序加速器的語言和編譯器:
http://arsenalfc.stanford.edu/papers/spatial18.pdf
第9課:訓練:SGD,反向傳播,統計效率,batch size
閱讀材料:
- 去年的NIPS workshop:Graphcore
https://supercomputersfordl2017.github.io/Presentations/SimonKnowlesGraphCore.pdf
第10課:DNN的彈性:稀疏性和低精度網絡
閱讀材料:
- EIE:壓縮深度神經網絡的高效推斷機(Efficient Inference Engine):
https://arxiv.org/pdf/1602.01528.pdf
- Flexpoint of Nervana:
https://arxiv.org/pdf/1711.02213.pdf
- Boris Ginsburg: 卷積網絡的Large Batch訓練
https://arxiv.org/abs/1708.03888
- LSTM Block Compression by Baidu?
第11課:低精度訓練
閱讀材料:
- HALP:High-Accuracy Low-Precision Training:
https://arxiv.org/abs/1803.03383
- Ternary or binary networks
第12課:分佈式和並行系統訓練:Hogwild!,異步和硬件效率
閱讀材料:
- Deep Gradient compression:
https://arxiv.org/abs/1712.01887
- Hogwild!:一種並行化隨機梯度下降的Lock-Free 方法
https://people.eecs.berkeley.edu/~brecht/papers/hogwildTR.pdf
- 大規模分佈式深度網絡:
https://static.googleusercontent.com/media/research.google.com/en//archive/large_deep_networks_nips2012.pdf
第13課:FPGA和CGRAs:Catapult,Brainwave, Plasticine
閱讀材料:
- Catapult:
https://www.microsoft.com/en-us/research/wp-content/uploads/2016/10/Cloud-Scale-Acceleration-Architecture.pdf
- Brainwave:
https://www.microsoft.com/en-us/research/uploads/prod/2018/03/mi0218_Chung-2018Mar25.pdf
- Plasticine:
dawn.cs.stanford.edu/pubs/plasticine-isca2017.pdf
第14課:ML基準:DAWNbench,MLPerf
閱讀材料:
- DawnBench:
https://cs.stanford.edu/~matei/papers/2017/nips_sysml_dawnbench.pdf
- MLPerf:
https://mlperf.org/
第15課:Project presentations
更多閱讀材料:
https://cs217.github.io/readings
課程PPT:
https://cs217.github.io/lecture_slides
第一課對深度學習的發展、摩爾定律、Dennard Scaling、相關理論方法等做了較為詳盡的介紹,非常乾貨,下面附上第一課的PPT。
深度學習的挑戰:深度學習存在理論嗎?
秋季課程視頻還沒放出,敬請關注課程網站:
cs217.github.io
閱讀更多 THU數據派 的文章