
如何用AI進行情感分析
Transformer架構由Vaswani等人于2017年提出,它通過并行處理標記的能力,打破了傳統循環序列到序列模型(如LSTM網絡和RNN)的順序處理限制。Transformer的關鍵創新在于其多頭自注意力機制,它允許模型并行訓練。概念上,Transformer架構由編碼器和解碼器兩部分組成。編碼器將輸入序列映射到更高維的嵌入空間,而解碼器則從這些嵌入中生成輸出序列。通常,Transformer模型包含多個編碼器和解碼器層。圖2展示了Transformer模型的架構。
與其他傳統模型不同,Transformer能夠通過同時處理輸入數據的所有部分,實現更快速和更高效的并行處理。為了解決在沒有內在順序處理的情況下保持序列信息的問題,Transformer使用了一種稱為位置編碼的技術。該機制允許每個標記(例如句子中的單詞)編碼其在序列中的相對位置。位置編碼至關重要;沒有它,Transformer會將句子視為一個詞袋,完全忽略了單詞的順序。
位置編碼使用涉及正弦和余弦函數的特定數學公式。該公式確保序列中的每個位置都獲得唯一的編碼。通過將此編碼附加到標記的嵌入中,模型可以了解標記在序列中的位置。精確的公式如下:
E(pos, 2i) = sin(pos / 10000^(2i/dim))
E(pos, 2i + 1) = cos(pos / 10000^(2i/dim))
其中pos表示序列中的標記位置,i從0到dim/2,分別表示偶數和奇數位置。
正弦和余弦函數的選擇特別有利,因為它們為嵌入空間中的位置信息提供了獨特且一致的方式。這種設置不僅簡化了模型根據相對位置進行注意力的學習,而且還使模型能夠泛化到訓練期間遇到的序列長度之外的長度。這種方法的美妙之處在于它賦予模型從數據中識別模式的能力,并增加了位置上下文。這種簡單而深刻的方法對于Transformer模型在從文本生成和語言翻譯到圖像識別等語言之外的領域的成功至關重要。
自編碼模型,也稱為“僅編碼器模型”,主要針對以理解為中心的自然語言處理任務,例如BERT、ERNIE和ALBERT。它們通過雙向學習和掩碼等訓練技術,在上下文理解方面表現出色。然而,它們也存在一些局限性:
這些模型,包括GPT和LLaMA系列,近年來備受關注。它們的自回歸設計意味著標記生成依賴于先前標記,這使得它們非常適合生成任務。這些模型提供了:
T5和GLM等模型結合了前兩種類型的優勢,擅長將輸入序列映射到固定長度的嵌入,使解碼器能夠生成上下文相關的輸出。這使得它們特別適用于條件生成任務,例如摘要、翻譯和問答,其中輸出緊密依賴于提供的輸入。
編碼器和解碼器組件的集成使Seq2Seq模型能夠處理復雜的輸入,但也帶來了以下缺點:
組合增加了參數數量,可能影響效率。
訓練此類模型需要大量的計算資源,因為對齊輸入和輸出序列很復雜。
變分自編碼器(VAE)是一種復雜的生成模型,它通過整合概率建模來發展一個有意義且通用的潛在空間,從而從傳統的自編碼器(AE)中演變而來。與標準的AE不同,VAE的編碼器產生由均值和方差定義的概率分布,而不是單個確定性點。
VAE使用概率編碼來創建一個動態和可適應的潛在空間,不僅允許數據重建,而且還允許通過從學習的概率分布中采樣來生成新數據。這增強了模型的泛化能力,并確保潛在空間中的平滑過渡,這對于數據生成和增強等任務至關重要。它利用重參數化技巧,在反向傳播過程中保持梯度流動,使潛在變量保持可微性,從而實現傳統的訓練。VAE的目標函數在重建損失和Kullback-Leibler(KL)散度之間進行權衡,重建損失評估解碼器樣本與原始輸入的準確性,而KL散度通過鼓勵后驗接近標準高斯分布來促進潛在分布的逼近。這種雙重關注確保了精確的輸入重建和平滑、連續的潛在空間,使VAE成為圖像生成、數據增強和異常檢測等應用的強大工具。
生成對抗網絡(GAN)是Goodfellow等人于2014年提出的一類深度學習框架。GAN由兩個神經網絡組成,即生成器和判別器,它們通過對抗過程同時進行訓練。生成器的目標是創建類似于真實數據的合成數據,而判別器的角色是區分真實和合成數據。隨著時間的推移,隨著訓練的進行,生成器越來越擅長創建真實數據,而判別器越來越擅長區分真實和假數據,如圖所示。
本節對現有的大語言模型(LLM)調查進行綜合分析。我們根據這些調查論文所涉及的主題對它們進行比較評估。調查按時間順序排列,使讀者能夠跟蹤研究重點隨時間的演變。通過檢查這些調查中的內容,讀者可以深入了解高級LLM開發所取得的進展。類別包括:
本節使用各種基準對主要語言模型進行比較分析,這些基準評估了模型在語言理解、推理和多模態任務中的能力。這些基準旨在評估語言理解和認知能力的各個方面。
MMLU(大量多任務語言理解): 包含57個任務,涵蓋從人類概念到高中考試的各種主題,評估語言模型在廣泛主題上的全面理解和泛化能力。
SuperGLUE: 設計為高級基準,用于評估和促進AI模型在推理和預測能力方面的改進,這些能力超越了GLUE基準。
HellaSwag: 設計用于測試模型的一般知識和使用日常知識完成場景的能力。
ARC(AI2推理挑戰): 提供小學水平的多項選擇題,測試模型理解和應用推理技能的能力。
WinoGrande: 包含大量winograd方案,用于測試AI模型的常識推理能力
NLVR2(真實世界視覺推理): 評估AI模型使用自然語言進行視覺推理的能力。它要求模型確定給定的自然語言陳述是否準確地描述了圖像對。
視覺問答(VQA)基準: 評估AI系統回答與給定圖像相關問題的能力。該多模態基準結合了自然語言處理和圖像識別,以測試模型對視覺內容的全面理解,以及與概念和事實查詢相關聯的能力。
LLM的微調方法在各種應用中使用,包括領域專業化、性能改進和偏差緩解。本文詳細介紹了兩種關鍵的微調方法:低秩適應(LoRA)和持續學習(CL)。
LoRA提供了一種有效的方法來微調基于Transformer的語言模型。該技術通過將原始權重矩陣分解為低秩更新來減少可訓練參數的數量,從而顯著降低計算開銷。它還推廣了全微調,理論上允許模型通過選擇合適的r來逼近全秩權重矩陣的表示能力。
CL是一種方法,它專注于隨著時間的推移使模型適應新任務,同時避免先前學習信息的災難性遺忘。它利用PEFT方法引入最小的、任務特定的更新到模型的參數中。這些策略通過包含基于熵的分類器用于適配器選擇和確保任務之間知識轉移的策略,幫助模型在一系列任務中保持性能。
上下文窗口擴展是指將LLM適應處理超過其最初定義的上下文長度的輸入序列。通過PEFT,例如LongLoRA,LLM可以高效地微調以擴展其上下文窗口,使其能夠處理更長的輸入序列而不會顯著增加計算需求。
一種引人注目的PEFT技術是視覺指令微調,其中LLM(傳統上基于文本)被適應以處理視覺輸入,使其能夠執行圖像字幕和視覺問答等任務。通過視覺指令微調將視覺和語言處理集成到LLM中,代表了多模態AI能力的重大飛躍。該過程涉及使用LLM(如GPT-4)生成語言-圖像指令遵循數據,然后使用這些數據微調一個能夠理解和交互文本和視覺輸入的模型。生成的模型被稱為LLaVA(大型語言和視覺助手),展示了令人印象深刻的跨模態對話能力,并在科學問答等任務上設置了新的準確率基準。
本節概述了基于其架構和所屬系列的大語言模型(LLM)。這將提供對各種LLM及其各自設計框架的全面理解。
BERT: 2018年發布的先驅模型,利用僅編碼器架構,顯著提高了自然語言理解模型的能力。
BERT變體: 包括BERT-wwm、BERT-wwm-ext、SpanBERT、DistillBERT、TinyBERT、VisualBERT和MacBERT等,針對不同任務和效率進行了改進。
RoBERTa: 通過動態掩碼策略增強了BERT的訓練過程的魯棒性,并采用更大的批量大小、更大的訓練語料庫和更深的訓練迭代來優化性能。
ERNIE: 采用多級掩碼策略來優化中文語言的性能,并引入了對話語言模型(DLM)技術。
ALBERT: 通過因式分解嵌入參數化來優化訓練,并引入了句子順序預測(SOP)任務來替代BERT中的NSP任務。
ELECTRA: 采用生成對抗網絡(GAN)技術,通過預測所有單詞而不是僅預測掩碼的單詞來提高效率。
DeBERTa: 引入了解耦注意力機制,以解決傳統自編碼模型中掩碼語言模型(MLM)的局限性。
Transformer-XL: 通過引入段級遞歸和狀態重用以解決處理長序列的挑戰。
GPT: 2018年發布的先驅模型,引入了自回歸技術,并采用了無監督學習和上下文學習訓練策略。
Pathways和PaLM: 基于Pathways架構,PaLM是第一個使用該架構訓練的語言模型,擁有高達540B的參數。PaLM-E是PaLM的擴展,集成了語言路徑和視覺路徑,使其能夠理解和處理文本和圖像。
Microsoft KOSMOS-1: 基于magneto transformer架構,KOSMOS-1使用CLIP ViT-L/14模型來捕獲圖像特征,并采用XPOS技術來協調訓練標記和預測標記之間的長度差異。
Megatron: Nvidia提出的框架,用于解決LLM訓練中的并行計算問題,通過層內并行、層間并行和數據并行來加速模型訓練。
LLaMA: Meta開發的模型,旨在提高模型能力的同時保持較小的尺寸,適用于本地部署。LLaMA系列包括LLaMA、Alpaca、Guanaco、Vicuna、Dolly、LLaMA 2和Video-LLaMA等,針對不同參數大小和模態支持進行了改進。
Gopher和DeepMind: Gopher是DeepMind開發的模型,擁有從44M到280B不等的參數。Chinchilla是Gopher的繼任者,目標是提高模型大小和訓練數據之間的比例。DeepMind還開發了視覺模型Flamingo,用于少樣本學習。
其他自回歸模型: 包括Jurassic系列、Claude系列、Falcon、DALL-E、Whisper和Codex等,涵蓋了圖像生成、音頻到文本轉換和代碼生成等領域。
Google模型: 包括Meena、LaMDA、ALIGN、GaLM和Gemini等,針對特定領域和任務進行了優化。
Microsoft模型: 包括Phi系列和mPLUG系列,Phi系列專注于小模型和高精度,mPLUG系列專注于多模態支持。
其他模型: 包括AlexaTM、PLATO系列、WuDao系列、Cogview、Lawformer、OPT、YaLM、BLOOM和Galactica等,展示了LLM在各個領域的應用潛力。
C. 序列到序列模型
BART: 結合了BERT的雙向編碼器特征和GPT的自回歸解碼器特征,在序列生成任務中表現出色。
基于T5: 包括T5、mT5和T0等,提供了一種通用的預訓練模型框架,并針對機器翻譯和提示工程進行了改進。
Pangu: 包括Pangu-α、Pangu-Coder和Pangu-Σ,針對中文語料庫和代碼生成進行了優化。
Switch Transformer: 利用LLM中的稀疏性來加速訓練和推理,通過混合專家(MoE)和簡化的稀疏路由來減少計算復雜性。
GLM: 引入了自動回歸空白填充來改進掩碼和填充技術,并以其較小的參數數量在SuperGLUE基準上優于BERT。
ChatGLM和VisualGLM: 分別為BART和GLM的對話和視覺對話版本,展示了LLM在交互和多模態任務中的潛力。
預訓練是LLM開發的關鍵階段,涉及使用大量文本數據訓練模型以學習語言模式、結構和上下文細微差別。本文介紹了各種最先進的預訓練方法,包括訓練數據減少、神經架構搜索、漸進學習和混合精度訓練。
LLM面臨著一些挑戰,包括數據問題、模型壓縮、分布式計算和多模態支持。
數據質量: 數據的相關性、豐富性和冗余性對LLM的性能至關重要。數據質量問題可能會導致模型學習到不準確或不可靠的知識。
數據偏差: 訓練數據中經常存在人類語言或其他數據輸入形式中的偏差,這可能會導致模型對特定主題的偏見理解。
數據規模: LLM需要大量數據來提高準確性和對提示的理解,這給數據收集、處理和存儲帶來了挑戰。
模型壓縮技術旨在優化模型的內部結構以提高效率,同時不顯著降低性能。三種主要技術包括剪枝、量化和知識蒸餾。
由于LLM的規模巨大,傳統的單設備訓練或部署方法不足以處理與這些模型相關的巨大數據集和參數規模。分布式計算已成為解決這些挑戰的關鍵解決方案。目前,三種主要的分布式計算方法被用于解決這些挑戰:數據并行、張量并行和流水線并行。
多模態支持是LLM面臨的一個重大挑戰,特別是在視覺Transformer (ViT)的出現之后,它展示了變換器在視覺任務中的潛力。與傳統的LLM不同,訓練具有多模態支持的模型更復雜,因為需要在不同模態之間對齊表示。這為這些多模態LLM引入了不同的訓練任務。
提示工程是一種技術,通過策略性地制定包含內容和指令的輸入查詢來加快LLM在上下文中的理解速度。該技術比預訓練和微調更簡單,并允許用戶與LLM交互以控制標記數據流。
LLM通過利用其理解和生成人類語言的能力,改變了各個領域。它們的應用范圍很廣,包括文本生成、代碼生成、視覺內容理解和設計自動化。
本文全面回顧了LLM及其在NLP領域的演變。它探索了LLM在各個NLP任務中的各種技能,包括文本
本文章轉載微信公眾號@AI方法與實踐