低精度神经网络:从数值计算角度优化模型效率
作者丨林野?
學校丨東北大學自然語言處理實驗室2019級博士生
研究方向丨機器翻譯、模型壓縮、模型加速
背景
近年來,隨著人工智能的不斷興起,神經網絡已經在語音識別、計算機視覺和自然語言處理領域等多個任務上取得了重大突破,以機器翻譯任務為例,基于神經網絡的神經機器翻譯模型在翻譯質量和翻譯流暢性等方面都明顯優于傳統的統計機器翻譯。
當前神經網絡取得的進展除了模型結構本身的因素外,還主要依賴于三種外部因素:1)海量數據集;2)高性能 GPU 設備;3)大規模分布式訓練。
深度學習(Deep Learning, DL)的概念源于人工神經網絡的研究,是機器學習的第二次浪潮,也是機器學習領域中最集中和最廣泛使用的預測模型之一。許多深度學習問題追求的目標都可以分為兩個階段,第一階段是性能,第二階段是效率。
在第一階段中,效率和響應速度并不那么重要,人們更關心的是提出的研究方法和模型是不是真的 work,對模型性能有多少提升,這種發展趨勢也使得當前許多深度神經網絡無比繁重。
很快,人們意識到了一個問題:模型效率真的很重要!盡管 DL 帶來了諸多好處,但模型的訓練和存儲卻變得越來越困難,很難將神經網絡相關的計算工作負載部署在計算資源受限的嵌入式邊緣設備上。例如:AlphaGo 的驚人性能需要在 2000 個 CPU 和 250 個 GPU 上進行為期 4 到 6 周的訓練,總功耗約為 600kW。
在諸如 AlphaGo 這些深度神經網絡中,參數并非都對網絡起到正向的效果,而是存在冗余,這種冗余的神經網絡不僅會對存儲和計算資源造成浪費,還可能導致嚴重的過參數化和過擬合問題。
當前已經有一些關于模型結構優化的研究工作,可以在提升模型性能的前提下顯著降低模型的計算代價,但仍需消耗更多更昂貴的計算資源和內存資源。因此,如何在保證模型性能的前提下提升神經網絡模型的計算效率,是我們當前亟待解決的一個問題。
低精度神經網絡
為了解決神經網絡訓練代價過高的問題,將神經網絡的發展從計算資源和內存資源等硬件限制中解脫出來,當前研究人員已經研究出一些神經網絡模型加速和壓縮方法,這些方法主要有網絡剪枝、知識蒸餾、張量分解、遷移學習、參數量化、低精度神經網絡等等,相較于其他方法,低精度神經網絡更傾向于從神經網絡的底層數值計算角度來進行神經網絡模型的優化。
什么是低精度神經網絡?
看到這里大家可能會有一個疑問,到底什么是低精度神經網絡?
大家都知道,實數是是不可數的,以枚舉的方式不能表示整體的實數。在計算機中只能使用有限數量的 bit 位來表示無窮個實數,因此計算機中對實數的表示本身就是一個近似替代問題,替代的準確度取決于我們用多少 bit 位來對數值進行表示。在神經網絡中,最常用的數值表示為 32 位浮點數,在某些科學計算領域會使用 64 位浮點進行嚴格計算,用更低精度數值表示的神經網絡我們稱之為低精度神經網絡。
神經網絡低精度化方法最早可以追溯到 20 世紀 90 年代,但由于當時條件和資源限制,并不能很好的驗證神經網絡低精度化方法在深層神經網絡及大規模數據上的有效性。當前隨著計算資源和數據資源的極大豐富,對低精度神經網絡的研究逐漸提上日程。
常用數值表示
低精度神經網絡將神經網絡中權重和隱層單元用低精度的數值進行表示,這種低精度表示明顯減少了模型的內存帶寬和存儲要求并提高了模型的計算效率。為了進一步介紹低精度神經網絡的優勢,我們首先介紹幾種精度的數值表示。
1. 浮點數
浮點格式通常用于表示實值。浮點數的表示由三部分組成:符號位,指數位和尾數位。符號位用來表示正負數值,指數給出了浮點格式的表示范圍,尾數保證了浮點精度。常用的三種浮點數值的表示方法如圖 1 所示。
▲?圖1. 三種常用浮點數值表示
2. 定點數
定點數即小數點位置固定的數,主要包括定點整數和定點小數。相比于浮點數來說,定點數的存儲方式更加簡單,通常的方式就是對每一個十進制數進行 BCD 編碼,然后加上一個額外的符號位,16 位整數和 8 位整數的表示方法如圖 2 所示。
▲?圖2. 兩種常用整數表示
低精度神經網絡分類
低精度神經網絡是用低精度數值表示的一類神經網絡,網絡參數用一些低精度浮點或是定點數進行表示。這種方法的主要目的是通過發揮低精度數值的運算優勢,減少神經網絡的空間復雜度和計算復雜度,以提升神經網絡模型的計算和存儲效率,同時還需保證網絡的準確率不受影響。在這里,我們將低精度神經網絡分為以下幾類:1)單精度浮點網絡;2)半精度/更低精度浮點網絡;3)定點數網絡。
1. 單精度浮點網絡
相較于表示范圍更廣、數值精確度更高的雙精度浮點,單精度浮點也是一種較低精度的數值,從這個角度來說,單精度浮點網絡可以算是一種特殊的低精度神經網絡。由于雙精度浮點有著更多的指數位和尾數位,雙精度浮點的表示范圍更廣,數值的刻畫也更精細,這就使得雙精度浮點網絡往往具有更高的準確率。
從歷史的經驗上來看,在一些需求高性能計算的科學計算任務上(如:模擬人類心臟、計算航天飛機軌跡等),經常使用高精度 64 位浮點進行網絡中參數表示,網絡計算也比較依賴于 64 位浮點運算。但是,對于當前比較常見的感知和推理任務,例如語音識別,圖像分類和機器翻譯,單精度即可滿足這種程度上的準確度需求。
優點:單精度浮點表示范圍較廣,可以滿足大多神經網絡計算需求。
缺點:相比于更低精度數值表示的神經網絡,單精度浮點網絡對存儲資源和計算資源的要求較高,神經網絡模型訓練周期長、模型存儲大,在磁盤間移動困難。
2. 半精度/更低精度浮點網絡
隨著大數據時代的到來,深度學習技術已經成為當前人工智能領域的一個研究熱點,其在語音、圖像和自然語言處理等人工智能子領域中單精度已經完全能夠勝任模型準確性的需求,但由于浮點運算效率較低,且需要更大的存儲空間,內存的訪問也比較頻繁,在一些深度神經網絡中暴露出了致命的缺點:模型效率低下、模型存儲要求高。
這就驅使了人們進行更低精度神經網絡的研究,半精度/更低精度浮點網絡應運而生,主要包括 FP16(16-bit 浮點)、FP8(8-bit 浮點)、FP9(9-bit 浮點)等等。
FP16 在 IEEE 中定義為 1bit 符號位、5bit 指數位、10bit 尾數位,Microsoft 在其 Project Brainwave 中提到了其專有的浮點格式 ms-fp8 和 ms-fp9。從數值表示的角度來看,數值的指數位和尾數位變少,數值精度會變低。
但其優勢也很明顯,僅從存儲層面來看,FP16 相比于 FP32 直接降低了一半的內存需求,而 FP8 直接將內存降為原來的 1/4,部署時占用的存儲也隨之減小。從直覺來看,數值位數減少,計算也相對比較容易,但這需要特定型號的硬件支持。
優點:相比于單精度浮點網絡,半精度/更低精度浮點網絡計算效率高,更容易在較小的帶寬上共享,也更易于模型的維護和更新。
缺點:相比于單精度浮點網絡,半精度/更低精度浮點網絡表示范圍變小,且需特定的硬件支持,相比于定點計算效率仍較為低下。
3. 定點數網絡
定點數類型的使用廣泛用于數字信號處理和游戲應用中,其中性能有時比精度更重要。而浮點運算指令復雜,計算困難,因此一些超低功耗嵌入式設備(如無人機、手表等設備)上的微控制器并不支持浮點運算。相比于浮點運算,定點運算指令簡單,定點數神經網絡主要包括常規的整數網絡和一些更為極端的網絡(二值網絡、三值網絡等)。
優點:定點數網絡效率高、功耗低且易于部署在嵌入式設備上。
缺點:需要特定的硬件支持,離散數值無法進行反向傳播(求導困難),訓練定點數網絡時往往需要額外的 retraining 操作。
相關硬件支持
由于低精度數值計算常常需要特殊硬件,我們首先要對支持低精度運算的硬件有所了解。
在過去的十年中,計算資源一直是制約計算性能的一項重要因素。當前,低精度計算在機器學習中獲得了很大的吸引力。很多公司為了適應低精度計算的需求甚至開始開發新的硬件架構,這些架構本身支持并加速低精度操作,包括微軟的 Project Brainwave、Google 的 TPU、NVIDIA 的 Volta、Pascal 架構還有 Intel Xeon 處理器等等。
無論是基于 CPU 還是 GPU 上的張量計算,有關低精度的數值運算都比較依賴于特定型號的硬件支持,這些硬件上有針對低精度數值運算進行優化的特殊指令。然而這些硬件設備價格比較昂貴,如果無法滿足上述硬件環境,也可在其他環境下進行低精度數值的模擬計算,通過空間復雜度和時間復雜度的變化來獲取理論上的模型優化效果。
問題和挑戰
盡管低精度神經網絡模型的存儲效率和計算效率得到了極大的提升,但當前對低精度神經網絡的研究還處于初級階段,仍存在著一些問題和挑戰。
理論層面
首先從理論層面來說,對低精度神經網絡的研究主要有以下問題:
1. 模型準確率無法保證:將神經網絡中數值進行低精度化后,由于網絡中數值表示范圍減小,產生的最大問題就是對模型性能的影響。
2.?相關理論支撐:對于如何判斷神經網絡理論上最低的位寬,以及確定神經網絡能接受的誤差范圍,需要完備的理論支持。
3.?累積誤差不確定:神經網絡中存在著一些累積操作(如:ReduceSum、ReduceMax、Softmax 等),這些操作的對象一般維度較大,除非已知當前輸入張量中的最大值和數據分布,否則無法確定當前網絡數值累積的上限。
4.?離散數值的梯度更新:低精度神經網絡中數值分布比較離散,當前主流的神經網絡梯度更新方法為反向傳播算法,但反向傳播算法只能進行連續空間上的優化,因此低精度神經網絡適用的優化方法也是值得探索的一個問題。
實現層面
從工程實現的層面來說,在低精度神經網絡的研究中主要存在以下問題:
1.?硬件資源限制:低精度神經網絡中的低精度數值計算比較依賴于硬件支持,若沒有針對低精度數值計算指令進行優化,無法得到理論上的加速效果。
2. 訓練手段:低精度神經網絡中數值精度較低,在訓練手段方法有些需要注意的地方,比如是否需要添加一些 Scale 操作、是否需要 retraining 操作都需額外進行考慮。
發展現狀
在背景章節中,本文介紹了深度學習經歷的兩階段目標,在階段一中,人們更關心的是模型的性能,而不需要考慮我們的網絡到底需要多精確的計算,以及降低當前計算精度是不是會對模型性能產生確實的影響。在階段二中,我們開始思考這個問題:對于一個神經網絡,我們是不是能夠以較低的數值精度進行表示?答案是肯定的,當前許多優秀的有關低精度網絡的研究工作已經證實了這一點。
在一些研究工作中,降低神經網絡數值精度的技術已被證明在加速深度學習訓練和推理應用方面非常有效。2017 年微軟在 Hot Chips 上介紹 Brainwave 時,也討論了降低精度計算的好處。運行大型的神經網絡需要大量的內存帶寬和計算來進行權重獲取和點積運算,低精度網絡的目的就是解決由神經網絡過參數化問題而導致的模型占存儲空間大且訓練和推斷速度慢的問題。
當前針對低精度神經網絡的研究工作主要有兩大方面:低精度神經網絡模型訓練和模型推斷,我們主要由這兩方面入手,結合章節 3 中低精度神經網絡面臨的問題和挑戰對低精度神經網絡的發展現狀進行介紹,在章節 5 中本文會結合當前有關發展給出對未來方向的一些展望。
模型訓練
大多數深度學習框架,默認使用 32 位浮點(FP32)算法,是因為 32 位精度高、表示范圍大。但是,對于所有操作而言,使用 FP32 對于實現許多最先進的深度神經網絡(DNN)的完全準確性并不是必不可少的。
例如:Baidu Research 和 NVIDIA 研究人員介紹了一種混合精度訓練方法,討論了使用 16 位操作數和 32 位累加進行神經網絡訓練的好處,并且這種方法在一些大型神經網絡和復雜任務上都取得了很好的效果,這種算法在 Volta GPU 提供以下的性能優勢:FP16 將內存帶寬和存儲要求降低了 2 倍,還可實現高達 2 倍的加速;FP16 算法使 Volta Tensor Core 能夠在廣義矩陣乘法(GEMM)和卷積上提供 125 TFlops 的計算吞吐量,比 FP32 增加 8 倍吞吐量。
16 位訓練系統當前比較普遍,在此基礎上,IBM 研究人員在一系列深度學習數據集和神經網絡中實現了 8 位精度的訓練和 4 位精度的推理,使用 8 位浮點數成功訓練 DNN,同時在一系列深度學習模型和數據集上完全保持了準確率,在 ResNet50,AlexNet 和 BN50_DNN,以及一系列圖像,語音和文本數據集上,此技術相比于 16 位系統可達到 2 到 4 倍的加速比。
更極端的例子,比如在圖像領域已經取得較好研究成果的 Binarized Neural Networks(BNN)、Ternary Weight Networks(TWN)和 XNOR-Net,在這些網絡中僅僅使用 1bit 或者 2bit 數值進行網絡訓練,大大減少了存儲器消耗(存儲訪問的大小和數量),可用逐位運算取代了大多數算術運算,極大的提升了模型的效率。
雖然當前已經存在一些低精度研究工作證明了低精度神經網絡對模型優化的巨大潛力,但現有研究工作中還沒有完全的低精度神經網絡,這種完全是指在前向推斷和反向更新的各個部件中全部使用低精度數值,以圖 3 中混合精度方法的訓練過程舉例。雖然混合精度方法中使用的 16 位浮點有著 5 位指數位、10 位的尾數為,表示范圍大概是 5.96×10^-8~6.55×10^4,但仍需部分使用 32 位浮點數進行訓練。
▲?圖3. 混合精度訓練過程
低精度數值計算的優點是可以用一系列更快而且計算量更小的操作(如:位操作)來代替昂貴的浮點乘法操作,這不僅減少了內存的占用,還加速了網絡的計算。但若數值精度過低,網絡訓練的準確性顯著降低,這是由于低精度數值的表示范圍有限,無法很準確的來逼近真實值。低精度神經網絡的一個難點在于,低精度神經網絡數值是離散的,在反向梯度更新階段離散值難以求導,為低精度神經網絡的訓練帶來了極大的挑戰。
在當前階段的低精度神經網絡中,大多研究方法在反向階段仍使用高精度數值來進行梯度更新。但像 Binarized Neural Networks 這種網絡中不可避免的會存在一些硬閾值單元(Hard Thresholding),由于這類單元在幾乎所有情況下導數都為? 0,無法通過梯度下降進行訓練,這時可以使用一種直通估計(Straight-Through Estimator,STE)方法,將每個硬閾值單位的導數替換為一個確定值,解決了硬值域函數的求導問題。
來自 Stanford 和 Cornell 的研究學者采用了一種新的隨機梯度下降的變體,稱為高準確率低精度(High-Accuracy Low-Precision,HALP),這種方法減少了限制低精度 SGD 精度的兩個噪聲源:梯度方差和舍入誤差,可以比以前的算法做得更好。
模型推斷
現有的 GPU 和 CPU 集群配備了豐富的內存資源和計算單元,使得強大的 DNN 模型能夠在相對合理的時間段內進行訓練,但長時間的推理對于一些實時應用來說卻不切實際,因此我們需要神經網絡模型能使用低精度數值進行推斷。
降低模型精度是加速模型推斷過程的有效方法,在提升計算效率的同時降低了內存帶寬。從經驗上來說,相比于模型訓練階段,推斷階段對網絡中數值精度的要求更低。當前研究人員已經證明,深度學習訓練和推理都可以用較低的數值精度進行。
目前,有兩種主流方式可以降低推斷過程的數值精度:1)從模型訓練階段進行低精度訓練隨后進行推斷,這種方法中模型訓練和推斷過程是一致的,在上一小節已進行介紹,這里不再過多贅述;2)訓練后進行低精度的量化,這個方法在模型訓練之后進行操作,屬于訓練和推斷數值精度不一致的一種方法。
在第二類方法中,可以用聚類的方式(比如:K-means 聚類)來進行混合低精度數值推斷,也可以將網絡的參數精度固定至 4-12bit,或更極端的用 1-2bit 來表示每個模型參數,即網絡權重只能是 1 或者 -1,這種方法比較極端,可以極大減少浮點數的操作并簡化專門為深度學習設計的硬件的實現方式。
對于混合低精度數值推斷工作,Intel 并行計算實驗室的研究人員在 Mixed Low-precision Deep Learning Inference using Dynamic FixedPoint 中用一種基于聚類的量化方法進行混合低精度數值的推斷,在此種方法中網絡中數值精度并不固定,將預先訓練的單精度權重轉換為三值權重,對于激活函數統一采取8位整數表示,這里的三值操作會導致模型性能明顯的下降,因此最后還需要進行模型參數微調。和單精度神經網絡相比,此研究工作可達到 16 倍的模型效率優化。
在當前比較流行的 Transformer 上,也有研究者進行了相關工作。在 Aishwarya Bhandare 等人的研究工作 Efficient 8-BitQuantization of Transformer Neural Machine Language Translation Model 中,首次在 Transformer 模型上進行神經機器翻譯推斷階段的模型量化工作,用 8-bit 整數操作代替 32-bit 的浮點操作,一個最簡單的 8-bit 整數矩陣乘法量化過程如圖 4 所示。
▲?圖4. 8-bit整數乘法量化過程
在該方法中,先將輸入張量量化到 8-bit 整數,然后利用整數計算來加速整數乘法操作,為了保證乘法結果不溢出,計算結果用 32-bit 整數來保存。
總結
本小節主要針對第三部分的問題和挑戰,對當前低精度神經網絡的發展現狀進行總結。
當前,針對低精度神經網絡的研究工作確實不少,但理論支持并不完備?,F在的神經網絡低精度化方法其實大同小異,對于某一神經網絡,其低精度化的最大程度往往是由反復實驗得出,而不是通過數學上的理論推導。
值得欣慰的是,當前研究人員已經開始從數值分布的角度來思考低精度神經網絡,但相關理論部分還有待進一步挖掘。對于容易產生上溢或下溢的一些操作,現在的研究方法都是使用表示范圍較大的單精度浮點進行計算,但更理想的解決方案是使用更高效的數值進行計算,以最大程度的提升模型效率。
現有的低精度神經網絡的反向傳播大多仍使用高精度數值,其過程均基于反向傳播方法,如何在神經網絡反向部分使用低精度數值,并基于低精度數值進行離散空間的優化是一個值得研究的問題。
未來展望
目前對于低精度神經網絡的研究仍屬于初級階段,當前的一些工作大多在小數據集和小規模模型上進行實驗,如何在大規模神經網絡上驗證低精度神經網絡的有效性,并利用低精度數值運算進行神經網絡模型的加速仍是一個值得研究的問題。個人認為低精度神經網絡模型有以下幾個研究點非常值得研究:
1.?低精度神經網絡的數學原理:當前缺乏針對低精度神經網絡的分析類工作,如何針對某一神經網絡,在保證其網絡準確率的前提下,分析論證其理論上可達到的最低數值精度,是一個值得深思的問題。
2.?低精度神經網絡+離散空間優化:受 Hinton 的 Capsule 計劃的啟發,越來越多的研究人員開始探討代替反向傳播的方法。由于低精度神經網絡中參數分布較為離散,反向傳播算法顯然不適用,當前研究工作大多仍然采用高精度數值來進行反向梯度更新,缺少離散空間優化問題的求解。
3.?低精度神經網絡+其他優化目標:將低精度神經網絡和一些其他的優化目標相結合,在盡可能高的提升模型計算效率的前提下增加其他的一些優化目標(諸如資源限制),這非常有利于有限資源環境下的神經網絡模型部署。
4. 低精度神經網絡+結構學習:神經網絡模型中的不同模塊需要不同的精度,可以將其與結構學習相結合,結構學習的搜索結果為一個低精度網絡,不同模塊可以有不同的精度表示。
相關資料
1. Dean J, Corrado G S, Monga R, et al. Large scale distributed deep networks[C]//International Conference on Neural Information Processing Systems. CurranAssociates Inc. 2012:1223-1231.
2. Han S, Mao H, Dally W J. Deep compression: Compressing deep neural networks withpruning, trained quantization and huffman coding[J]. arXiv preprintarXiv:1510.00149, 2015.
3.?Gupta S, Agrawal A, Gopalakrishnan K, et al. Deep learning with limited numericalprecision[C]//International Conference on Machine Learning. 2015: 1737-1746.
4.?林野, 姜雨帆, 肖桐,等. 面向神經機器翻譯的模型存儲壓縮方法分析[J]. 中文信息學報, 2019, 33(1):98-107.
5.?CourbariauxM, Bengio Y, David J, et al. Low precision arithmetic for deep learning[J].international conference on learning representations, 2014.
6.?CourbariauxM, Bengio Y, David J P. Training deep neural networks with low precisionmultiplications[J]. arXiv preprint arXiv:1412.7024, 2014.
7.?MicikeviciusP, Narang S, Alben J, et al. Mixed precision training[J]. arXiv preprintarXiv:1710.03740, 2017.
8.?Wang N, Choi J, Brand D, et al. Training deep neural networks with 8-bit floatingpoint numbers[C]//Advances in neural information processing systems. 2018:7675-7684.
9.?CourbariauxM, Bengio Y. Binarynet: Training deep neural networks with weights andactivations constrained to+ 1 or? 1. arXiv 2016[J]. arXiv preprintarXiv:1602.02830.
10.?Lahoud F, Achanta R, Márquez-Neila P, et al. Self-Binarizing Networks[J]. arXiv preprintarXiv:1902.00730, 2019.
11.?Li F, Zhang B, Liu B. Ternaryweight networks[J]. arXiv preprint arXiv:1605.04711, 2016.
12.?Rastegari M, Ordonez V, RedmonJ, et al. Xnor-net: Imagenet classification using binary convolutional neuralnetworks[C]//European Conference on Computer Vision. Springer, Cham, 2016:525-542.
13.?De Sa C, Leszczynski M, ZhangJ, et al. High-accuracy low-precision training[J]. arXiv preprintarXiv:1803.03383, 2018.
14.?Moons B, Goetschalckx K, VanBerckelaer N, et al. Minimum energy quantized neural networks[C]//2017 51stAsilomar Conference on Signals, Systems, and Computers. IEEE, 2017: 1921-1925.
15.?Quinn J, Ballesteros M. Piecesof eight: 8-bit neural machine translation[J]. arXiv preprint arXiv:1804.05038,2018.
16.?Banner R, Hubara I, Hoffer E,et al. Scalable methods for 8-bit training of neural networks[C]//Advances inNeural Information Processing Systems. 2018: 5145-5153.
17.?Ott M, Edunov S, Grangier D,et al. Scaling neural machine translation[J]. arXiv preprint arXiv:1806.00187,2018.
18.?Mellempudi N, Kundu A, Das D,et al. Mixed low-precision deep learning inference using dynamic fixedpoint[J]. arXiv preprint arXiv:1701.08978, 2017.
19.?Bhandare A, Sripathi V,Karkada D, et al. Efficient 8-Bit Quantization of Transformer Neural MachineLanguage Translation Model[J]. arXiv preprint arXiv:1906.00532, 2019.
20.?Friesen A L, Domingos P M.Deep Learning as a Mixed Convex-Combinatorial Optimization Problem[J].international conference on learning representations, 2018.
本文作者介紹:
林野,東北大學自然語言處理實驗室 2019 級博士生,研究方向:機器翻譯、模型壓縮、模型加速。
東北大學自然語言處理實驗室:
東北大學自然語言處理實驗室由姚天順教授創建于 1980 年,現由朱靖波教授領導,長期從事計算語言學的相關研究工作,主要包括機器翻譯、語言分析、文本挖掘等。
點擊以下標題查看更多往期內容:?
圖神經網絡綜述:模型與應用
ACL 2019 | 基于知識增強的語言表示模型
ACL 2019 | 基于上下文感知的向量優化
基于小樣本學習的意圖識別冷啟動
復旦大學邱錫鵬:詞法、句法分析研究進展綜述
ACL 2019?| 句對匹配的樣本選擇偏差與去偏方法
深度長文:NLP的巨人肩膀(上)
NLP 的巨人肩膀(下):從 CoVe 到 BERT
#投 稿 通 道#
?讓你的論文被更多人看到?
如何才能讓更多的優質內容以更短路徑到達讀者群體,縮短讀者尋找優質內容的成本呢?答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學者和學術靈感相互碰撞,迸發出更多的可能性。
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優質內容,可以是最新論文解讀,也可以是學習心得或技術干貨。我們的目的只有一個,讓知識真正流動起來。
??來稿標準:
? 稿件確系個人原創作品,來稿需注明作者個人信息(姓名+學校/工作單位+學歷/職位+研究方向)?
? 如果文章并非首發,請在投稿時提醒并附上所有已發布鏈接?
? PaperWeekly 默認每篇文章都是首發,均會添加“原創”標志
? 投稿郵箱:
? 投稿郵箱:hr@paperweekly.site?
? 所有文章配圖,請單獨在附件中發送?
? 請留下即時聯系方式(微信或手機),以便我們在編輯發布時和作者溝通
?
現在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關注」訂閱我們的專欄吧
關于PaperWeekly
PaperWeekly 是一個推薦、解讀、討論、報道人工智能前沿論文成果的學術平臺。如果你研究或從事 AI 領域,歡迎在公眾號后臺點擊「交流群」,小助手將把你帶入 PaperWeekly 的交流群里。
▽ 點擊 |?閱讀原文?| 獲取最新論文推薦
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的低精度神经网络:从数值计算角度优化模型效率的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: KDD 2019 | 使用神经网络为A*
- 下一篇: 直播报名 | CUDA优化:高性能库cu