亚洲男人的天堂2018av,欧美草比,久久久久久免费视频精选,国色天香在线看免费,久久久久亚洲av成人片仓井空

【導讀】關于《深度學習系統優化》綜述論文

深度學習(Deep Learning, DL)模型在視覺、語言、醫療、商業廣告、娛樂等許多應用領域都取得了優異的表現。隨著DL應用和底層服務硬件的快速發展,都顯示出了強大的擴展趨勢,即模型擴展和計算擴展,例如,最近的預訓練模型具有數千億參數,內存消耗約TB級,以及提供數百個TFLOPS的最新GPU加速器。隨著規模化趨勢的出現,DL推理服務系統出現了新的問題和挑戰,逐步向大規模深度學習服務系統發展。本綜述旨在總結和分類大規模深度學習服務系統出現的挑戰和優化機會。通過提供一種新穎的分類方法,總結計算范式,闡述最新的技術進展,我們希望本綜述能夠揭示新的優化視角,激發大規模深度學習系統優化的新工作。

//www.zhuanzhi.ai/paper/9ee7ca2cf6457080794f9b6608f09e7a

深度學習(DEEP Learning, DL)模型,如CNN[15,36,44],Transformers[2,7,10,29]和推薦模型[31,41]在許多認知任務,如視覺、語音和語言應用中取得了優異的表現,這在許多領域產生重要的應用,如醫學圖像分析[38],照片造型[34],機器翻譯[40],產品推薦[31]、定制廣告[13]、游戲[21]等。這種廣泛的DL應用帶來了巨大的市場價值,也帶來了大量的DL服務流量。例如,FB有18.2億的日活躍用戶[11]。廣告推薦查詢的數量可以達到每秒10M查詢。消費者生成數據的巨大增長和DL服務的使用也推動了對以人工智能為中心的數據中心(如亞馬遜AWS[27]和微軟Azure[6])的需求,以及對GPU等強大的DL加速器的日益采用。根據[35]的報告,2018年,GPU在全球數據中心加速器市場上以298300萬美元的份額占據了85%的主要份額。到2025年,該產品將達到298.19億美元。

隨著市場需求的不斷增長,DL應用和底層服務硬件在計算可擴展(例如,增加計算并行性、內存和存儲以服務于更大的模型)和模型擴展(例如,更高的結構復雜性、計算工作量、參數大小以獲得更好的精度),這大大復雜化了服務系統的管理和優化。一方面,如圖1 (a)所示,在計算擴展趨勢下,具有大規模計算并行性的GPU已成為近年來數據中心DL計算加速器的主要類型之一,并保持著持續的指數級性能縮放。最近的GPU如NVIDIA Tesla V100提供每秒130拉浮點運算(TFLOPS),和900 GB / s內存帶寬, 和這些數字進一步增加到312 TFLOPS和1.6 TB / s內存帶寬,可以提供數萬DL模型如ResNet50[15]同時提供更高的效率(性能/瓦特)。另一方面,如圖1 (b)所示,模型規模已經被證明是獲得更好的精度的最重要的因素之一,其有效性在實踐中一致顯示在所有領域的工業超大模型,如視覺模型BiT [22], NLP模型BERT [7],GPT3[2]和深度學習推薦模型DLRM[31]。例如,最近的超大型模型MT-NLG[29]已經實現了5300億參數。工業級商用DLRM[31]已達到~ TB模型大小,大大超過了單機存儲能力,需要多個設備才能進行協同計算。

在這樣的背景下,我們觀察到目前的DL系統社區對大規模深度學習系統(LDS)仍然缺乏足夠的認識和關注,忽視了出現的挑戰和機遇: 傳統的DL系統優化通常集中在單模型單機推理設置(即一對一映射)。然而,LDS具有更大的DL模型和更強大的硬件,能夠實現更靈活的推理計算,將多實例到單設備、一實例到多設備、甚至多實例到多設備映射變為現實。例如,計算縮放(如GPU、TPU)促使許多研究工作在單個設備上進行多模型推理,例如將一個GPU劃分為多個容器化vGPU或多實例GPU (MIG),以獲得更好的硬件利用率、更高的服務吞吐量和成本效率。考慮到實際的成本管理(例如,總擁有成本,TCO),服務大量推理查詢的數據中心也傾向于遷移到多租戶推理服務,例如,將多個推理查詢放置在同一設備上,從而產生新的優化目標(例如,每秒服務的總查詢,以及來自傳統單租戶推斷的約束(例如,服務水平協議、SLA)。類似地,模型擴展也提出了新的一對多推理場景的要求。目前的超大型模型(如DLRM)在推理過程中需要耗費大量的內存(~TB不量化),這需要新的協同計算范式,如異構計算或分布式推理。這種協作服務涉及遠程進程調用(RPC)和低帶寬通信,這帶來了與傳統的單設備推理截然不同的瓶頸。由于涉及到以上所有場景,現代數據中心面臨更復雜的多對多場景,需要專門的推理查詢調度,如服務路由器和計算設備管理,以獲得更好的服務性能,如延遲、吞吐量和成本等。

在本文中,我們提出了一種新的計算范式分類法,總結了新的優化目標,闡述了新的技術設計視角,并為未來的LDS優化提供了見解。

  • 多對多計算范式以DNN實例(I)和計算設備(D)之間的關系為特征,新興的LDS計算范式除了單實例單設備(SISD)外,還可以分為三個新的類別,即多實例單設備(MISD),單實例多設備(SIMD)和多實例多設備(MIMD),如圖2所示。與專注于單模型性能的SISD不同,LDS工作有不同的優化目標,包括推理延遲、服務吞吐量、成本、可擴展性、服務質量等。例如,多租戶推理(multi-tenant inference, MISD)的目標是提高服務吞吐量和電力效率,而超大規模模型推理服務的目標是以低成本提高硬件可伸縮性。

  • 大規模設計和技術由于推理服務的規模,LDS工作也在算法創新、運行時調度和資源管理方面面臨許多優化挑戰和機遇。例如,多租戶推理優化尋求細粒度的硬件資源分區和作業調度,例如空間/時間共享,以提供QoS保證。由于延遲通信瓶頸,分布式推理需要專門的模型-硬件協同優化,例如高效的模型分片和平衡協作等。

通過對現有工作的總結,我們旨在對出現的挑戰、機遇和創新提供一個全面的調研,從而推動LDS運營和優化的新創新。調研的其余部分組織如下:第2節介紹了研究的初步內容,包括我們對LDS的分類,并說明了本次調研的范圍。第3節總結了在多實例單設備(MISD)優化方面面臨的挑戰和最近的工作;第4節總結了單實例多設備(SIMD)優化方面的研究工作;第5節總結了這項工作。

付費5元查看完整內容

相關內容

 是研究、開發用于模擬、延伸和擴展人的智能的理論、方法、技術及應用系統的一門新的技術科學。 人工智能是計算機科學的一個分支。

【導讀】深度學習優化是構建深度學習模型中的一個關鍵問題。來自NUS的研究人員發布了《大規模深度學習優化》綜述論文,DL優化目標是雙重的: 模型準確性和模型效率。至于模型的準確性,研究了最常用的優化算法,從梯度下降變量到(大批量)自適應方法,從一階方法到二階方法。此外,還闡述了在大批量訓練中出現的泛化差距這一有爭議的問題。

深度學習在人工智能的廣泛應用中取得了可喜的成果。更大的數據集和模型總是產生更好的性能。然而,我們通常花更長的訓練時間在更多的計算和通信上。在這項綜述中,我們的目標是提供一個清晰的草圖,關于優化大規模深度學習的模型準確性和模型效率。我們研究最常用于優化的算法,闡述大批量訓練中出現的泛化缺口這一有爭議的話題,并回顧SOTA解決通信開銷和減少內存占用的策略。

//www.zhuanzhi.ai/paper/9f75513e868ff294b34ab94275cab043

引言

目前,深度學習(DL)已經在廣泛的人工智能應用領域取得了可喜的結果,包括計算機視覺(如圖像分類[42,47,66],目標檢測和分割[35,41,65,85]),自然語言處理(如語言建模[28,117]和機器翻譯[108,114]),信息檢索(例如,推薦系統[43])和許多其他。規模是DL上升的主要推動力[28,42,55,56,94,104]。更大的數據集和神經網絡在所有通常需要更多計算和更長的訓練時間的任務中總是產生更好的性能。

因此,近年來,學術界和工業界對在具有更高計算能力和內存限制的TPU和GPU等設備的大集群上擴展DL和分布式訓練的興趣激增。數據并行已經成為分布式訓練的主要實踐。它將一個大的批處理分布到多個設備,其中每個設備持有一個相同的模型副本,計算局部批處理的梯度,最后在每次迭代收集梯度來同步參數更新。通過最新的優化技術,它現在能夠在成千上萬的GPU設備上訓練非常大的批量。然而,這種規模的訓練需要克服算法和系統相關的挑戰。其中一個主要的挑戰是模型精度在超過某一點(例如32k)時的大批量下降。單純地增加批處理大小通常會導致泛化性能下降,并降低計算效益。此外,我們不能總是通過使用更多的處理器來提高訓練速度,因為通信成本是不可忽略的開銷。多處理器協同訓練一個任務可以減少整體訓練時間,但相應的處理器間通信成本很高,限制了模型的可擴展性。更糟糕的是,擁有數百億到數萬億參數的模型顯然無法裝入單個設備的內存中,簡單地增加更多設備也無助于擴大訓練規模。這種限制阻止DL研究人員探索更高級的模型體系結構。現有的工作研究和開發了克服這些問題的優化技術,以加速大規模深度神經網絡(DNN)的訓練。我們將這些工作分為兩類,一種努力在大規模設置下保持/提高模型的準確性,另一種強調模型的效率,設計不太需要通信和內存的算法。重要的是,它們不是相互排斥的,而是可以協同使用,以進一步加快訓練。

該綜述的總體結構如圖1所示。第2節介紹了一個典型的有監督學習神經網絡優化問題的公式。我們將大規模DL優化大致分為模型精度和模型效率兩部分。第3節介紹了梯度下降優化系列,包括梯度下降變種、動量SGD和自適應梯度算法。隨著具有數據并行性的大批訓練在DL中日益普及,同時也帶來了挑戰,第4節討論了在這一設置中存在的問題,并回顧了主要的SOTA優化策略來改善這種情況。第5部分深入探討了泛化差距——批量訓練中的一個辯論話題。第6節介紹了二階優化。然后我們將注意力轉向模型效率。第7節調研了通信瓶頸,第8節重點討論了高效存儲技術。最后,第9節對本文進行總結。

梯度下降優化算法

訓練DNN是一個優化過程,即在網絡中找到使損失函數最小的參數。梯度下降及其變體算法是最常用的神經網絡優化算法[87]。為了控制梯度下降法的振動,引入了動量控制的思想。此外,將學習率與前一階段的梯度相適應,有利于避免波動。在本節中,我們簡要梳理了目前主流的優化算法,包括梯度下降變分算法(3.1節)、動量算法(3.2節)和自適應梯度算法(3.3節)。

大批量訓練

大型DNN和大型數據集推動了深度學習的發展[28,42,55,56,94,104]。然而,在海量數據集上訓練大型模型是計算密集型的。例如,BERT和ResNet-50等SOTA DL模型在16個TPUv3芯片上訓練3天,在8個Tesla P100 GPU上訓練29個小時[28,42]。一種直觀的加速訓練的方法是增加更多的計算能力(例如,更多的GPU節點)并使用數據并行(見圖1)。考慮到通信(即在每次迭代時同步更新)是一個問題,必須盡可能多地利用每個GPU來分攤通信成本。因此,需要使用大批量來將更多的數據分配到每個GPU上。批量大小的非平凡增長常常導致測試性能下降,如[45,52,54,61]中觀察到的。我們在4.1節中描述了大批量引入的訓練難點,在4.2節中描述了大批量訓練的配方(即帶熱身策略的線性LR縮放),在4.3節中描述了其他補充策略,如自適應分層學習和4.4節中描述了自適應批量大小。最后在第4.5節中討論我們可以擴大批量的程度。

泛化差距

優化通常是一項極其困難的任務,尤其是在訓練神經網絡時。對于非凸高維函數,有可能存在許多局部極小點和鞍點。優化方法,如SGD,一般收斂于參數空間的不同區域,高度依賴于網絡架構的設計、優化器的選擇、變量初始化等多種考慮[92]。泛化這個術語指的是一個假設如何很好地適用于訓練集中沒有看到的新例子。如4.1節所述,我們可以看到,盡管訓練函數的值相似,但用大批量方法訓練的模型在測試數據上的表現要比小批量方法差[45,52,70,92]。這種泛化性能的持續下降被稱為泛化差距。弄清這一差距的根源并找到消除這一差距的方法具有重大的現實意義,但仍是一個懸而未決的問題。本節的結構如下。第5.1節介紹了sharp and flat (wide) minima的概念;5.2節討論了局部最小值的銳度/平整度與其泛化能力之間的關系;第5.3節解釋了所謂的泛化差距,第5.4節提供了一個有點相反的解釋。

二階優化

DL中的優化,無論是理論上還是經驗上,目前都由一階梯度方法主導[2,3,15,21,26,116]。二階優化方法,包括二階導數和/或數據的二階統計,是遠遠不普遍的,盡管強大的理論性質,由于其令人望而卻步的計算,內存和通信成本。在本節中,我們將在6.1節中建立二階優化基礎知識,從6.2節中的經典牛頓方法開始,并轉向一些最新的算法,如Hessian-Free方法(在6.3節中)、K-FAC(在6.4節中)和Shampoo40

通信

大規模分布式訓練提高了訓練更深、更大模型的效率,其中采用了數據并行,充分利用了多個workers的計算能力。SGD計算效率高,并且得到了DL工具包TensorFlow[1]、PyTorch[77]和DeepSpeed[83]的良好支持,因此通常被選擇為優化方法。在數據并行的SGD中,每個worker處理其訓練數據的隨機小批,然后通過一個All-Reduce步驟或通過一個集中的參數服務器來同步本地更新,該服務器聚集了來自所有worker的隨機梯度,并采取Broadcast步驟,將更新后的參數向量傳送回所有workers。重復梯度同步的過程,直到滿足適當的收斂準則。

內存

更大的模型通常需要更多的計算和內存資源來訓練。訓練這些模型所需的內存數量可能比單個GPU上可用的內存數量大幾個數量級。在本節中,我們將看到一些流行的技術如何成功地在不影響模型性能的情況下降低訓練神經網絡的內存需求。第8.1節介紹了混合精度訓練[72]如何使用更少的位來保留訓練期間的權值和梯度,從而降低內存負擔。第8.2節介紹了兩種有效內存的自適應優化器,Adafactor[93]和SM3[10]。與上述方法正交,ZeRO[81]不改變模型優化方法,也不影響模型收斂,而是通過消除數據并行中的冗余來降低內存成本(章節8.3)。

結論

鑒于更大的數據集和更大的模型持續產生的準確性的顯著提高,大規模的深度學習已成為一個不可避免的趨勢。隨著數據集大小和DNN復雜度的增加,深度學習的計算強度、通信成本和內存需求均成比例增加。為了提高訓練速度已經付出了相當大的努力。在本文中,我們給出了大規模深度學習優化的概述。一般來說,目標是雙重的: 模型準確性和模型效率。至于模型的準確性,我們研究了最常用的優化算法,從梯度下降變量到(大批量)自適應方法,從一階方法到二階方法。此外,我們還闡述了在大批量訓練中出現的泛化差距這一有爭議的問題。至于模型的效率,我們總結了SOTA技術在解決通信開銷和內存占用方面的昂貴成本。我們希望這篇文章可以為那些有興趣進行大規模訓練的人提供一個清晰的草圖。

付費5元查看完整內容

近年來,由于互聯網的高速發展和大數據時代的來臨,人工智能隨之大熱,而推動人工智能迅猛發展的正是深度學習的崛起。大數據時代需要迫切解決的問題是如何將極為復雜繁多的數據進行有效的分析使用,進而充分挖掘利用數據的價值并造福人類。深度學習作為一種實現機器學習的技術,正是解決這一問題的重要法寶,它在處理數據過程中發揮著重要作用并且改變了傳統的機器學習方法,已被廣泛應用于語音識別、圖像識別和自然語言處理等研究領域。如何有效加速深度學習的計算能力一直是科研研究的重點。FPGA憑借其強大的并行計算能力和低功耗等優勢成為GPU在加速深度學習領域的有力競爭者。從深度學習的幾種典型模型出發,在FPGA加速技術現有特點的基礎上從針對神經網絡模型的加速器、針對具體問題的加速器、針對優化策略的加速器和針對硬件模板的加速器四方面概括總結了FPGA加速深度學習的研究現狀,然后對比了不同加速技術和模型的性能,最后對未來可能發展的方向進行了展望。

付費5元查看完整內容

幾十年來,不斷增長的計算能力一直是許多技術革命背后的推動力,包括最近在人工智能方面的進步。然而,由于集成電路進程規模的放緩,對于系統架構師來說,要繼續滿足當今應用不斷增長的計算需求,他們現在必須采用具有專門加速器的異構系統。

然而,建構這些加速器系統是極其昂貴和耗時的。首先,硬件的開發周期是出了名的長,這使得它很難跟上算法的快速發展。同時,現有的編譯器無法導航由新型加速器架構暴露的棘手映射空間。最后算法的設計通常沒有將硬件效率作為關鍵指標,因此,在設計高效硬件方面提出了額外的挑戰。

本文解決了聯合設計和優化算法、調度和加速硬件設計的重大挑戰。我們的目標是通過三管齊下的方法來推進最先進的技術: 開發從高層抽象自動生成加速器系統的方法和工具,縮短硬件開發周期; 適應機器學習和其他優化技術,以改進加速器的設計和編譯流程; 以及協同設計算法和加速器,以開發更多的優化機會。

本文的目標應用領域是深度學習,它在計算機視覺、神經語言處理等廣泛的任務中取得了前所未有的成功。隨著智能設備的普及,可以預見,深度學習將成為我們日常生活中的主要計算需求。因此,本文旨在通過硬件加速進行端到端系統優化,釋放前沿深度學習算法的普遍采用,改變生活的各個方面。

//www2.eecs.berkeley.edu/Pubs/TechRpts/2021/EECS-2021-202.html

付費5元查看完整內容

深度學習已經在計算機視覺、自然語言理解、語音識別、信息檢索等領域掀起了一場革命。然而,隨著深度學習模型的不斷改進,其參數數量、延遲時間、訓練所需資源等都有了顯著增加。因此,關注模型的度量也變得很重要,而不僅僅是它的質量。我們提出深度學習中的效率問題,隨后對模型效率的五個核心領域(包括建模技術、基礎設施和硬件)以及其中的開創性工作進行了全面調研。我們還提供了一個基于實驗的指南和代碼,供從業者優化他們的模型訓練和部署。我們相信,這是在高效深度學習領域的第一次全面綜述,涵蓋了從建模技術到硬件支持的模型效率景觀。我們的希望是,這個綜述將為讀者提供心理模型和必要的理解,應用通用的效率技術,立即獲得顯著的改進,并促使他們的想法,進一步的研究和實驗,以實現額外的收益。

//www.zhuanzhi.ai/paper/0f8f07193a10367d2246a95c3c7785bb

引言

在過去的十年里,利用神經網絡進行深度學習一直是訓練新的機器學習模型的主要方法。它的崛起通常歸功于2012年的ImageNet競賽[45]。那一年,多倫多大學的一個團隊提交了一個深度卷積網絡(AlexNet[92],以首席開發人員Alex Krizhevsky的名字命名),其表現比排名第二的好41%。這一開創性工作的結果是,人們競相創造具有越來越多參數和復雜性的更深度網絡。一些模型架構,如VGGNet [141], Inception [146], ResNet[73]等,在隨后幾年的ImageNet競賽中連續打破了先前的記錄,同時它們的占用空間(模型大小,延遲等)也在增加。

這種效應在自然語言理解(NLU)中也得到了關注,其中主要基于注意力層的Transformer[154]體系結構刺激了通用語言編碼器(如BERT[47]、GPT-3[26]等)的開發。BERT在發布時擊敗了11個NLU基準測試。GPT-3還通過其API在行業的多個地方得到了應用。這些域之間的共同方面是模型占用空間的快速增長(參見圖1),以及與訓練和部署它們相關的成本。

深度學習研究一直專注于提高現有SOTA性能,圖像分類、文本分類等基準的逐步改進與網絡復雜度、參數數量、訓練網絡所需的訓練資源數量、預測延遲等的增加有關。例如,GPT-3包含1750億個參數,僅訓練一次迭代([26])就要花費數百萬美元。這排除了試驗/嘗試不同超參數組合的成本,這在計算上也是昂貴的。

雖然這些模型可以很好地執行它們所接受的任務,但它們可能不足以在現實世界中進行直接部署。在培訓或部署模型時,深度學習從業者可能面臨以下挑戰。

可持續的服務器端擴展: 訓練和部署大型深度學習模型的成本很高。雖然訓練可能是一次性成本(或者如果使用的是預先訓練的模型,則可能是免費的),但是部署并讓推理運行很長一段時間,在服務器端RAM、CPU等方面的消耗仍然是昂貴的。對于谷歌、Facebook、亞馬遜等機構來說,數據中心的碳足跡也是一個非常現實的問題,這些機構每年在數據中心的資本支出上都要花費數十億美元。

終端設備上部署: 某些深度學習應用程序需要在物聯網和智能設備上實時運行(模型推斷直接發生在設備上),原因有很多(隱私、連通性、響應性)。因此,必須為目標設備優化模型。

隱私和數據敏感性: 當用戶數據可能很敏感時,能夠使用盡可能少的數據進行訓練是至關重要的。因此,使用一小部分數據高效地訓練模型意味著所需的數據收集較少。

新的應用: 某些新的應用提供了新的約束(關于模型質量或足跡),現有的現成模型可能無法解決。

模型爆炸: 雖然一個單一的模型可能工作得很好,但為不同的應用在相同的基礎設施(托管)上訓練和/或部署多個模型可能會耗盡可用資源。

高效深度學習

圍繞上述挑戰的共同主題是效率。我們可以進一步細分如下:

推理效率: 這主要處理部署推理模型(計算給定輸入的模型輸出)的人會問的問題。型號小嗎?它快嗎,等等?更具體地說,模型有多少參數、磁盤大小、推斷期間的RAM消耗、推斷延遲等。

訓練效率: 這涉及到訓練模型的人會問的問題,比如模型需要多長時間來訓練?有多少設備?模型能適應內存嗎?等。它可能還包括這樣的問題,模型需要多少數據才能在給定的任務上實現期望的性能?

在本節中,我們將介紹mental模型來思考與高效深度學習相關的算法、技術和工具的集合。我們提出在五個主要領域構建它們,前四個集中在建模上,最后一個圍繞基礎設施和工具。

(1) 壓縮技術: 這些是用于優化模型架構的通用技術和算法,通常是通過壓縮層數。一個經典的例子是量化[82],它試圖壓縮一層的權矩陣,通過降低其精度(例如。(從32位浮點值到8位無符號整數),質量損失最小。

(2) 學習技術: 這些算法專注于不同的訓練模型(做出更少的預測錯誤,需要更少的數據,收斂更快等)。如果需要的話,通過削減參數的數量,可以將改進的質量轉換為更小的內存占用/更高效的模型。學習技術的一個例子是蒸餾[75],它通過學習模仿較大的模型來提高較小模型的準確性。

(3) 自動化: 這些是使用自動化改進給定模型的核心度量的工具。一個例子是超參數優化(HPO)[61],優化超參數有助于提高精度,然后可以用較少參數的模型進行交換。類似地,體系結構搜索[167]也屬于這一類,其中體系結構本身進行了調優,搜索有助于找到一個模型,該模型既優化了損耗/準確性,又優化了一些其他指標,如模型延遲、模型大小等。

(4) 高效架構: 這些是從頭開始設計的基本塊(卷積層、注意力等),是對之前使用的基線方法(分別是完全連接層和RNN)的重大飛躍。例如,卷積層引入了參數共享用于圖像分類,避免了為每個輸入像素學習單獨的權值,也使其對過擬合具有魯棒性。同樣,注意力層[21]解決了Seq2Seq模型中的信息瓶頸問題。這些架構可以直接用于提高效率。

(5) 基礎設施: 最后,我們還需要基礎設施和工具來幫助我們構建和利用有效的模型。這包括模型訓練框架,如Tensorflow[1]、PyTorch[119]等(以及部署高效模型所需的工具,如Tensorflow Lite (TFLite)、PyTorch Mobile等)。我們依賴于基礎設施和工具來利用高效模型的收益。例如,要獲得量化模型的規模和延遲改進,我們需要推理平臺支持量化模式下的常見神經網絡層。

付費5元查看完整內容

很長一段時間以來,計算機架構和系統被優化,以使機器學習(ML)算法或模型的有效執行。現在,是時候重新考慮ML和系統之間的關系,并讓ML改變計算機架構和系統的設計方式。這包含著雙重意義:提高設計師的工作效率,完成良性循環。在本文中,我們對將ML應用于系統設計的工作進行了全面的回顧,這些工作可以分為兩大類: 基于ML的建模,它涉及到性能指標的預測或其他一些感興趣的標準,以及直接利用ML作為設計工具的基于ML的設計方法。對于基于ML的建模,我們討論現有的研究基于它們的系統目標級別,從電路級別到架構/系統級別。對于基于ML的設計方法,我們遵循自底向上的路徑來回顧當前的工作,包括(微)體系結構設計(內存、分支預測、NoC)、體系結構/系統和工作負載(資源分配和管理、數據中心管理和安全)之間的協調、編譯器和設計自動化。我們進一步提供了未來的機遇和潛在的方向,并展望了將ML應用于計算機體系結構和系統將在社區中蓬勃發展。

//www.zhuanzhi.ai/paper/73124e0addcfed8cc8f738faf5f8c398

機器學習(ML)已經在許多領域創造了奇跡,包括計算機視覺[81,207,213],語音識別[76,83],自然語言處理[38,146,210],藥物發現[148,198],機器人[77,86,140],玩電子游戲[15,167,226],以及許多其他領域[103,128,195,206]。在某些情況下,ML能夠達到或超過人類的性能。例如,在大規模ImageNet數據集上,ResNet[81]比human獲得了更好的top-5錯誤率;AlphaGo Zero可以打敗人類專業圍棋選手[206];從單人游戲(如Atari[167])到多人游戲(如《星際爭霸2》[226]和《Dota 2[15]》),訓練人工代理玩電子游戲也取得了重大進展。

目前的ML模型大多是深度神經網絡(DNNs)及其變體(如多層感知器、卷積神經網絡、遞歸神經網絡),對內存和計算資源的要求都很高。隨著人們尋求更好的人工智能,有一種趨勢是更大、更有表現力和更復雜的模型。隨著摩爾定律帶來的收益遞減,這一趨勢促使計算機體系結構/系統的進步,以更快、更節能的方式實現ML模型。針對ML工作負載,在不同層次的系統和體系結構設計上進行了改進。在算法層面,對ML模型進行剪枝、量化和壓縮[79,92],以消除計算復雜度,提高硬件效率;在硬件層面,在內存中處理(PIM)的復興和near-data處理(NDP)(73, 179),也出現專門的架構和加速器,從那些專門為卷積神經網絡(CNN)優化(例如ShiDianNao [57], Eyeriss[31]和基本[178])那些為通用款設計加速度(例如DaDianNao [30], TPU[108],和DNPU [204]);在器件層面,將新興的非易失性存儲器技術應用于體系結構設計中,如電阻式隨機存取存儲器(ReRAM)[234]、相變存儲器(PCM)[25]、自旋傳遞轉矩磁性隨機存取存儲器(STT-MRAM)[85],將計算和內存結合在一起,提供了另一種有前景的選擇(如PRIME[35]、ISAAC[200]和Resparc[7])。

在日益復雜的工作負載及其不同的性能、精度和功率目標的驅動下,設計體系結構/系統是一件不簡單而費力的事情。通常,這些設計是由人類專家基于直覺和啟發式做出的,這需要ML和體系結構/系統方面的專業知識,在這種情況下,特別是在更復雜的系統中,無法保證良好的可伸縮性和最佳結果。因此,對于體系結構和系統設計來說,朝著更加自動化和強大的方法發展似乎是很自然的,ML和系統設計之間的關系也正在被重新考慮。通常,架構和系統優化是為了加速ML模型的執行和提高性能,不可否認的是,ML的革命在一定程度上依賴于處理能力的提高,如更好地利用并行性、數據重用和稀疏性等。近年來,有跡象表明將ML應用于增強系統設計,具有很大的發展潛力。將ML應用于系統設計有兩個意義: 1減輕人類專家手工設計系統的負擔,提高設計者的工作效率; 2閉合正反饋回路,即:,架構/系統為ML,同時ML為架構/系統,形成一個良性循環,鼓勵雙方的改進。

一般來說,將ML應用于系統設計的現有工作分為兩類。1 ML技術用于系統建模,它涉及性能指標或一些感興趣的標準(例如功耗、延遲、吞吐量等)。在系統設計過程中,需要對系統行為進行快速、準確的預測。傳統上,系統建模是通過周期精確或功能虛擬平臺和指令集模擬器(ISSs)的形式來實現的(例如gem5 [18], Simics[150])。盡管這些方法可以提供準確的評估,但它們也帶來了與性能建模相關的昂貴的計算成本,限制了對大規模和復雜系統的可伸縮性; 同時,長時間的模擬限制了設計師的才能,因為只能探索整個設計空間的一小部分。采用ML技術作為設計方法,直接加強架構/系統設計。ML擅長提取特性,在沒有顯式編程的情況下做出決策,并根據經驗自動改進自身。因此,將ML技術作為設計工具,可以更主動、更智能地探索設計空間,通過更好地理解資源的復雜、非線性交互等來管理資源,從而提供真正的最優解決方案。

在本文中,我們概述了將ML應用于計算機體系結構/系統,并總結了ML技術可以解決哪些系統問題以及ML技術如何解決這些問題,如圖4所示。本文還討論了ML在系統設計中的應用所面臨的挑戰和前景。本文組織如下。第2節簡要介紹了常用的ML技術;第3節回顧了使用ML技術進行系統建模的研究,從電路級到架構/系統級;第4節介紹了利用ML技術作為設計工具直接增強體系結構/系統設計的研究,包括(微)體系結構設計(內存、分支預測、NoC)、體系結構/系統和工作負載(資源分配和管理、數據中心管理和安全)之間的協調、編譯器和設計自動化;第5節討論了將ML應用于系統設計的挑戰和未來前景,以傳達設計考慮的見解;第六部分是本文的總結。

付費5元查看完整內容

題目

A Survey on Large-scale Machine :大規模機器學習綜述

關鍵詞

機器學習,綜述調查

摘要

機器學習可以提供對數據的深刻見解,從而使機器能夠做出高質量的預測,并已廣泛用于諸如文本挖掘,視覺分類和推薦系統之類的實際應用中。 但是,大多數復雜的機器學習方法在處理大規模數據時會耗費大量時間。 這個問題需要大規模機器學習(LML),其目的是從具有可比性能的大數據中學習模式。 在本文中,我們對現有的LML方法進行了系統的調查,為該領域的未來發展提供了藍圖。 我們首先根據提高可伸縮性的方式來劃分這些LML方法:1)簡化計算復雜度的模型,2)優化計算效率的近似值,以及3)提高計算的并行性。 然后,根據目標場景對每種方法進行分類,并根據內在策略介紹代表性方法。最后,我們分析其局限性并討論潛在的方向以及未來有望解決的開放問題。

簡介

機器學習使機器能夠從數據中學習模式,從而無需手動發現和編碼模式。 盡管如此,相對于訓練實例或模型參數的數量,許多有效的機器學習方法都面臨二次時間復雜性[70]。 近年來,隨著數據規模的迅速增長[207],這些機器學習方法變得不堪重負,難以為現實應用服務。 為了開發大數據的金礦,因此提出了大規模機器學習(LML)。 它旨在解決可用計算資源上的常規機器學習任務,特別著重于處理大規模數據。 LML可以以幾乎線性(甚至更低)的時間復雜度處理任務,同時獲得可比的精度。 因此,它已成為可操作的見解的大數據分析的核心。 例如,Waymo和Tesla Autopilot等自動駕駛汽車在計算機視覺中應用了卷積網絡,以實時圖像感知周圍環境[115]; 諸如Netflix和Amazon之類的在線媒體和電子商務站點從用戶歷史到產品推薦都建立了有效的協作過濾模型[18]。總而言之,LML在我們的日常生活中一直扮演著至關重要的和不可或缺的角色。

鑒于對從大數據中學習的需求不斷增長,對此領域的系統調查變得非常科學和實用。 盡管在大數據分析領域已經發表了一些調查報告[12],[33],[54],[193],但它們在以下方面還不夠全面。 首先,它們大多數只專注于LML的一個觀點,而忽略了互補性。它限制了它們在該領域的價值,并無法促進未來的發展。例如,[12]專注于預測模型而沒有發現優化問題,[33]在忽略并行化的同時回顧了隨機優化算法,[193]僅關注了 大數據處理系統,并討論系統支持的機器學習方法。 其次,大多數調查要么失去對所審查方法的洞察力,要么忽視了最新的高質量文獻。 例如,[12]缺乏討論模型的計算復雜性的討論,[33]忽略了處理高維數據的優化算法,[120]將其研究限于Hadoop生態系統中的分布式數據分析。 從計算角度回顧了200多篇Paperson LML,并進行了更深入的分析,并討論了未來的研究方向。 我們為從業者提供查找表,以根據他們的需求和資源選擇預測模型,優化算法和處理系統。 此外,我們為研究人員提供了有關當前策略的見解,以更有效地開發下一代LML的指南。

我們將貢獻總結如下。 首先,我們根據三個計算角度對LML進行了全面概述。 具體來說,它包括:1)模型簡化,通過簡化預測模型來降低計算復雜性; 2)優化近似,通過設計更好的優化算法來提高計算效率; 3)計算并行性,通過調度多個計算設備來提高計算能力。其次,我們對現有的LML方法進行了深入的分析。 為此,我們根據目標場景將每個角度的方法劃分為更精細的類別。 我們分析了它們促進機器學習過程的動機和內在策略。 然后,我們介紹了具有代表性的成就的特征。此外,我們還回顧了混合方法,這些方法共同改善了協同效應的多個視角。 第三,我們從各個角度分析了LML方法的局限性,并根據其擴展提出了潛在的發展方向。 此外,我們討論了有關LML未來發展的一些相關問題。

本文的結構如下。 我們首先在第2節中介紹了機器學習的一般框架,然后對其有效性和效率進行了高層次的討論。在第3節中,我們全面回顧了最新的LML方法并深入了解了它們的好處和優勢。 局限性。 最后,在第5節結束本文之前,我們討論了解決第4節中的局限性和其他有希望的未解決問題的未來方向。

付費5元查看完整內容

主題: Deep Natural Language Processing for Search Systems

簡介: 搜索引擎處理豐富的自然語言數據,如用戶查詢和記錄。提高搜索質量需要有效地處理和理解這類信息,通常使用自然語言處理技術。作為搜索系統中的代表性數據格式,查詢或記錄數據被表示為單詞序列。在傳統方法中,理解這樣的序列信息通常是一項非常重要的任務,面臨著來自數據稀疏性和數據泛化的挑戰。深度學習模型提供了一個有效提取有代表性的相關信息的機會,從而更好地理解復雜的語義和潛在的搜索意圖。近年來,深度學習在各種自然語言處理任務中取得了顯著的進步,顯示出其在促進搜索系統方面的巨大潛力。

然而,開發搜索系統中自然語言處理的深度學習模型不可避免地需要滿足復雜的搜索引擎生態系統的要求。例如,一些系統需要頻繁的模型更新,所以冗長的模型訓練時間是不容許的。此外,低服務延遲約束禁止使用復雜模型。如何以相對較低的復雜度保持模型質量是深度學習從業者面臨的持續挑戰。

在本教程中,作者總結了當前在搜索系統中自然語言處理的深度學習工作,首先概述了搜索系統和搜索中的自然語言處理,然后介紹了自然語言處理的深度學習的基本概念,并介紹了如何將深度自然語言處理應用于搜索系統的實踐。本教程全面概述了通過端到端搜索系統在上述組件中應用深度自然語言處理技術。除了傳統的搜索引擎,還包括一些高級搜索系統的用例,如對話搜索和面向任務的聊天機器人。我們還強調了幾個重要的未來趨勢,比如通過查詢生成與用戶交互,以及減少延遲以滿足行業標準。

付費5元查看完整內容
北京阿比特科技有限公司