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

部署大型語言模型(LLMs)具有挑戰性,因為它們在實際應用中的內存效率低下且計算密集。為了應對這一問題,研究人員通過微調人類標簽或利用LLM生成的標簽進行蒸餾,訓練更小的任務特定模型。然而,微調和蒸餾需要大量的訓練數據,以達到與LLMs相當的性能。**我們引入逐步蒸餾,一種新的機制:(a)訓練比LLMs表現更好的較小模型;(b)通過利用比微調或蒸餾所需的更少訓練數據來實現這一點。我們的方法在多任務訓練框架內為小型模型提取LLM rationales(基本原理/解釋/依據),作為額外的監督。**我們在4個NLP基準測試中得出三個發現:首先,與微調和蒸餾相比,我們的機制在使用更少的標注/未標注訓練樣本的情況下實現了更好的性能。其次,與LLMs相比,我們使用明顯較小的模型大小實現了更好的性能。第三,我們減少了模型大小和超過LLMs所需的數據量;在一個基準任務中,我們的770M T5模型使用僅80%的可用數據就超過了540B PaLM模型

//www.zhuanzhi.ai/paper/fa04cb640eb5b7dd65cddc946c76b80f

1. 引言

圖1:雖然大型語言模型(LLM)提供了強大的零樣本/少樣本性能,但在實踐中具有挑戰性。另一方面,傳統的訓練小型特定任務模型的方法需要大量的訓練數據。本文提出逐步蒸餾(Distilling step),一種新的范式,從LLM中提取基本原理作為信息性任務知識訓練小型模型,既減少了部署的模型大小,也減少了訓練所需的數據。

盡管大型語言模型(LLMs)(Brown等人,2020;Chowdhery等人,2022;Thoppilan等人,2022;Hoffmann等人,2022;Smith等人,2022b;Zhang等人,2022)提供了令人印象深刻的少樣本學習能力,但由于其龐大的規模,這些模型在實際應用中具有挑戰性。運行單個1750億參數的LLM至少需要350GB GPU內存,并使用專門的基礎設施(Zheng等人,2022)。更糟糕的是,如今的頂級LLMs包含超過5000億個參數(Chowdhery等人,2022),需要更多的內存和計算資源。這樣的計算需求遠遠超出了大多數產品團隊的承受能力,特別是對于需要低延遲性能的應用程序。

為了規避大型模型的部署挑戰,從業者通常選擇部署較小的專用模型。這些較小的模型使用兩種常見范式之一進行訓練:微調或蒸餾。微調使用下游人類注釋數據更新預訓練的較小模型(例如BERT(Devlin等人,2018)或T5(Raffel等人,2020))(Howard和Ruder,2018)。蒸餾使用由更大的LLM生成的標簽訓練相同的較小模型(Tang等人,2019;Wang等人,2021;Smith等人,2022a;Arora等人,2022)。不幸的是,這些范式以成本降低模型大小:為了達到與LLMs相當的性能,微調需要昂貴的人類標簽,而蒸餾需要大量無標簽數據,這些數據可能難以獲得(Tang等人,2019;Liang等人,2020)。

在這項工作中,我們引入逐步蒸餾,一種用更少訓練數據訓練較小模型的新型簡單機制。我們的機制減少了將LLMs微調和蒸餾為較小模型所需的訓練數據量。我們的機制的核心是從將LLMs視為嘈雜標簽的來源轉變為將它們視為可以推理的代理:LLMs可以生成自然語言rationales(基本原理/解釋/依據),為其預測的標簽辯護(Wei等人,2022;Kojima等人,2022)。例如,當被問到“一個紳士正在攜帶高爾夫球設備,他可能有什么?(a)球桿,(b)禮堂,(c)冥想中心,(d)會議,(e)教堂”時,LLM可以通過鏈式思考(CoT)推理(Wei等人,2022)回答“(a)球桿”,并通過陳述“答案必須是用于高爾夫球的東西。在上述選項中,只有球桿是用于高爾夫球的。”來合理化標簽。我們使用這些提取的rationales(基本原理/解釋/依據)作為額外的、更豐富的信息,在一個多任務訓練設置中訓練較小的模型,包括標簽預測和rationales(基本原理/解釋/依據)**預測(Raffel等人,2020;Narang等人,2020)。

逐步蒸餾使我們能夠學習任務特定的較小模型,這些模型在使用超過500倍更少的模型參數時勝過LLMs,并且與傳統微調或蒸餾相比,需要更少的訓練樣本(圖1)。我們在4個NLP基準測試中得出三個有前景的實證結論。首先,與微調和蒸餾相比,我們的模型在各個數據集上平均使用超過50%更少的訓練樣本(最多減少超過85%)時,實現了更好的性能。其次,我們的模型在模型大小上大大優于LLMs(最多小2000倍),大大降低了模型部署所需的計算成本。第三,我們同時減少了模型大小和超過LLMs所需的數據量。我們使用一個770M T5模型超過了540B參數LLM的性能;如果使用現有的微調方法,這個較小的模型只需使用80%的標記數據集。當只有未標記的數據時,我們的小型模型仍然與LLMs表現相當或更好。我們僅使用一個11B T5模型就超過了540B PaLM的性能。我們進一步表明,當一個較小的模型比LLM表現差時,逐步蒸餾可以更有效地利用額外的未標記數據來匹配LLM的性能,與標準蒸餾方法相比。

2 逐步蒸餾

我們提出了一種新的范式,逐步蒸餾,它利用LLMs對其預測進行推理的能力,以數據高效的方式訓練較小的模型。我們的整體框架如圖2所示。我們的范式有兩個簡單的步驟:首先,給定一個LLM和一個未標記的數據集,我們提示LLM生成輸出標簽以及支持標簽的rationales(基本原理/解釋/依據)。**rationales(基本原理/解釋/依據)**是自然語言解釋,為模型預測的標簽提供支持(見圖2)。rationales(基本原理/解釋/依據)是當今自監督LLM的一種新興行為特性。其次,我們利用這些rationales以及任務標簽來訓練較小的下游模型。直觀地說,**rationales(基本原理/解釋/依據)**提供了關于為什么輸入映射到特定輸出標簽的更豐富、更詳細的信息。

2.1 從LLMs中提取rationales(基本原理/解釋/依據)

最近的研究發現LLMs有一個有趣的新興特性:它們能夠生成支持其預測的rationales(Wei等人,2022;Kojima等人,2022)。雖然這些研究主要關注如何從LLMs中引出這種推理能力(Nye等人,2021;Wei等人,2022;Kojima等人,2022),但我們在訓練較小的下游模型時使用了它們。具體來說,我們利用鏈式思考(CoT)提示(Wei等人,2022)從LLMs中引出和提取rationales

2.2 用原理訓練較小的模型

本文首先描述了當前學習特定任務模型的框架。有了這個框架,我們對其進行了擴展,以將基本原理納入訓練過程。形式上,我們將數據集表示為D = {(xi, yi)} N i=1,其中每個xi表示一個輸入,yi是相應的所需輸出標簽。雖然所提出框架支持任何模態的輸入和輸出,但實驗將x和y限制為自然語言。這個文本到文本框架(Raffel等人,2020)包含各種自然語言處理任務:分類、自然語言推理、問題回答等。 訓練特定任務模型的最常見做法是使用監督數據對預訓練模型進行微調(Howard和Ruder, 2018)。在沒有人工標注標簽的情況下,特定任務的蒸餾(Hinton等人,2015;Tang et al., 2019)使用LLM教師生成偽噪聲訓練標簽,y?i代替yi (Wang et al., 2021;Smith等人,2022a;Arora等人,2022年)。 在這項工作中,我們沒有將rationales作為額外的模型輸入,而是將學習rationales視為一個多任務問題。具體來說,我們訓練模型 f(xi) → (?yi, r?i),不僅預測任務標簽,還根據文本輸入生成相應的rationales

3 實驗

我們通過實證驗證了逐步蒸餾方法的有效性。首先,與標準的微調和任務蒸餾方法相比,我們展示了逐步蒸餾方法實現的優勢。在訓練樣本數量較少的情況下,逐步蒸餾方法表現更優,顯著提高了學習小型任務專用模型的數據效率(第4.1節)。其次,我們展示了逐步蒸餾方法在模型大小遠小于大型語言模型(LLMs)的情況下,仍能取得更好的性能,與大型語言模型相比,大幅降低了部署成本(第4.2節)。最后,我們研究了逐步蒸餾方法在超越大型語言模型性能方面所需的最小資源,包括訓練樣本數量和模型大小。我們發現逐步蒸餾方法在使用更少數據和更小模型的情況下,勝過大型語言模型,同時提高了數據效率和部署效率(第4.3節)。

在實驗中,我們將540B PaLM模型(Chowdhery等人,2022年)視為大型語言模型(LLM)。對于任務特定的下游模型,我們使用T5模型(Raffel等人,2020年),并從公開可用的資源中獲取預訓練權重來初始化模型。對于CoT提示,我們在可用時遵循Wei等人(2022年)的方法,并為新數據集策劃我們自己的示例。我們在附錄A.1中提供了更多實現細節。

3.1 減少訓練數據

我們將逐步蒸餾方法與學習任務特定模型的兩種最常見方法進行比較:(1)當有人類標注的樣本可用時,使用標準微調方法;(2)當僅有未標注樣本可用時,使用標準任務蒸餾方法。具體來說,標準微調是指使用標準標簽監督通過預訓練然后微調模型的流行范式(Howard和Ruder,2018年)。另一方面,當僅有未標注樣本可用時,標準任務蒸餾方法將教師大型語言模型預測的標簽視為真實標簽,從而學習任務特定模型(Hinton等人,2015年;陳等人,2020年;Wang等人,2021年;Smith等人,2022a;Arora等人,2022年)。

在以下一系列實驗中,我們將任務特定模型固定為220M T5-Base模型,并比較在可用訓練樣本數量不同的情況下,不同方法所實現的任務性能。

逐步蒸餾方法在使用更少的標注樣本情況下優于標準微調。當使用人類標注的樣本進行微調時,圖4顯示,在使用不同數量的標注樣本時,逐步蒸餾方法始終比標準微調表現更好。此外,我們發現逐步蒸餾方法可以在使用更少的標注樣本的情況下達到與標準微調相同的性能。特別是,僅使用eSNLI完整數據集的12.5%,逐步蒸餾方法就可以在性能上超過使用完整數據集100%訓練的標準微調。同樣,我們分別在ANLI、CQA和SVAMP上實現了減少75%、25%和20%訓練樣本數量以超過標準微調的表現。 逐步蒸餾方法在使用更少的未標注樣本時,優于標準蒸餾方法。當僅有未標注數據可用時,我們將逐步蒸餾方法與標準任務蒸餾方法進行比較。在圖5中,我們觀察到與微調設置相類似的整體趨勢。具體來說,我們發現逐步蒸餾方法在所有4個數據集上,在使用不同數量的未標注數據情況下,均優于標準任務蒸餾方法。我們同樣發現,逐步蒸餾方法在使用更少的未標注數據時仍能勝過標準任務蒸餾方法。例如,在e-SNLI數據集上,我們只需要完整未標注數據集的12.5%,就可以超過使用100%訓練樣本的標準任務蒸餾方法所取得的性能。

4.2 減小模型大小

在以下一系列實驗中,我們將訓練集大小固定(使用數據集的100%),并將使用逐步蒸餾方法和標準方法訓練的不同大小的小型T5模型與大型語言模型(LLMs)進行比較。具體來說,我們考慮了3種不同大小的T5模型,即220M T5-Base、770M T5-Large和11B T5-XXL。對于LLMs,我們包括兩種基線方法:(1)少樣本CoT(Wei等人,2022年);(2)PINTO微調(Wang等人,2022a)。少樣本CoT直接利用CoT示范來提示540B PaLM模型在預測最終標簽之前生成中間步驟,而無需對LLM進行進一步的微調。PINTO微調是指我們擴展Wang等人(2022a)的方法來處理除問答任務之外的任務,這些任務沒有被Wang等人(2022a)研究。在這里,我們在PaLM模型生成的輸出基礎上對220M T5-Base模型進行微調,這可以看作是帶有額外參數的LLMs的微調方法(Zhang等人,2020年;Lester等人,2021年)。我們分別在圖6和圖7中呈現了在有標簽數據集或無標簽數據集的兩種廣泛場景下的實驗結果。我們按照預測時部署的模型大小(x軸)和相應任務性能(y軸)繪制每種方法。

逐步蒸餾方法在使用不同模型大小時,相較于標準基線方法有所提升。在圖6和圖7中,我們分別看到逐步蒸餾方法在所有大小的T5模型上始終優于標準微調和標準蒸餾。在ANLI上的提升最為顯著,其中逐步蒸餾方法在任務準確性方面分別比標準微調和蒸餾提高了平均8%和13%。 逐步蒸餾方法通過使用更小的任務特定模型超越LLMs。在圖6中,當有人類標注的數據集可用時,逐步蒸餾方法可以始終使用更小的T5模型,在所有4個考慮的數據集上優于少樣本CoT和PINTO微調。例如,我們可以在eSNLI上使用220M(超過2000倍小)的T5模型實現比540B PaLM模型的少樣本CoT更好的性能,使用770M(超過700倍小)的T5模型在ANLI和SVAMP上取得更好的性能,以及使用11B(超過45倍小)的T5模型在CQA上取得更好的性能。無標簽數據增強進一步改進了逐步蒸餾

3.3 使用最小模型大小和最少訓練數據超越LLMs

在這里,以LLM的性能作為錨點,我們探討了逐步蒸餾方法和標準微調/蒸餾在超越LLM所需的最高效資源需求,包括訓練樣本數量和部署模型大小。我們分別在圖8和圖9中呈現了在人類標注設置和無標注設置下的結果。我們通過繪制不同結果模型的(1)使用的訓練樣本數量(x軸),(2)實現的最終任務性能(y軸)以及(3)模型大小(通過陰影區域的大小可視化)來展示結果。

逐步蒸餾方法在使用更少數據的情況下,使用更小的模型超過LLMs。在圖8中的所有數據集上,我們發現逐步蒸餾方法在使用更少的數據時,性能優于PaLM的少樣本CoT,在只使用部分可用訓練樣本的情況下,使用更小的T5模型。具體來說,在e-SNLI上,逐步蒸餾方法可以在模型大小減小2000倍(220M T5)且只使用完整數據集的0.1%的情況下,實現比少樣本CoT更好的性能。在圖9中,只有無標簽數據集可用時,我們觀察到同樣的趨勢,即逐步蒸餾方法在大多數情況下,可以使用更小的模型和更少的數據超過少樣本CoT。例如,在ANLI上,逐步蒸餾方法在模型縮小45倍且只使用完整無標簽集50%的情況下,超過了LLM。標準微調和蒸餾需要更多的數據和更大的模型。最后,在圖8和圖9中,我們看到標準微調和蒸餾通常需要更多的數據或更大的模型來匹配LLM的性能。例如,在圖8中的e-SNLI上,我們觀察到逐步蒸餾方法在只使用數據集的0.1%的情況下就超過了LLM,而標準微調需要更多的數據來匹配性能。此外,在圖8中的ANLI上,我們觀察到逐步蒸餾方法可以在只使用80%的訓練集的情況下,使用770M模型超過PaLM,而標準微調即使使用完整數據集也難以匹配LLM,因此需要更大的模型來縮小性能差距。

4 結論

我們提出了逐步蒸餾方法,從LLMs中提取rationales作為有益的監督信息,以訓練小型任務特定模型。我們展示了逐步蒸餾方法減少了訓練數據集的需求,以創建任務特定的較小模型;它還減少了實現甚至超過原始LLM性能所需的模型大小。與現有方法相比,逐步蒸餾方法提出了一種資源高效的訓練到部署范式。

付費5元查看完整內容

相關內容

大模型是基于海量多源數據打造的預訓練模型,是對原有算法模型的技術升級和產品迭代,用戶可通過開源或開放API/工具等形式進行模型零樣本/小樣本數據學習,以實現更優的識別、理解、決策、生成效果和更低成本的開發部署方案。

大型語言模型(LLMs)在自然語言處理(NLP)領域憑借其出色的語言理解和生成能力取得了顯著進步。然而,由于受限于領域特定知識和詞匯的接觸,它們在長尾或領域特定任務的表現可能不盡如人意。此外,大多數最先進的(SOTA)LLMs缺乏透明度,只能通過API訪問,這阻礙了使用自定義數據進一步微調。而且,數據隱私是一個重要問題。為了應對這些挑戰,我們提出了一種創新的參數知識引導(PKG)框架,該框架為LLMs配備了一個知識引導模塊,以在運行時訪問相關知識,而無需更改LLMs的參數。我們的PKG基于開源的“白盒”小型語言模型,允許將LLMs所需的任何知識進行離線存儲。我們證明了我們的PKG框架可以增強“黑盒”LLMs在一系列長尾和領域特定下游任務的表現,這些任務需要事實、表格、醫學和多模態知識。

//www.zhuanzhi.ai/paper/4bf640cc7e3ca1bf060a6aafc401de8e

1. 引言

諸如GPT3 [Brown et al., 2020]的大型語言模型(LLMs)在各種自然語言處理(NLP)任務中展示出令人印象深刻的熟練程度。這些模型通常在廣泛的互聯網數據上進行訓練,從而使它們能夠將大量的隱式世界知識融入到其參數中。因此,LLMs已成為既適用于NLP研究又適用于工業應用的多功能工具。例如,它們可用于機器翻譯 [Jiao et al., 2023],段落摘要 [Yang et al., 2023]和推薦系統 [Gao et al., 2023]。憑借其卓越的語言理解和生成能力,LLMs為各種工業應用提供了新的機會,如最近推出的New Bing [Microsoft, 2023]和ChatGPT插件 [OpenAI, 2023a]。 盡管在一般自然語言處理(NLP)任務上表現出色,但在長尾或領域特定任務上,LLMs可能會因受限于相關知識和詞匯而難以獲得最佳結果 [Chalkidis, 2023; Kasai et al., 2023; Nascimento et al., 2023]。雖然LLMs在預訓練過程中獲取了隱式知識,但這種知識可能對某些任務來說是有損失或不足的,導致準確度降低和效果不佳。此外,許多最先進(SOTA)的LLMs被認為是“黑箱”模型,只能通過API訪問。這種缺乏透明度使得微調這些模型對大多數研究人員和公司來說變得困難和昂貴。此外,能夠承擔微調費用的用戶必須向LLM所有者提供他們的私人數據,將其暴露于濫用、違規或其他安全威脅的風險中 [BBC, 2023]。這些限制阻礙了LLMs適應特定用例或領域的能力。

最近的研究主要集中在使用基于檢索的方法從外部知識庫中提取領域特定知識,以提高LLMs的性能 [Liu, 2022; Shi et al., 2023; Peng et al., 2023a]。雖然這種方法取得了有前景的結果,但它還存在一些局限性。首先,它嚴重依賴外部知識來源,這些來源可能并不總是容易獲得或可用。此外,這些方法可能無法處理需要從多個來源或模態整合信息的復雜查詢。

為了克服這些局限性,我們提出了一種名為參數知識引導(PKG)的新框架,它將檢索替換為生成,如圖1所示。PKG模塊是一個額外的背景知識生成模塊,使LLMs能夠在運行時訪問相關信息,而無需更新它們的參數。通過提供必要的知識,增強型LLMs可以在長尾或領域特定任務上取得更好的性能。

我們的PKG框架基于開源且免費使用的“白盒”小型語言模型,使其能夠被更廣泛的用戶所使用。為了與給定任務或領域所需的特定知識保持一致,我們引入了一種基于指令微調的兩步知識對齊方法 [Ouyang et al., 2022]。參數模塊可以存儲LLMs所需的任何知識,并且可以在離線情況下高效地進行更新。

我們的實驗表明,所提出的PKG框架能夠提高“黑箱”LLMs在需要領域特定背景知識的各種下游任務上的性能,包括事實知識(FM2 [Eisenschlos et al., 2021], +7.9%)、表格知識(NQ-Table [Herzig et al., 2021], +11.9%)、醫學知識(MedMC-QA [Pal et al., 2022], +3.0%)和多模態知識(ScienceQA [Lu et al., 2022], +8.1%)。我們將我們的貢獻總結如下:

我們提出了一種創新的參數知識引導(PKG)框架,通過集成一個額外的背景知識生成模塊來增強語言模型(LMs)的能力

我們引入了一種兩步知識對齊方法,將PKG模塊與給定任務或領域所需的特定知識對齊。該方法基于指令微調,并使參數模塊能夠進行高效的離線更新

我們對各種下游任務進行了廣泛的實驗,以評估我們提出的PKG框架的有效性。這些實驗的結果表明,我們的PKG框架可以提高LLMs在這些任務上的能力

2 參數化知識引導

在本節中,我們介紹了一種名為參數知識引導(PKG)的創新框架,旨在提高“黑箱”LLMs在長尾或領域特定任務上的性能。PKG利用一個離線參數知識生成模塊,該模塊與LLM集成,以在運行時提供相關知識,指導其推理。為實現這一目標,我們首先利用一個小型開源語言模型來高效地與領域特定知識對齊,這些知識通常是長尾的或不存在于LLM的訓練數據中。然后,給定一個輸入問題或句子,PKG提供相應的背景文檔,擴展LLMs的輸入上下文,使它們能夠處理更廣泛的任務。

**2.1 導引器的知識對齊 **

針對特定任務或領域,我們通過指令微調 [Ouyang et al., 2022] 將導引器模塊與相關知識對齊。如圖2所示,我們將此過程分為兩個步驟。首先,我們收集有關目標任務/領域的原始數據,作為我們的知識來源。然后,我們將數據轉換為一組(指令,輸入,輸出)三元組。指令作為輸入的提示,并指導模塊與預期輸出對齊。接下來,采用這組三元組來調整我們的基本PKG模塊,優化其為給定任務或領域的LLMs提供相關且有效指導的能力。這個過程使PKG模塊能夠學習并生成領域特定知識,并在運行時提供給LLMs。指令提示的示例是:

指令作為提示,指導模型提供與特定領域或任務相關的背景知識。輸入是一個提示,提示模型在指定的領域或任務中生成一句話或回答問題。輸出是模型基于給定指令和輸入生成的相關知識。為生成輸出,我們以自回歸方式訓練基本的導引器模塊,其中模型在給定先前上下文的情況下生成輸出。一旦訓練完成,基本模型就會演變成參數化知識導引器,可以根據相應的指令生成特定領域/任務的背景知識。

2.2 用PKG增強LLMs

在許多情況下,使用“黑箱”LLMs的標準方法是將輸入句子/問題作為提示,并請求LLMs使用API返回響應/答案。然而,這種方法對于需要超出輸入本身所含知識的復雜任務可能并不有效。為了克服這個限制,一種常見的方法是為LLMs提供額外的上下文,使它們能夠訪問與任務相關的更多相關信息。在PKG的情況下,我們增強輸入與領域特定的背景知識,擴展輸入上下文。這個補充信息作為LLMs的指南,使它們能夠訪問更豐富的任務上下文,從而潛在地提高它們生成響應的準確性。一個增強的提示的例子是:

3 實驗

在本節中,評估了所提出的PKG框架在四種不同類型的知識上的有效性:事實性、表格性、醫學和多模態知識。將所提出方法的性能與幾個基線方法進行了比較,表1和表2所示的結果表明,PKG比"黑盒" LLM取得了顯著的改進。這些發現為所提出方法的通用性和有效性提供了令人信服的證據。

付費5元查看完整內容

//edoc.ub.uni-muenchen.de/28766/

遷移學習旨在將在特定領域中解決特定任務時所學到的知識分別遷移到其他任務或領域中。雖然這種范式早在2010年代初就被應用于計算機視覺領域,但大約五年后,它徹底改變了自然語言處理領域。本文論述了在應用和研究這類模型體系結構時必須考慮和注意的三個關鍵方面。這項工作的第一部分解決了預訓練語言模型公平比較的定義的關鍵方面。與經典的機器學習相反,定義模型本質上是什么并不簡單,因為模型不僅是架構,而且還包括完整的預訓練過程(預訓練文本語料庫和大量的計算能力)。除此之外,模型大小也起著至關重要的作用,因為有時對于一些從業人員或設備來說,它可能會非常大,這就是為什么在比較最先進的(SOTA)模型時,也應該考慮它。第一篇有貢獻的文章提高了對上述問題的認識,并在執行或評估模型比較時提出了潛在的規避措施。

在第二部分中,評估了幾種最先進的架構在一組復雜任務上的有用性。對于貢獻的第二篇文章,在將開放式問題的答案自動分類到一組預定義類別的任務上評估了模型的性能。這展示了社會科學家普遍面臨的一個(極端)多標簽分類任務。與此同時,還提供了用于機器學習目的的美國全國選舉研究(ANES 2008)的完全可重復的數據準備。第三個貢獻是將預訓練模型應用于假新聞檢測任務,特別關注模型微調時對超參數的敏感性。給出了不同凍結技術、批量大小和序列長度以及學習率調度的實驗和網格搜索結果。第四和第五篇貢獻文章展示了工業用例:前者是關于試圖通過持續的語言模型預訓練來合并來自外部語料庫的特定領域知識,目的是使語言模型成為特定領域的一種知識庫。訓練過程中固定間隔的評估已經顯示出部分有希望的結果。后一個項目旨在建立一個管道,嚴重依賴預訓練(德語)語言模型,以衡量客戶中心的概念。關于汽車保險的非結構化客戶反饋根據所處理的方面和各自的調性進行分類,然后(視覺上)總結在一個雷達圖中。第六個貢獻,試圖為縮小一個很大的研究差距做出貢獻:預訓練模型的特定語言評估。本文在(基于方面的)情感分析任務上評估了目前現有的德語和多語言預訓練架構,使得最先進結果的大幅增加。

第三部分通過展示基準研究的實驗結果來完善本文的范圍。在第七篇也是最后一篇文章中,縮小版的語言模型在一組約束外部因素的任務上進行了基準測試,這些外部因素包括計算能力預算和預訓練文本語料庫的大小。

付費5元查看完整內容

大規模語言模型(Large Language Model,LLM)無疑是時下最火熱的 AI 概念,它不僅是人工智能領域近兩年的研究熱點,也在近期引發了全社會的廣泛關注和討論,OpenAI 的 GPT-3 和 ChatGPT 更是數次登上微博熱搜。

LLM 強大的語言理解能力和知識儲備,給大眾留下了深刻的印象。LLM 所涌現的 in-context learning 能力,更是開啟了新的 NLP 范式,并使其有望成為以自然語言進行交互的通用型任務助手(ChatGPT)。LLM 的出現也為跨模態深度學習領域的研究者們帶來新的機遇和挑戰。

通過收集自互聯網的大規模語料進行預訓練,GPT-3 等 LLM 蘊含了豐富的世界知識,這使其有希望解決知識驅動的多模態任務,例如基于外部知識的圖像問答任務,OK-VQA [1]。但是,想要利用 LLM 的潛力解決多模態問題,有一個關鍵問題需要解決:LLM 以語言進行輸入輸出,如何使她能夠理解其他模態的數據,如圖片,并遷移到下游多模態任務呢?

PICa [2] 提出使用 Image Caption 模型將圖片轉化為文本描述,然后輸入給 GPT-3 使其回答關于圖片的問題,該方法在 OK-VQA 數據集上超越了傳統方法。但是由于 caption 未必能覆蓋圖片的全部信息,因此這一方法存在性能瓶頸。另一個容易想到的解決方案是,在預訓練的 LLM 基礎上,增加用來對接另一個模態輸入的網絡參數,并通過微調來得到一個跨模態的大模型。

Deepmind 的 Flamingo [3] 模型采用了這一方案,訓練了一個 800 萬參數量的視覺-語言模型,并在 OK-VQA 上達到新的 SOTA。但是訓練這樣的模型往往需要消耗大量的計算資源,動輒上百上千塊 GPU,這是學術界的大部分研究者難以負擔的。那么,如何能夠既享受到 LLM 的強大能力,又通過有限的計算資源在跨模態任務上達到先進的性能呢?

我們近期的論文給出了一個新的答案:用好小模型!論文 Prompting Large Language Models with Answer Heuristics for Knowledge-based Visual Question Answering 提出了名為 Prophet 的框架,通過在 LLM 上游引入一個可學習的、任務相關的視覺問答小模型,來更好地激發大模型的潛力。

Prophet 這個名字既是 Prompt with answer heuristics 的縮寫,也契合了 Prophet 框架的精神,我們希望 GPT-3 如一個先知一般對預兆(來自小模型的答案啟發)進行理解和闡釋。Prophet 僅需要 1 塊 3090 顯卡和少量 OpenAI API 的調用,就可以實現超越 Flamingo 的性能,并在兩個基于外部知識的視覺問答數據集 OK-VQA [1] 和 A-OKVQA [4] 上創造了新的 SOTA。該論文現已被 CVPR 2023 錄用。 **論文鏈接:**//arxiv.org/abs/2303.01903 **開源代碼:**

方法介紹

該論文著眼于基于外部知識的圖像問答任務(Knowledge-based VQA),它要求模型不僅能夠分析圖片和問題,還需要結合圖像外部的知識(生活常識、科學知識等世界知識)來推理得到答案。例如,如果問一張獅子圖片“這種動物最喜歡吃什么?”,那么模型就需要知道獅子是食肉動物,它們通常捕食羚羊、斑馬等。

早期的研究使用顯式的知識庫來檢索相關知識,但這樣做往往會引入過多的噪聲,影響模型的訓練和最終性能。近期的工作,如 PICa [2],則嘗試使用 GPT-3 作為隱式的知識引擎來獲取所需知識。PICa 通過將圖像轉化為文本描述(Image Caption)來讓 GPT-3 理解圖像,并使用 few-shot in-context learning 的范式,即提供少量問答示例,使 GPT-3 理解視覺問答任務并作出回答。

盡管 PICa 取得了令人鼓舞的結果,但我們認為它沒有充分激發 GPT-3 的潛能,因為它輸入 GPT-3 的關于圖片的信息往往不夠充分。如下圖所示,當我們問“what fruit comes from these trees?”,由于 caption 只提到了圖片的主要內容“a group of people walk in a city square”而忽略了圖中有一顆椰子樹的細節,GPT-3 未能得到回答問題所需要的關鍵信息,于是只能“瞎猜”一個答案。

后續的工作 KAT [5] 和 REVIVE [6] 在 PICa 輸出基礎上,增加了一個基于顯式知識檢索的 VQA 模型,進一步提高了性能,但依然沒有解決上述問題,未能充分挖掘出 GPT-3 的潛力。

▲ Prophet框架與之前的基于GPT-3的方法的對比

為解決 PICa 的瓶頸問題,我們提出了 Prophet,它利用答案啟發(answer heuristics)來幫助 GPT-3 更好的解決基于外部知識的 VQA 任務。所謂答案啟發,是指寫入 prompt 文本中的,和視覺問題的正確答案相似或相關的答案(當然也包括正確答案本身),我們相信這些具有潛力的答案可以提供豐富的、并且任務相關的視覺信息,可以有效幫助 GPT-3 理解圖像和視覺問答任務。

具體的,論文定義了兩種答案啟發: 1)答案候選(answer candidates): 問題的候選答案及其置信度;2)答案感知示例(answer-aware examples): 選擇答案相近的標注樣本(來自訓練集)作為 prompt 中的例子。有趣的是,這兩種答案啟發可以使用同一個簡單的 VQA 模型同時產生。

▲ Prophet的總體框架圖

Prophet 的完整流程分為兩個階段,如上圖所示。在第一階段,我們首先針對特定的外部知識 VQA 數據集訓練一個普通的 VQA 模型(在具體實現中,我們采用了一個改進的 MCAN [7] 模型),注意該模型不使用任何外部知識,但是在這個數據集的測試集上已經可以達到一個較弱的性能。然后我們從模型中提取兩種答案啟發:答案候選和答案感知示例。

具體的,我們以模型分類層輸出的置信度(模型輸出的 sigmoid 值)為依據對答案進行排序,抽取其中的 top 10 作為答案候選,并記錄每個答案的置信度分數;同時,我們將模型分類層之前的特征作為樣本的潛在答案特征(latent answer feature),在它表示的潛在特征空間中搜索最相近的標注樣本作為答案感知示例。

在第二階段,我們拓展了 PICa 的 prompt 格式,將答案啟發組織到 prompt 之中(如上圖所示的 prompt 例子),然后將 prompt 輸入給 GPT-3,提示其完成視覺問題的回答。

值得一提的是,雖然我們給出了答案候選,但是我們并未要求 GPT-3 必須從中選擇答案,一方面,prompt 中給出的示例可能就包含了正確答案不包含在答案候選中的情況,另一方面,如果所有候選的置信度都很低,也會暗示 GPT-3 生成一個全新的答案。這一設計不僅給予了 GPT-3 更多的自由,并且使 GPT-3 對前置 VQA 模型所可能引入的負面效應更加魯棒,即 GPT-3 有權不相信 VQA 模型的不合理“猜測”。

實驗分析

▲ Prophet論文主要實驗結果

上方兩表展示了 Prophet 在兩個基于外部知識的圖像問答數據集 OK-VQA 和 A-OKVQA 上的實驗結果,及其和以往方法的性能對比。實驗表明,Prophet 達到了先進的性能,顯著超越了以往的方法。在 OK-VQA 數據集上,Prophet 達到了 61.1% 的準確率,大幅超越了 Deepmind 的 80B 大模型 Flamingo。

值得一提的是,Prophet 不僅在分數上超越了 Flamingo,在所需的(線下)計算資源上也更為“親民”,更容易在有限的計算資源下進行復現。Flamingo-80B 需要在 1,536 塊 TPUv4 顯卡上訓練 15 天,而 Prophet 只需要一塊 RTX-3090 顯卡訓練 VQA 模型 4 天,再調用一定次數的 OpenAI API 即可。

在 A-OKVQA 上,Prophet 也達到了新的 SOTA,在測試集上取得 55.7% 的準確率。不僅如此,我們還為 A-OKVQA 的多選項測評模式設計了一個專門的變體(詳見論文),命名為 Prophet-MC,該變體的 MC 準確率達到了 73.6% 的優秀水平。

▲ 對答案候選和答案感知示例的消融實驗

論文對 Prophet 方法進行了充分、細致的消融實驗,上方兩表展示了其中最重要的兩個結果。在左表中我們嘗試調節答案候選的數量,可以觀察到該參數顯著影響方法的最終性能,說明答案候選在 Prophet 方法中起著至關重要的作用。在右表中,我們嘗試了其他策略來選擇 prompt 中的示例,其中的 fused 一行即對應了我們基于潛在答案特征來搜索答案感知示例的方式,實驗結果表明該方式是最優的。

更詳盡的實現細節和實驗分析請參考論文原文。

后記

Prophet 具有諸多優勢,方法思路簡單,性能優越,在實現上也更為簡單、經濟,因此我們決定分享我們的工作。在該工作完成后不久,跨模態大模型 PaLI [8] 和 PaLM-E [9] 相繼提出,他們在 OK-VQA 數據集上超越了 Prophet,但是我們相信 Prophet 依然有其獨特的價值:

  1. 實現 Prophet 所需的計算資源更小,是大部分學術界的研究者能夠承擔的,我們相信 Prophet 為這些研究者們創造出了更大的研究空間,Prophet 作為基于外部知識圖像問答任務的一個新的基線(baseline),還有許多值得挖掘的地方;

  2. Prophet 不僅是 GPT-3 等 LLM 可以遷移到多種下游任務并取得優良性能的又一例證,更拓展了原本基于 few-shot in-context learning 的遷移范式,引出了一個新的范式,“小模型+LLM”。用任務相關的小模型作為 LLM 適配下游任務的適配器(Adapter),將增強 LLM 的通用性和針對性。我們相信 Prophet 的思路將啟發其他領域的工作。

如果您對我們的工作有任何疑問,歡迎來信探討,或者在 GitHub 上提交 issue。

參考文獻

  1. Kenneth Marino, Mohammad Rastegari, Ali Farhadi, and Roozbeh Mottaghi. Ok-vqa: A visual question answering benchmark requiring external knowledge.
  2. Zhengyuan Yang, Zhe Gan, Jianfeng Wang, Xiaowei Hu, Yumao Lu, Zicheng Liu, and Lijuan Wang. An empirical study of gpt-3 for few-shot knowledge-based vqa.
  3. Jean-Baptiste Alayrac, Jeff Donahue, Pauline Luc, Antoine Miech, Iain Barr, Yana Hasson, Karel Lenc, Arthur Mensch, Katherine Millican, Malcolm Reynolds, et al. Flamingo: a visual language model for few-shot learning.
  4. Dustin Schwenk, Apoorv Khandelwal, Christopher Clark, Kenneth Marino, and Roozbeh Mottaghi. A-okvqa: A benchmark for visual question answering using world knowledge.
  5. Liangke Gui, Borui Wang, Qiuyuan Huang, Alex Haupt- mann, Yonatan Bisk, and Jianfeng Gao. Kat: A knowledge augmented transformer for vision-and-language.
  6. Yuanze Lin, Yujia Xie, Dongdong Chen, Yichong Xu, Chenguang Zhu, and Lu Yuan. REVIVE: Regional visual representation matters in knowledge-based visual question answering.
  7. Zhou Yu, Jun Yu, Yuhao Cui, Dacheng Tao, and Qi Tian. Deep modular co-attention networks for visual question answering.
  8. Xi Chen, Xiao Wang, Soravit Changpinyo, A. J. Piergiovanni, Piotr Padlewski, Daniel Salz, Sebastian Goodman et al. Pali: A jointly-scaled multilingual language-image model.
  9. Danny Driess, Fei Xia, Mehdi SM Sajjadi, Corey Lynch, Aakanksha Chowdhery, Brian Ichter, Ayzaan Wahid et al. PaLM-E: An Embodied Multimodal Language Model.

關于作者

論文第一作者邵鎮煒是杭州電子科技大學計算機學院媒體智能實驗室碩士研究生。邵鎮煒同學患有“進行性脊肌萎縮癥”,肢體一級殘疾,沒有生活自理能力,生活和學習需要母親的全程照顧。2017年高考考入杭州電子科技大學計科專業,本科期間獲得2018年中國大學生自強之星、國家獎學金和浙江省優秀畢業生等榮譽。2021年通過研究生推免,加入余宙教授課題組攻讀碩士研究生。

論文通訊作者為杭州電子科技大學計算機學院余宙教授。余宙教授是杭電計算機學院最年輕的教授,教育部“復雜系統建模與仿真”實驗室副主任。長期從事多模態智能方向研究,曾帶領研究團隊多次獲得國際視覺問答挑戰賽VQA Challenge 的冠亞軍。

付費5元查看完整內容

大型語言模型(LLMs)通過擴展模型和數據大小顯示出越來越強的上下文學習能力。盡管取得了這些進展,LLM仍然無法解決算法推理問題。雖然為最終答案提供了一個基本原理,導致了多步推理問題的進一步改進,但Anil等人在2022年表明,即使是簡單的算法推理任務,如parity,也遠遠沒有解決。在這項工作中,我們確定并研究了成功地向LLMs教授算法推理的四個關鍵階段:(1)將算法制定為技能,(2)同時教授多種技能(技能積累),(3)教授如何組合技能(技能組合)以及(4)教授如何將技能用作工具。我們證明了通過上下文學習(我們稱之為算法提示)向LLM教授算法推理是可能的。我們在各種算術和定量推理任務上評估了我們的方法,并證明了與現有的提示技術相比,該方法在性能上有顯著提升。特別是,對于長奇偶校驗、加法、乘法和減法,與最佳可用基線相比,我們分別實現了大約10倍、9倍、5倍和2倍的誤差減少。

付費5元查看完整內容

隨著規模的擴大,語言模型既表現出定量的改進,又表現出新的定性能力。盡管它們具有潛在的變革性影響,但這些新能力的特征還不明確。為了指導未來的研究,為顛覆性的新模型能力做好準備,并改進社會有害影響,我們了解語言模型現在和近期的能力和局限性是至關重要的。為了解決這一挑戰,我們引入了超越模仿游戲基準(BIG-bench)。BIG-bench目前包含204項任務,由來自132個機構的442位作者貢獻。任務的主題是多樣化的,從語言學、兒童發展、數學、常識推理、生物學、物理學、社會偏見、軟件開發等等。BIG-bench專注于那些被認為超出當前語言模型能力的任務。我們評估了OpenAI的GPT模型、Google內部密集transformer架構以及BIG-bench上switch式的稀疏transformer 的行為,這些模型的大小涵蓋了數百萬到千億的參數。此外,為了提供強有力的基準,一組人類專家評分人員執行了所有任務。研究結果包括: 模型性能和校準都隨著規模的增加而提高,但絕對值較差(與評分者的性能相比); 跨模型類的性能非常相似,盡管這得益于稀疏性;可預測的逐步提高的任務通常涉及大量知識或記憶成分,而在臨界尺度上表現出“突破性”行為的任務通常涉及多個步驟或成分,或脆性指標;在模棱兩可的環境中,社會偏見通常會隨著規模的增加而增加,但這可以通過提示來改善。

項目地址:

//github.com/google/BIG-bench/#creating-a-programmatic-task

生成語言模型的核心能力是生成文本序列最可能的延續。這個看似簡單的技能其實非常普遍。任何可以通過文本指定和執行的任務都可以被框定為文本延續。這包括廣泛的認知任務,包括可以通過聊天或電子郵件解決的任務,例如,在一個網絡論壇。最近的一個共識是,隨著生成語言模型變得更大,并接受更多數據的訓練,它們在可預測的方式中表現得更好。它們在測試集上的交叉熵在模型大小、訓練數據大小和訓練中使用的計算量方面表現為冪律(Hestness et al., 2017; 2019; Rosenfeld et al., 2019; Kaplan et al., 2020; Brown et al., 2020)。在這一可預測的改進的推動下,研究人員現在已經將語言模型擴展到1萬億以上的參數(Fedus et al., 2021),我們預計模型在未來幾年內將增長一個數量級。我們還期望通過架構和訓練方法的改進來持續提高性能。

數量的海量增加通常會給系統注入新行為。在科學領域,規模的擴大往往需要或使新穎的描述成為可能,甚至開創新的領域(Anderson, 1972)。隨著語言模型規模的增加,它們同樣展示了定性的新行為(Zhang et al., 2020e)。例如,他們表現出了編寫計算機代碼的初級能力(Hendrycks et al., 2021a; Chen et al., 2021; Austin et al., 2021; Schuster et al., 2021b; Biderman & Raff, 2022),診斷醫療條件(Rasmy et al,2021),以及語言之間的翻譯(Sutskever et al,2014),盡管目前他們在所有這些事情上的能力都不如擁有有限領域知識的人類。這些突破能力(Ganguli et al,2022年)已經通過經驗觀察到,但我們無法可靠地預測新突破發生的規模。我們可能還沒有意識到已經發生的其他突破,但還沒有在實驗中被注意到。語言模型在變大的過程中發生的量變和質變具有潛在的變革性(Bommasani et al., 2021; Black et al., 2022)。大型語言模型可以增強或取代人類,使其能夠完成一系列廣泛的任務,這些任務可以用文本響應來構建。它們可能啟用全新的應用程序。如果沒有適當的介入,他們可能還會將不受歡迎的社會偏見深深嵌入技術堆棧和決策過程中——但如果有適當的介入,他們可能會使決策自動化,減少人為偏見。由于語言模型潛在的變革性影響,我們了解它們的能力和限制,以及隨著模型的改進,我們了解這些能力和限制可能如何變化,這是至關重要的。這種認識將直接推動新技術的發展;使我們能夠識別并減輕潛在的有害社會影響,從失業到社會偏見的自動化(Bender et al,2021年);使我們能夠預測模型行為可能微妙地偏離人類意圖的其他方式(Kenton et al,2021年);允許我們將研究精力引向最有前途的方向(Bommasani et al,2021年,第3節);并使我們避免將研究資源投入到可能僅靠規模解決的問題上(Sutton, 2019)。

目前的語言建模基準還不足以滿足我們理解語言模型的行為和預測它們未來的行為的需求。這些現有基準有幾個局限性。首先,許多基準測試的范圍有限,主要針對語言模型已經證明一定熟練程度的單一或少數功能。例如,基準測試通常提出的任務是對較窄的領域子集進行編碼,如語言理解(See et al., 2017; Hermann et al., 2015; Narayan et al., 2018; Koupaee & Wang, 2018; Rush et al., 2015; Graff et al., 2003),或瑣碎問題的回答((Joshi et al., 2017; Kwiatkowski et al., 2019; Rajpurkar et al., 2016)。因為它們的目標范圍很窄,而且因為它們的目標通常是語言模型已經知道要執行的對象,所以它們不適合識別語言模型可能隨著規模的增加而開發的新的和意想不到的功能,或者描述當前功能的廣度。其次,最近的語言建模基準測試的有用壽命通常很短(MartínezPlumed et al., 2021)。當這些基準達到與人類相當的性能時,它們往往要么停止,要么被替換,要么通過在一種“挑戰-解決-替換”評估動態(Schlangen, 2019)或“數據-解決-補丁”對抗性基準共同進化(Zellers等人,2019a)中加入更有挑戰性的基準來擴展。例如,通用SuperGLUE基準測試(Wang et al., 2019a)在產生不到18個月的時間內就實現了超人的性能(圖2)。如此短的有用壽命可能是由于這些基準測試的范圍有限,這使得它們無法包括遠遠超出當前語言模型能力的任務。最后,許多當前的基準測試使用的是通過人為標記收集的數據,而不是由專家或任務作者執行的。與這種數據標簽相關的成本和挑戰極大地影響了所選任務的難度,因為許多任務需要易于解釋和執行。這通常會導致更容易的任務,噪聲、正確性和分布問題會降低結果的可解釋性(Bowman & Dahl, 2021)。

考慮到預測大型語言模型的潛在變革性影響的重要性,以及當前基準測試的局限性,我們引入了一個大規模、極其困難和多樣化的基準測試。然后我們在這個基準上測量模型的性能。為了衡量模型性能是否與人的性能有很大的區別,我們提供了一個人工評估基準和專家對這組不同任務的人工評估。此外,模型是跨尺度測量的,以便于簡單的尺度外推,在這個尺度上,它們可能與人類評估者沒有區別。為了向艾倫·圖靈的模仿游戲(圖靈,1950)致敬,因為我們的目標是提取模型行為的信息,而不是從模型是否與人類不同的二元判斷中獲得的信息,我們把這個基準稱為超越模仿游戲基準,或BIG-bench。我們還介紹了精簡版的BIG-bench(第2.2節),它包含24個任務,用于輕量級評估。該基準是在GitHub上公開開發的,貢獻者通過GitHub拉請求的方式添加任務。通過對拉請求的討論,對提議的任務進行同行評審。為了激勵貢獻,所有接受任務的作者都有機會成為這篇介紹BIG-bench的論文的共同作者。我們使用這個基準來分析密集和稀疏變壓器模型,從谷歌和OpenAI,跨越6個數量級的模型規模。我們特別感興趣的是預測語言模型未來的功能。因此,在我們的分析中,我們不關注任何單一模型的性能,而是關注性能如何隨著模型規模的變化而變化。對于選擇的任務,我們研究特定的模型能力如何隨著規模的發展而發展。圖1顯示了在所有BIG-bench任務中超過5個數量級的模型的總體性能。

付費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元查看完整內容

由于硬件資源有限,深度學習模型的訓練目標通常是在訓練和推理的時間和內存限制下最大化準確性。在這種情況下,我們研究了模型大小的影響,關注于計算受限的NLP任務的Transformer模型:自監督的預訓練和高資源機器翻譯。我們首先展示了,盡管較小的Transformer模型在每次迭代中執行得更快,但更廣、更深入的模型在顯著更少的步驟中收斂。此外,這種收斂速度通常超過了使用更大模型的額外計算開銷。因此,計算效率最高的訓練策略是反直覺地訓練非常大的模型,但在少量迭代后停止。

這導致了大型Transformer 模型的訓練效率和小型Transformer 模型的推理效率之間的明顯權衡。然而,我們表明大模型比小模型在壓縮技術(如量化和剪枝)方面更健壯。因此,一個人可以得到最好的兩個好處: 重壓縮,大模型比輕壓縮,小模型獲得更高的準確度

//www.zhuanzhi.ai/paper/4d7bcea8653fcc448137766511ec7d8a

概述:

在當前的深度學習范式中,使用更多的計算(例如,增加模型大小、數據集大小或訓練步驟)通常會導致更高的模型準確度(brock2018large;raffel2019exploring)。最近自監督預訓練的成功進一步論證了這種趨勢經模型。因此,計算資源日益成為提高模型準確度的關鍵制約因素。這個約束導致模型訓練的(通常是隱含的)目標是最大化計算效率:如何在固定的硬件和訓練時間下達到最高的模型準確度。

最大化計算效率需要重新考慮關于模型訓練的常見假設。特別是,有一個典型的隱式假設,即模型必須經過訓練直到收斂,這使得較大的模型在有限的計算預算下顯得不太可行。我們通過展示以收斂為代價來增加模型大小的機會來挑戰這一假設。具體地說,我們表明,訓練Transformer 模型的最快方法(vaswani2017attention)是大幅度增加模型大小,但很早停止訓練。

在我們的實驗中,我們改變了Transformer模型的寬度和深度,并在自監督的預訓練(RoBERTa (liu2019roberta)在Wikipedia和BookCorpus上訓練)和機器翻譯(WMT14英語→法語)上評估了它們的訓練時間和準確性。對于這些任務,我們首先展示了更大的模型比更小的模型在更少的梯度更新中收斂到更低的驗證錯誤(第3節)。此外,這種收斂速度的增加超過了使用更大模型所帶來的額外計算開銷——計算效率最高的模型是非常大的,并且遠遠不能收斂(例如,圖2,左)。我們還表明,收斂的加速主要是參數計數的函數,只有模型寬度、深度和批大小的微弱影響。

雖然較大的模型訓練速度更快,但它們也增加了推理的計算和內存需求。這種增加的成本在現實應用中尤其成問題,推理成本占訓練成本的主要比例(jouppi2017datacenter;crankshaw2017clipper;metz2017tpu)。然而,對于RoBERTa來說,這種明顯的權衡可以與壓縮相協調:與小型模型相比,大型模型在壓縮方面更加健壯(第4節)。因此,使用可比較的推理成本,大型重壓縮的模型優于小型輕壓縮的模型(例如,圖2,右)。

付費5元查看完整內容

由于硬件資源有限,訓練深度學習模型的目標通常是在訓練和推理的時間和記憶約束下使準確性最大化。在這種情況下,我們研究了模型大小的影響,重點研究了受計算限制的NLP任務的Transformer模型:自我監督的預訓練和高資源機器翻譯。我們首先表明,盡管較小的Transformer模型在每次迭代中執行得更快,但是更廣泛和更深入的模型在更少的步驟中收斂。此外,這種收斂速度通常超過使用大型模型的額外計算開銷。因此,最具計算效率的訓練策略是反直覺地訓練非常大的模型,但是在少量的迭代之后停止。

這導致大型Transformer 模型的訓練效率與小型Transformer 模型的推理效率之間存在明顯的權衡。然而,我們證明大型模型比小型模型對量化和剪枝等壓縮技術有更強的魯棒性。因此,我們可以同時利用兩個方面的優勢:高度壓縮的大型模型比輕度壓縮的小型模型獲得更高的精度。

付費5元查看完整內容

【導讀】模型壓縮是一種縮小已經訓練好的神經網絡的技術。僅僅使用一小部分計算資源,壓縮過的模型的性能,就能和原始模型類似。然而,許多應用程序的瓶頸其實是訓練原始的、壓縮之前的大型神經網絡,沒有雞哪有蛋呀。例如,我們可以在消費級GPU (12gb內存)上訓練BERT-base,但需要在谷歌TPU (64gb內存)上訓練BERT-large,這阻止了許多嘗試訓練預訓練語言模型的人【1】。

模型壓縮領域的結果告訴我們,我們得到的最終壓縮結果通常比我們最初訓練的大型模型的參數少得多。

但是為什么一定要模型壓縮呢?為什么不能從頭訓練一個高性能的小模型呢?

在這篇文章中,我們將探索從零開始訓練小模型所涉及的障礙。我們將討論為什么模型壓縮有效,以及兩種提高內存效率的訓練方法:超參數化界限和一種能夠減少或消除對事后模型壓縮的需求的優化算法。

Appropriately-Parameterized Models(適當參數化的模型)

適當參數化的模型(名詞)——是指既不過度參數化也不欠參數化的模型,是具有恰好合適數量的參數來表示任務的理想解決方案。

我們通常不會在深度學習范式中訓練適當參數化模型。這是因為對于給定的數據集,適當的參數數量通常是未知的。即使已知解,使用梯度下降來訓練適當參數化的模型也是出了名的困難【2】。

相反,模型的訓練過程通常是這樣的:

  • 首先,一個過度參數化(Over-parameterize)的模型首先被訓練了出來。這些模型的參數通常比訓練所用的樣本的數量多得多。

  • 然后,我們利用各種正則化技術【3】,來約束優化方法,使其更傾向于“簡單解決方案(Simple Solution)”,而不是過擬合的。

  • 最終,模型壓縮技術,希望通過消除冗余,從較大模型中的提取“簡單”模型,使內存和時間效率更接近于理想中的適當參數化模型。

極端過參數化的方案,使得訓練更加容易。因為模型是過參數化的,它們可以記住完全記住訓練數據【4】,而不是學習數據中有用的模式。為此,我們就需要正則化約束它。最后,模型壓縮嘗試使用各種技術,只保留解決方案實際需要的參數。

由于我們的目標是用更少的GPU 顯存來訓練神經網絡,因此我們實際上想知道一些更直接的問題:

  • 非要過度參數化才能訓練么?到底需要超采多少參數呢?

  • 我們可以通過使用更智能的優化方法來減少過度參數化嗎?

接下來的兩節我們將依次討論這些問題。

Over-parameterization Bounds(過度參數化的界限)

為什么需要過度參數化? 因為,通過對神經網絡的過度參數化,我們可以使優化目標,有效的凸化,從而更好的優化。Du【5】和Haeffele【6】已經對一些簡單情況進行了數學證明,給出了在多項式時間內實現0訓練損失所需的過度參數化的量。

綜上:過度參數化是用計算的難易性換取更多的內存使用,即通過提升內存使用的方法,降低問題優化難度。

這些過度參數化的界限通常被認為是松散的。這意味著,雖然我們可以預測足夠多的參數來完美地擬合某些數據,但我們仍然不知道完美地擬合數據所需的最小參數數量。從優化過程(SGD vs. GD, Adam vs.其他)到體系結構,嚴格的界限可能取決于一切變量。計算一個緊界甚至可能比訓練所有可能的候選網絡在計算上更加棘手。

但這方面肯定還有改進的空間【7】。更嚴格的過度參數化界限可以讓我們訓練更小的網絡,而不用在架構上進行網格搜索,也不用擔心是不是一個更大的網絡會給我們帶來更好的性能。將證明擴展到遞歸模型、transformers、批處理,batch norm等模型也存在問題。

Better Optimization Techniques (更好的優化技術)

從經驗上講,適當參數化的模型很難訓練。用梯度下降法訓練一個適當大小的模型通常會失敗得很慘。因為該模型不能很好地擬合訓練數據,更不能很好地泛化。這部分是由于神經網絡優化過程的不凸性/不友好性,但是訓練適當參數化模型的計算復雜度的精確描述仍然是不完整的【8】。

模型壓縮技術通過探索過度參數化模型趨向于收斂的解的類型,為我們提供了如何一個如何訓練適當參數化模型的線索。模型壓縮有很多種,每一種都利用了一種不同類型的“簡單性”,這種“簡單性”往往出現在訓練有素的神經網絡中:

  • 許多權重接近于零(剪枝,Pruning)

  • 權矩陣是低秩的(權重分解,Weight Factorization)

  • 權重可以用少量的比特來表示(比特化,Quantization)

  • 層通常學習類似的功能(權重共享,Weight Sharing)

這些“簡單性”中的每一個都是由訓練過程中的正則化(隱式或其他方式)或訓練數據的質量引起的。當我們知道我們正在尋找具有這些性質的解決方案時,我們找到了改進我們的優化技術的新方向。

Sparse Networks from Scratch (從零開始的稀疏網絡)

權值剪枝可能是將壓縮方法轉化為優化改進的最成功示例。經過訓練的神經網絡通常有許多接近于0的權值(30 - 95%)。在不影響神經網絡輸出的情況下,可以去掉這些權值。

我們是否可以一上來就訓練一個稀疏神經網絡,而不是事后剪枝?有一段時間,我們認為答案是否定的。稀疏網絡很難訓練;優化平面是非凸和不友好的。

然而,Frankel和Carbin【9】朝這個方向邁出了第一步。他們發現他們可以從零開始對修剪后的網絡進行重新訓練,但只有在重新初始化為上次稠密訓練中使用的相同初始化時才可以。他們對此的解釋是彩票假設:稠密網絡實際上是許多并行的適當參數化稀疏模型的隨機初始化組合【10】。

最近,Dettmers和Zettlemoyer 【11】、Mostafa et al. 【12】和Evci et al. 【13】已經表明,適當參數化的稀疏網絡可以從頭開始訓練,這大大減少了訓練神經網絡所需的GPU內存。重要的不是初始化,而是探索模型的稀疏子空間的能力。Lee等人【14】的類似工作嘗試通過對數據進行單次遍歷來快速找到合適的稀疏架構。

我相信以下一些領域的工作,以后將會頻繁出現:

  • 揭示了訓練神經網絡中常見的冗余的模型壓縮方法。

  • 研究產生這種冗余的歸納偏差/正則化【15】

  • 一個更聰明的優化算法被創建出來,用來訓練一個從一開始就沒有這種冗余的網絡。

下面是一個表格,列出了其他類型的模型壓縮方法,以及如何讓它們更接近訓練的開始【16】(不同程度的成功【17】):

Future Directions (未來的發展方向)

我們真的需要模型壓縮嗎?這篇文章的標題很有挑釁性,但它的思想并不是:通過收緊過參數化界限和改進我們的優化方法,我們可以減少或消除對事后模型壓縮的需要。顯然,在我們得到一個明確的答案之前,還有許多懸而未決的問題需要回答。以下是我希望在未來幾年內完成的一些工作。

Over-parameterization

  • 通過改變數據的質量(使用低資源計算),我們能得到更嚴格的界限嗎?

  • 如果我們使用一個聰明的優化技巧(比如 Rigged Lottery 【13】),過參數化邊界如何變化?

  • 我們能得到強化學習環境的過參數化界限嗎?

  • 我們可以將這些邊界擴展到其他常用的架構設計(RNNs、transformer)嗎?

Optimization

  • 在經過訓練的神經網絡中,還有其他的冗余我們沒有利用嗎?

  • 使這些實際:

    • 從零開始訓練比特化的神經網絡。

    • 從零開始用低秩矩陣訓練神經網絡。

  • 找出為什么知識蒸餾可以改進優化。使用類似的想法來優化,同時使用較少的GPU內存,如果可能的話。

Regularization

  • 什么樣的正則化會導致什么樣的模型冗余?(有一個分類法就好了)

  • 修剪和再訓練與L0正則化有什么關系?什么隱式正則化導致了剪枝?

  • 什么樣的正則化可以引入量化?

參考文獻:

1.Much more on Deep Learning’s Size Problem. ?

2.A common example of this is XOR which can theoretically be represented with two hidden neurons but in practice requires using around twenty. ?

3.Kuka?ka, Jan, Vladimir Golkov, and Daniel Cremers. 2017. “Regularization for Deep Learning: A Taxonomy.” arXiv [cs.LG]. arXiv. //arxiv.org/abs/1710.10686. ? ?2 ?3

4.Zhang, Chiyuan, Samy Bengio, Moritz Hardt, Benjamin Recht, and Oriol Vinyals. 2016. “Understanding Deep Learning Requires Rethinking Generalization.” arXiv [cs.LG]. arXiv. . ?

5.Du, Simon S., Jason D. Lee, Haochuan Li, Liwei Wang, and Xiyu Zhai. 2018. “Gradient Descent Finds Global Minima of Deep Neural Networks.” arXiv [cs.LG]. arXiv. . ?

6.Haeffele, Benjamin D., and René Vidal. 2017. “Global Optimality in Neural Network Training.” In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 7331–39. ?

7.And it’s very active. I’ve seen a bunch of papers (that I haven’t read) improving on these types of bounds. ?

8.Theoretically, though, we at least know that training a 3 neuron neural network is NP-hard. There are similar negative results for other specific tasks and architectures. There might be proof that over-parameterization is necessary and sufficient for successful training. You might be interested in this similar, foundational work. ?

9.Frankle, Jonathan, Gintare Karolina Dziugaite, Daniel M. Roy, and Michael Carbin. 2019. “Linear Mode Connectivity and the Lottery Ticket Hypothesis.” arXiv [cs.LG]. arXiv. . ?

10.Zhou (2019) explores this idea with more detailed experiments. Liu et al. (2018) found similar results for structured pruning (convolution channels, etc.) instead of weight pruning. They, however, could randomly initialize the structure pruned networks and train them just as well as the un-pruned networks. The difference between these results remains un-explained. ?

11.Dettmers, Tim, and Luke Zettlemoyer. 2019. “Sparse Networks from Scratch: Faster Training without Losing Performance.” arXiv [cs.LG]. arXiv. . ?

12.Mostafa, Hesham, and Xin Wang. 2019. “Parameter Efficient Training of Deep Convolutional Neural Networks by Dynamic Sparse Reparameterization.” arXiv [cs.LG]. arXiv. . ?

13.Evci, Utku, Trevor Gale, Jacob Menick, Pablo Samuel Castro, and Erich Elsen. 2019. “Rigging the Lottery: Making All Tickets Winners.” arXiv [cs.LG]. arXiv. . ? ?2 ?3

14.Lee, Namhoon, Thalaiyasingam Ajanthan, and Philip H. S. Torr. 2018. “SNIP: Single-Shot Network Pruning Based on Connection Sensitivity.” arXiv [cs.CV]. arXiv. . ?

15.More work is being done on deciding whether lottery tickets are general. ?

16.Note that model compression is not the only path to memory-efficient training. For example, gradient checkpointing lets you trade computation time for memory when computing gradients during backprop. ?

17.I would say pruning and weight sharing are almost fully explored at this point, while quantization, factorization, and knowledge distillation have the biggest opportunity for improvements. ?

18.Gale, Trevor, Erich Elsen, and Sara Hooker. 2019. “The State of Sparsity in Deep Neural Networks.” arXiv [cs.LG]. arXiv. . ?

19.What type of regularization induces these 0 weights? It’s not entirely clear. Haeffele and Vidal (2017)6 proved that when a certain class of neural networks achieve a global optimum, the parameters of some sub-network become 0. If training impicitly or explicitly prefers L0 regularized solutions, then the weights will also be sparse. ?

20.Lan, Zhenzhong, Mingda Chen, Sebastian Goodman, Kevin Gimpel, Piyush Sharma, and Radu Soricut. 2019. “ALBERT: A Lite BERT for Self-Supervised Learning of Language Representations.” arXiv [cs.CL]. arXiv. . ? ?2

21.Here’s a survey. Other examples include QBERT and Bitwise Neural Networks. ?

22.Note that quantized networks need special hardware to really see gains, which might explain why quantization is less popular than some of the other methods. ?

23.inFERENCe has some thoughts about this from the Bayesian perspective. In short, flat minima (which may or may not lead to generalization) should have parameters with a low minimum-description length. Another explanation is that networks that are robust to noise generalize better, and round-off error can be thought of as a type of regularization. ?

24.Rastegari, Mohammad, Vicente Ordonez, Joseph Redmon, and Ali Farhadi. 2016. “XNOR-Net: ImageNet Classification Using Binary Convolutional Neural Networks.” arXiv [cs.CV]. arXiv. . ?

25.Zhou, Shuchang, Zekun Ni, Xinyu Zhou, He Wen, Yuxin Wu, and Yuheng Zou. 2016. “DoReFa-Net: Training Low Bitwidth Convolutional Neural Networks with Low Bitwidth Gradients.” . ?

26.Lin, Xiaofan, Cong Zhao, and Wei Pan. 2017. “Towards Accurate Binary Convolutional Neural Network.” arXiv [cs.LG]. arXiv. . ?

27.Wang, Ziheng, Jeremy Wohlwend, and Tao Lei. 2019. “Structured Pruning of Large Language Models.” arXiv [cs.CL]. arXiv. . ?

28.Denton, Emily, Wojciech Zaremba, Joan Bruna, Yann LeCun, and Rob Fergus. 2014. “Exploiting Linear Structure Within Convolutional Networks for Efficient Evaluation.” arXiv [cs.CV]. arXiv. . ?

29.Hinton, Geoffrey, Oriol Vinyals, and Jeff Dean. 2015. “Distilling the Knowledge in a Neural Network.” arXiv [stat.ML]. arXiv. . ?

30.Kim, Yoon, and Alexander M. Rush. 2016. “Sequence-Level Knowledge Distillation.” arXiv [cs.CL]. arXiv. . ?

31.Furlanello, Tommaso, Zachary C. Lipton, Michael Tschannen, Laurent Itti, and Anima Anandkumar. 2018. “Born Again Neural Networks.” arXiv [stat.ML]. arXiv. . ?

32.Yang, Chenglin, Lingxi Xie, Chi Su, and Alan L. Yuille. 2018. “Snapshot Distillation: Teacher-Student Optimization in One Generation.” . ?

33.Chen, Defang, Jian-Ping Mei, Can Wang, Yan Feng, and Chun Chen. 2019. “Online Knowledge Distillation with Diverse Peers.” arXiv [cs.LG]. arXiv. . ?

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