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

百度聯合北京大學發布首篇《自然語言生成保真性》的綜述論文,非常值得關注!

由于預訓練語言模型等深度學習技術的發展,自然語言生成(NLG)近年來取得了很大的進展。這一進步導致了更流暢、連貫甚至屬性可控(例如,文體、情感、長度等)的生成,自然地導致了下游任務的發展,如抽象摘要、對話生成、機器翻譯和數據到文本的生成。然而,生成的文本通常包含不真實的信息,這一問題已經成為文本生成的最大挑戰,使得文本生成的性能在許多現實場景的實際應用中不能令人滿意。針對不同的任務提出了許多關于保真性問題的分析、評價和優化方法的研究,但并沒有結合起來進行組織、比較和討論本文從問題分析、評價指標和優化方法三個方面,系統地綜述了近年來NLG保真性問題的研究進展。我們將不同任務的評估和優化方法組織成一個統一的分類,以便于任務之間的比較和學習。并進一步討論了今后的研究方向。

引言

自然語言生成(NLG)是從文本或非文本輸入中生成自然語言文本的過程,以滿足特定的交流目標(Gatt和Krahmer, 2018)。NLG的輸入隨著任務設置的不同而不同,但是輸出總是可讀的自然語言文本。根據輸入類型,NLG的任務主要可以分為: 文本到文本的生成、數據到文本的生成和多模態到文本的生成。文本到文本的生成任務將現有文本作為輸入,并自動生成新的、連貫的文本作為輸出。最常見的應用包括:文本摘要(Allahyari et al., 2017)、對話生成(Li et al., 2016b)、機器翻譯(Koehn, 2009)、問題生成(Du et al., 2017)、釋義生成(Li et al., 2017)等。數據到文本的生成任務從數字數據或結構化數據(如表、鍵值列表和元組)自動生成文本。示例應用包括:表格到文本的生成(Liuet al.,,2018b)、kg到文本的生成(Ke et al.,,2021)、意義到文本的生成(Song et al.,2018)等。多模態到文本的生成任務將多模態輸入(如圖像或視頻)中的語義轉換為自然語言文本。典型任務包括圖像字幕(Vinyals等人,2015年)、視覺敘事(Huang et al.,2016年)和視頻摘要(Ma et al.,2002年)。

圖1 NLG面臨的挑戰有四個方面。保真性已成為現代自然語言時代最大的挑戰。

從輸入-輸出信息轉換的角度來看,自然語言學習的任務可分為開放式語言生成和非開放式語言生成。開放式語言生成任務是指輸入不完整且輸入不包含輸出語義的任務。例如,故事生成是一種經典的開放式語言生成任務,它傾向于基于一些引導句或關鍵詞生成一個完整的故事。顯然,模型需要創建新的信息來完成故事情節規劃和生成有意義的故事。開放式語言生成任務的最大特征之一是輸入和輸出之間的信息映射通常是一對多的。相同的輸入可以產生許多具有不同含義的輸出。相比之下,對于非開放式語言生成任務,輸入通常為輸出提供完整甚至更多的信息。機器翻譯是一種典型的非開放式語言生成任務,輸入為輸出提供完整的語義。釋義生成可以看作是一種等價的信息轉換,其中輸入和輸出語義完全相同,但語言表達不同。在文本摘要中,輸入通常比輸出提供更多的信息,因此摘要模型需要選擇顯著性信息來產生摘要輸出。

自然語言生成發展

NLG的研究歷史悠久,始于20世紀50年代。NLG方法的發展主要可分為基于模板、基于統計、基于神經網絡和基于訓練前的四個階段,如表2所示。

  • 基于模板的。最早的自然語言生成系統采用規則和模板的方法來設計不同的文本生成模塊,反映了許多專家設計的詞匯、語法、句法甚至語用方面的語言知識。它們通常由幾個不同的組件組成,包括內容規劃、句子規劃和文本實現,每個組件都執行特定的功能。

  • Statistical-based。統計語言模型進一步從概率和統計的角度提出了一種新的語言建模思想,將詞匯和上下文之間的依賴關系編碼在條件概率中。N-gram語言模型是目前最流行的統計語言模型,通常會結合基于模板的方法對生成的流暢文本進行重新排序和選擇。

  • Neural-based。 隨著深度學習的發展,基于神經網絡的端到端方法逐漸占據主導地位,通過端到端訓練可以更好地建模詞匯與上下文之間的統計共現關系,從而顯著提高文本生成性能。NLG已經探索了各種神經結構,如循環神經網絡(RNN) (Graves, 2013; Zaremba et al., 2014),卷積神經網絡(CNN) (Kalchbrenner et al., 2014)和自注意力Transformer網絡(Vaswani et al., 2017)。

  • Pretraining-based。 最近,基于Transformer架構的預訓練語言生成模型能夠更好地捕捉詞匯、語法和語義等語言知識,極大地促進了自然語言生成的發展。預訓練語言模型的興起(Brown et al., 2020; Devlin et al., 2018; Liu et al., 2019c)已經導致了包括文本摘要在內的應用程序的強文本生成模型(Dong et al., 2019; Liu and Lapata, 2019; Zhang et al., 2020b),對話生成(Bao et al., 2020; Zhang et al., 2019)、數據到文本的生成(Chen et al 2020b)和機器翻譯(Liu et al,2020)。然而,盡管這些模型生成了流暢的語法文本,但它們容易產生與輸入文本相矛盾的事實錯誤(Cao et al., 2017)。

傳統的基于模板的文本生成方法通常能夠生成可靠、保真性的文本,但由于規則的多樣性和通用性的限制,生成的文本往往存在流暢性和信息量大的問題。該方法通過對大型語料庫的端到端訓練,可以生成流暢、信息豐富的文本。但由于概率抽樣機制的引入,他們每次都需要從模型估計的概率分布中進行抽樣。考慮到詞匯量非常大,一般在1000 ~ 50000個數量級,概率分布不可避免地包含大量出現概率低的長尾詞,再加上概率抽樣本身的隨機性,基于神經網絡的NLG模型的可控性和保真性尤為嚴重。在預訓練時代,通過對大規模無標記語料庫進行自監督訓練,模型生成的文本在流暢性、信息量甚至可控性方面都表現突出,但仍不能解決保真性問題。

本文結構

該綜述的內容類型如圖3所示。在第二節中,我們系統地分析了NLG中的保真性問題,包括不保真誤的分類、人工標注、保真度評估和優化面臨的挑戰、原因分析以及與其他方面的關系。在第三節中,我們將提出的各種保真度評價指標進行組織,并將這些指標的元評價相結合,以促進未來保真度評價的研究。在第4節中,我們從任務和方法論的角度總結了不同的優化方法,并詳細說明了它們的相對優勢

付費5元查看完整內容

相關內容

自然語言生成(NLG)是自然語言處理的一部分,從知識庫或邏輯形式等等機器表述系統去生成自然語言。這種形式表述當作心理表述的模型時,心理語言學家會選用語言產出這個術語。自然語言生成系統可以說是一種將資料轉換成自然語言表述的翻譯器。NLG出現已久,但是商業NLG技術直到最近才變得普及。自然語言生成可以視為自然語言理解的反向: 自然語言理解系統須要厘清輸入句的意涵,從而產生機器表述語言;自然語言生成系統須要決定如何把概念轉化成語言。

由于預訓練語言模型等深度學習技術的發展,自然語言生成(NLG)近年來取得了很大的進展。這一進步導致了更流暢、連貫甚至屬性可控(例如,文體、情感、長度等)的生成,自然地導致了下游任務的發展,如抽象摘要、對話生成、機器翻譯和數據到文本的生成。然而,生成的文本通常包含不保真或不真實的信息,這一問題已經成為文本生成的最大挑戰,使得文本生成的性能在許多現實場景的實際應用中不能令人滿意。針對不同的任務提出了許多關于忠誠度問題的分析、評價和優化方法的研究,但并沒有結合起來進行組織、比較和討論。本文從問題分析、評價指標和優化方法三個方面,系統地綜述了近年來NLG保真性問題的研究進展。我們將不同任務的評估和優化方法組織成一個統一的分類,以便于任務之間的比較和學習。并進一步討論了今后的研究方向。

付費5元查看完整內容

本文綜述了近20年來自然語言生成(NLG)的研究進展,特別是數據到文本的生成和文本到文本的深度學習方法,以及NLG技術的新應用。本綜述的目的是(a)給出了NLG核心任務的深度學習研究的最新綜合,以及該領域采用的架構; b)對NLG的各項任務和數據集進行細致全面的細化,關注NLG評價的挑戰,重點關注不同的評價方法及其關系; c) 強調由于NLG與其他人工智能領域(如計算機視覺、文本和計算創造力)日益增強的協同作用而產生的一些未來重點和相對近期的研究問題。

本文綜述了自然語言生成(NLG)的研究現狀,它被定義為從潛在的非語言信息表示中生成文本的任務[85]。由于其極具挑戰性和廣闊的應用前景,近年來受到越來越多研究者的關注。

什么是自然語言生成?

自然語言生成(NLG)是為了達到特定交流目標而生成自然語言文本的過程。生成的文本可以是回答一個問題的一個短語,通過對話中的多句注釋和問題,到整頁的解釋。自然語言理解(NLU)的組織過程可以遵循語言學分析的傳統階段: 詞法、句法、語義、語用/話語,與之相比,生成過程具有根本不同的特征。生成過程包括從內容到形式的內容規劃、確定和實現,從意圖和視角到線性排列的詞語和句法標記。再加上它的應用、情境和話語,它們提供了在語言提供的備選詞匯和結構中做出選擇的基礎,這是有意構建文本的主要努力[62]。由于其相反的信息流,人們可能會假設一個生成過程可以像理解過程一樣組織起來,但其階段順序是相反的。

數據到文本的生成和文本到文本的生成都是NLG的實例。從圖像生成文本是數據到文本生成的一種應用。文本到文本生成的進一步復雜化是將NLG任務分為三類,即文本縮寫、文本擴展、文本重寫和推理。文本縮寫任務是將長文本信息壓縮為短文本的任務,通常包括文本摘要[6,7,15,17,43,80,99]、問題生成[4,18,34,36,53,95,104,112,113,130,134]和干擾物生成[22,50,60,72,82,86,100,101]。文本擴展任務,如短文本擴展[5,89,96,106]和主題到短文的生成[19,81,114,123,129],通過考慮并添加連詞和介詞等元素,將輸入的單詞轉換為語言正確的輸出,從而生成完整的句子甚至文本。文本改寫和推理任務的目標是將文本改寫成另一種風格或運用推理方法生成反應。其中有兩個子任務:文本風格遷移[9,20,33,58,64,69,79,120,133]和對話生成[3,35,46,49,59,115,122,135]。基于視覺的文本生成任務以生成給定圖像或視頻的解釋或摘要為目標,涉及圖像字幕[1,57,87,110,125,126],視頻描述[16,39,42,72,97,103,109,111,118],視覺講故事[30,45,124]。

在本文中,我們對不同的自然語言生成任務及其相應的數據集和方法進行了全面的回顧。綜上所述,本文對自然語言生成行了廣泛的研究,并做出了以下貢獻:

(1) 對自然語言生成的核心任務以及該領域采用的體系結構進行了最新的綜合研究;

(2) 細致、全面地詳細描述自然生態生成的各種任務和數據集,關注自然生態生成評價面臨的挑戰,關注不同的評價方法及其相互關系。

(3) 強調由于NLG與其他人工智能領域(如計算機視覺、文本和計算創造力)日益增強的協同作用而產生的一些未來的重點和相對近期的研究問題。

本綜述的其余部分組織如下。在第二節中,我們介紹了NLG的一般方法,使我們有一個全面的認識。從第3節到第6節,我們將從任務、數據和方法的角度全面介紹NLG的四個主要領域。在第7節中,我們介紹了前面提到的各種NLG任務中使用的重要評價指標。此外,在第8章中,我們提出了NLG的一些問題和挑戰,以及未來的幾個研究方向。最后我們在第9節結束我們的綜述。

自然語言生成未來挑戰

在本部分中,我們主要指出了四個值得進一步解決和研究的問題和挑戰,包括評價方法、外部知識融入、可控生成和多模態情景。

評價方法仍然是自然語言生成領域一個重要而開放的研究領域。正如[12]所指出的,傳統的未經訓練的評價指標并不總是能夠很好地與人類判斷相關聯,而最近的機器學習指標需要大量的人類注釋,且并不總是具有良好的可遷移性。因此,在這一領域仍存在大量的挑戰和改進空間。

外部知識融入-考慮到原始文本中所包含的信息有限以及生成令人滿意的句子的難度[128],吸收外部知識對提高性能至關重要。因此,如何獲取有用的、相關的知識,以及如何有效地吸收這些知識仍是值得研究的問題。

可控生成-另一個具有挑戰性的問題是如何生成我們想要的可控自然語言。盡管在這一領域已經做了大量的工作來研究如何執行各種各樣的受控文本生成,但仍然缺乏統一的范例和標準。更重要的是,對于不同的受控內容,如何衡量生成文本的可控性仍然是一個開放的問題。

多模態情景近年來,多模態情景下的各種應用研究逐漸引起了自然語言處理研究者們的關注。如何將自然語言生成方法應用于多模態場景是一個值得研究的問題,也是一個很有前途的方向。有理由相信,將豐富的多模態信息應用到自然語言生成任務中,必將進一步推動這一方向的進步和發展。

付費5元查看完整內容

導讀:本文將參考上述綜述論文,從預訓練語言模型應用于文本生成任務的三個挑戰出發:

如何對輸入數據進行編碼并保持語義,使其與預訓練語言模型進行融合; 如何設計通用且合適的預訓練語言模型架構,使其作為生成函數; 如何優化生成函數,并保證生成文本滿足特殊屬性。 并詳細列舉目前每個挑戰下的研究進展。

文本生成是目前自然語言處理領域一項非常重要但具有挑戰性的任務,它的目的是希望生成可讀的自然語言文本,比較有代表性的應用,例如對話系統、文本摘要和機器翻譯等。

目前,深度神經模型在文本生成研究中已取得重大進展,其優勢在于深度神經網絡可以端到端地學習輸入數據到輸出文本的語義映射,而不需要人工參與進行特征工程。但是,深度神經模型往往具有大量的參數,而大部分文本生成任務數據集都非常小,因此深度神經網絡非常容易在這些數據集上過擬合,導致其無法在實際應用中進行泛化。

隨著預訓練語言模型(Pretrained Language Models, PLMs)范式的蓬勃發展,越來越多的研究將其運用到各種自然語言處理任務中以取得SOTA效果,例如BERT解決語言理解和GPT解決語言生成。通過在大規模語料集上進行預訓練,預訓練語言模型可以準確地理解自然語言并以自然語言的形式流暢表達,這兩項都是完成文本生成任務的重要能力。

付費5元查看完整內容

摘要

科技的新時代讓人們可以方便地在各種平臺上分享自己的觀點。這些平臺為用戶提供了多種形式的表達方式,包括文本、圖像、視頻和音頻。然而,這使得用戶很難獲得關于一個主題的所有關鍵信息,使得自動多模態摘要(MMS)的任務必不可少。在本文中,我們對MMS領域的現有研究進行了全面的綜述。

//www.zhuanzhi.ai/paper/505f92ea3f81f199063a75af8f594fdf

引言

每天,互聯網都充斥著來自多個來源的大量新信息。由于技術的進步,人們現在可以以多種格式共享信息,并使用多種通信模式供他們使用。互聯網上日益增多的內容使得用戶很難從大量的資源中獲取有用的信息,因此有必要研究多模態摘要,與純文本摘要相比,視覺摘要平均能提高12.4%的用戶滿意度。事實上,幾乎每一個內容共享平臺提供陪一個觀點或事實以多種媒體形式,和每一個手機都有這個功能的設施表明多式的通訊手段的優越性的緩解在傳達和理解信息。

多模態輸入形式的信息已被用于除摘要之外的許多任務,包括多模態機器翻譯[11,21,22,39,108]、多模態移動預測[18,53,120]、電子商務產品分類[128]、多模態交互式人工智能框架[51]、多模態表情預測[5,17],多模態框架識別[10],多模態金融風險預測[59,101],多模態情感分析[79,93,122],多模態命名身份識別[2,77,78,109,126,130],多模態視頻描述生成[37,38,91],多模態產品標題壓縮[70]和多模態生物特征認證[28,42,106]。多模態信息處理和檢索任務的應用可能性是相當可觀的。多通道研究還可用于其他密切相關的研究問題,如圖像描述[14,15]、圖像到圖像的翻譯[40]、抗震路面試驗[94]、美學評價[55,67,129]和視覺問答[49]。

文本摘要是自然語言處理(NLP)和信息檢索(IR)領域最古老的問題之一,由于其具有挑戰性和廣泛的應用前景,引起了眾多研究者的關注。文本摘要的研究可以追溯到六十多年前[69]。NLP和IR社區通過開發無數的技術和模型體系結構來解決針對多個應用的文本摘要研究。作為這個問題的延伸,多模態摘要結的問題增加了另一個角度,結合了視覺和聽覺方面的混合,使任務更有挑戰性和有趣的處理。將多種模態納入摘要問題的擴展擴展了問題的廣度,導致任務的應用范圍更廣。近年來,多模態摘要經歷了許多新的發展(參見圖1關于MMS趨勢的統計),包括新數據集的發布,處理MMS任務的技術的進步,以及更合適的評估指標的建議。多模態摘要的思想是一個相當靈活的,包含了輸入和輸出方式的廣泛可能性,也使得單模態摘要技術的知識很難理解MMS任務的現有工作。這就需要對多模態摘要進行調研。

MMS任務與任何單模態摘要任務一樣,是一個要求很高的任務,且存在多個正確解,因此非常具有挑戰性。創建多模態摘要的人必須使用他們之前的理解和外部知識來生成內容。建立計算機系統來模仿這種行為變得困難,因為它們內在缺乏人類的感知和知識,使自動多模態摘要的問題成為一項重要但有趣的任務。盡管有相當多的調研論文是針對單模態摘要任務撰寫的,包括文本摘要[31,32,81,112,124]和視頻摘要[6,41,52,76,102],以及多模態研究[3,4,43,90,103,107]的調研論文。然而,據我們所知,我們是第一個提出多模摘要的調研。通過這份手稿,我們統一和系統化的信息在相關的工作,包括數據集,方法論,和評價技術。通過這項調研,我們旨在幫助研究人員熟悉各種技術和資源,以進行多模式摘要領域的研究。

多模態摘要方法

許多研究嘗試使用有監督和無監督技術來解決MMS任務。在本節中,我們試圖以一種通用的方式描述MMS框架,闡明不同方法的細微差別。由于所使用的各種輸入、輸出和技術跨越了一個很大的可能性范圍,我們將分別描述每一個可能性。我們將這一節分為三個階段:預處理、主模型和后處理。

  • 預處理:在多模態環境中,預處理是至關重要的一步,因為它涉及從不同模態中提取特征。每個輸入模態都使用模態特征提取技術進行處理。盡管有些工作傾向于使用自己提出的模型來學習數據的語義表示,但幾乎所有的作品都遵循相同的預處理步驟。由于相關的作品有不同的輸入模態,我們分別描述了每種模態的預處理技術。

  • 主模型:利用提取的特征來執行MMS任務已經采用了很多不同的技術。圖3顯示了研究人員解決MMS任務所采用的技術分析。我們已經嘗試了幾乎所有最近的架構,主要集中在以文本為中心的輸出摘要。在以文本為中心形式的方法中,相鄰形式被視為文本摘要的補充,通常在后處理步驟中被選擇(章節4.3)。

  • 后處理:后期處理大部分現有工作無法生成多模態摘要。生成的系統綜合總結有一個內置的系統能產生多通道輸出(主要是通過生成文本使用seq2seq機制和選擇相關圖片)(61、134)或者他們采取一些后處理步驟,獲得視覺和聲音補充劑生成的文本摘要[133]。神經網絡模型使用多模態注意力機制來確定每個輸入情況的模態相關性,用于選擇最合適的圖像[12,133]。更準確地說,使用視覺覆蓋評分(在最后解碼步驟之后),即生成文本摘要時的注意力值之和,來確定最相關的圖像。根據任務需要,可以提取單幅圖像[133],也可以提取多幅圖像[13]來補充文本。

由于技術的進步,人們可以方便地以多種方式創建和共享信息,這在十年前是不可能的。由于這種進步,對多模態摘要的需求正在增加。我們提出了一項調研,以幫助熟悉用戶的工具和技術目前的MMS任務。在這份手稿中,我們正式定義了多模態摘要的任務,我們還根據各種輸入、輸出和技術相關的細節,對現有的作品進行了廣泛的分類。然后,我們包括用于處理MMS任務的數據集的全面描述。此外,我們還簡要描述了用于解決MMS任務的各種技術,以及用于判斷產生的摘要質量的評價指標。最后,本文還提出了MMS研究的幾個可能方向。我們希望這篇調研論文能夠對多模態摘要的研究起到重要的推動作用。

付費5元查看完整內容

自然語言生成(NLG)技術利用人工智能和語言學的方法來自動地生成可理解的自然語言文本。NLG降低了人類和計算機之間溝通的難度,被廣泛應用于機器新聞寫作、聊天機器人等領域,已經成為人工智能的研究熱點之一。首先,列舉了當前主流的NLG的方法和模型,并詳細對比了這些方法和模型的優缺點;然后,分別針對文本到文本、數據到文本和圖像到文本等三種NLG技術,總結并分析了應用領域、存在的問題和當前的研究進展;進而,闡述了上述生成技術的常用評價方法及其適用范圍;最后,給出了當前NLG技術的發展趨勢和研究難點。

//www.joca.cn/CN/abstract/abstract24496.shtml

付費5元查看完整內容

自然語言生成經過幾十年的發展,已經成為人工智能和自然語言處理的重要研究領域。最早的自然語言生成系統采用規則、模板的方法,設計各司其職的模塊進行文本生成,其中體現了很多專家設計的詞匯、語法、句法甚至語用的語言學知識。統計語言模型則從概率統計的角度提出了語言建模的新思路,將詞匯與上下文的依賴關系編碼在條件概率中。以深度學習模型為基本架構的現代語言生成模型絕大多數通過端到端訓練的方式,能更好地建模詞匯與上下文之間統計共現關系,顯著地提升了文本生成的性能。特別是以Transformer為基礎架構的預訓練語言生成模型,能夠較好地捕獲包括詞匯、語法、句法、語義等各層面的語言學知識,極大地推動了自然語言生成的進展,生成效果令人驚嘆。

? 自然語言生成(NLG)是自然語言處理的一個子領域

? 專注于構建系統,自動生成連貫和有用的書面或口頭文本供人類使用

? NLG系統已經在改變我們生活的世界……

付費5元查看完整內容

文本生成的目標是讓機器用人類語言表達。它是自然語言處理(NLP)中最重要也是最具挑戰性的任務之一。自2014年以來,各種由Seq2Seq首創的神經編解碼器模型被提出,通過學習將輸入文本映射到輸出文本來實現這一目標。然而,僅憑輸入文本往往無法提供有限的知識來生成所需的輸出,因此在許多真實場景中,文本生成的性能仍然遠遠不能令人滿意。為了解決這個問題,研究人員考慮將輸入文本之外的各種形式的知識納入生成模型中。這一研究方向被稱為知識增強文本生成。在這項綜述中,我們提出了一個全面的綜述,在過去的五年里,知識增強文本生成的研究。主要內容包括兩部分:(一)將知識集成到文本生成中的一般方法和體系結構;(二)根據不同形式的知識數據的具體技術和應用。這項綜述在學術界和工業可以有廣泛的受眾,研究人員和實踐者。

//arxiv.org/abs/2010.04389

付費5元查看完整內容

【導讀】近年來深度學習芯片的研究發展是業界關注的焦點。專知之前報道過Google AI Jeff Dean獨自撰文的關于AI時代芯片的歷史發展趨勢-【Google Jeff Dean獨自署名論文】深度學習革命及其對計算機架構和芯片設計的影響,講述AI芯片發展歷程與未來,但學術業界一直缺乏對當前深度學習編譯器框架的綜述。最近北航的學者撰寫了第一篇關于當下深度學習編譯器的綜述論文《The Deep Learning Compiler: A Comprehensive Survey》36頁pdf1,從各個方面對現有的DL編譯器進行了全面的比較。此外,還詳細分析了多級紅外設計和編譯優化技術。最后,指出了DL編譯器的研究方向,很好的論文。

摘要

在不同的DL硬件上部署各種深度學習(DL)模型的困難,促進了社區中DL編譯器的研究和開發。工業界和學術界已經提出了幾個DL編譯器,如Tensorflow XLA和TVM。類似地,DL編譯器將不同DL框架中描述的DL模型作為輸入,然后為不同的DL硬件生成優化代碼作為輸出。然而,現有的綜述論文沒有一個全面地分析DL編譯器的獨特設計。在本文中,我們通過剖析通常采用的設計細節,對現有的DL編譯器進行了全面的調研,重點是面向DL的多級IRs和前端/后端優化。具體來說,我們從各個方面對現有的DL編譯器進行了全面的比較。此外,還詳細分析了多級紅外設計和編譯優化技術。最后,指出了DL編譯器的研究方向。這是第一篇關于DL編譯器的獨特設計的綜述論文,我們希望能夠為將來DL編譯器的研究鋪平道路。

概述

深度學習(DL)的發展對各個科學領域產生了深遠的影響。它不僅在自然語言處理(NLP) (Manning et al., 1999)和計算機視覺(CV) (Forsyth and Ponce, 2002)等人工智能領域顯示出顯著的價值,而且在電子商務(Ha et al., 2016)、智慧城市(Mohammadi et al., 2017)和藥物發現(Chen et al., 2018a)等更廣泛的應用領域也取得了巨大的成功。隨著卷積神經網絡(convolutional neural network, CNN) (LeCun et al., 1998)、遞歸神經網絡(neural network, RNN) (Rumelhart et al., 1986)、長短時記憶(long short-term memory, LSTM) (Hochreiter and Schmidhuber, 1997)、生成對抗網絡(adversarial network, GAN) (Goodfellow et al., 2014)等多種深度學習模型的出現,簡化DL模型的編程是實現其廣泛應用的關鍵。

在工業界和學術界的不斷努力下,為了簡化各種DL模型的應用,提出了TensorFlow (Abadi et al., 2016)、PyTorch (Paszke et al., 2019)、MXNet (Chen et al., 2015)和CNTK (Seide and Agarwal, 2016)等流行的DL編程框架。盡管上述DL編程框架的優點和缺點取決于它們設計中的折衷方案,但是互操作性對于減少冗余工程工作變得非常重要,因為它支持跨現有DL模型的新出現的DL模型。為了提高互操作性,ONNX (onn, [n.d.])被提議定義一種表示DL模型的開放源碼格式,這種格式可以促進不同DL框架之間的模型轉換。

與此同時,矩陣乘法等獨特的計算特性激發了芯片架構師為提高效率而設計定制DL芯片的熱情。互聯網巨頭(如谷歌TPU (Jouppi等,2017年),Hisilicon NPU (Liao等,2019年),蘋果Bonic (Kingsley-Hughes, 2017年)),處理器供應商(如NNP (tur, [n.d]),英特爾NNP (NNP, [n.d])),服務提供商(如亞馬遜推論(inf, [n.d]),阿里巴巴Hanguang (han, [n.d]),甚至初創公司(如Cambricon (Liu等,2016年),Graphcore (Jia等,為了提高DL模型的計算能力,他們投入了大量的人力和資本來開發DL芯片。一般來說,DL芯片的種類包括:1)通用芯片與軟硬件協同設計;2)完全定制DL機型專用芯片;3)受生物腦科學啟發的神經形態芯片。例如,通用芯片(如CPU、GPU)增加了AVX512矢量單元和張量核等特殊硬件組件來加速DL模型。而對于專用芯片,如谷歌張量處理單元(TPU),應用特定的集成電路(如矩陣乘法引擎和高帶寬內存)被設計來提高性能和能源效率到極致。在可預見的未來,DL芯片的設計將變得更加多樣化。

為了在不同的DL芯片上加速DL模型,有效地將計算映射到DL芯片是很重要的。在通用芯片上,高度優化的線性代數庫(如基本線性代數子程序庫(BLAS))(如MKL和cuBLAS)是DL模型高效計算的基礎。以卷積運算為例,DL框架將卷積轉換為矩陣乘法,然后調用BLAS庫中的GEMM函數。此外,芯片廠商還為DL計算(例如,MKL-DNN和cuDNN)發布了特別優化的庫,包括前向和后向卷積、池化、標準化和激活。還開發了更高級的工具來進一步加速DL操作。以TensorRT (ten, [n.d])為例,它支持圖形優化(如層融合)和低比特量化,并具有大量高度優化的GPU內核。在專用的DL芯片上,供應商還提供了類似的庫和工具鏈,以有效地執行DL模型。然而,依賴上述的庫和工具在不同的DL芯片上映射DL模型的缺點是,它們通常落后于DL模型的快速開發,因此不能有效地利用DL芯片。

為了解決DL庫和工具的缺陷,以及減輕手工優化每個DL芯片上的DL模型的負擔,DL社區求助于領域特定的編譯器技術來解決問題。很快地,一些流行的DL編譯器被提了出來,例如來自工業界和學術界的TVM (Chen等人,2018b)、Tensor Comprehension (Vasilache等人,2018)、Glow (Rotem等人,2018)、nGraph (Cyphers等人,2018)和XLA (Leary和Wang, 2017)。DL編譯器將DL框架中描述的模型定義作為輸入,并在各種DL芯片上生成高效的代碼實現作為輸出。模型定義和特定代碼實現之間的轉換針對模型規范和硬件體系結構進行了高度優化。具體地說,DL編譯器結合了面向DL的優化,比如層和操作符融合,這支持高效的代碼生成。此外,現有的DL編譯器也利用了來自通用編譯器(如LLVM (Lattner和Adve, 2004))的成熟工具鏈,這些工具鏈提供了跨不同硬件架構的更好的可移植性。與傳統編譯器相似,DL編譯器也采用了包括前端、中間表示(IR)和后端在內的分層設計。然而,DL編譯器的惟一性在于多層IRs和DL特定優化的設計。

在這篇論文中,我們通過將編譯器的設計分為前端、多級IR和后端,并著重介紹了IR的設計和優化方法,對現有的DL編譯器進行了全面的研究。據我們所知,這是第一篇全面介紹DL編譯器設計的論文。具體而言,本文的貢獻如下:

  • 我們從硬件支持、DL框架支持、代碼生成和優化等方面對現有的DL編譯器進行了全面的比較,為最終用戶選擇合適的DL編譯器提供了指導。

  • 我們剖析了現有DL編譯器的總體設計,并詳細分析了多級IR設計和編譯器優化技術,如數據流底層優化、硬件內在映射、內存延遲隱藏和并行化。

  • 我們為DL編譯器的未來發展提供了一些見解,包括自動調優、多面體編譯器、量化、可微編程和隱私保護,希望能促進DL編譯器社區的研究。

本文其余部分組織如下。第2節介紹DL編譯器的背景,包括DL框架、DL芯片以及硬件(FPGA)特定的DL編譯器。第3節詳細比較了現有的DL編譯器。第4節描述了DL編譯器的總體設計,重點介紹了IR和前端/后端優化。第五部分是全文的總結,并對未來的研究方向進行了展望。

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