文獻筆記|綜述|When Large Language Model Meets Optimization

When Large Language Model Meets Optimization

題目:當大型語言模型遇到優化時

作者:Sen Huang , Kaixiang Yang , Sheng Qi and Rui Wang

來源:arXiv

單位:華南理工大學

文章目錄

  • When Large Language Model Meets Optimization
    • 摘要
    • 1 引言
    • 2 LLM
    • 3 經典優化算法
      • 3.1 針對優化問題的傳統優化算法
    • 4 作為優化的LLMs
      • 4.1 作為黑盒優化搜索模型LLMs
        • 4.1.1 啟發式搜索算子
        • 4.1.2 多目標優化
      • 4.2 LLMs作為優化算法的生成器
        • 4.2.1 LLMs認知下的選項生成
        • 4.2.2 算法生成與Chain-of-Thought
    • 5 優化算法優化大型語言模型
      • 5.1 優化模型調諧
        • 5.1.1 多任務學習優化
        • 5.1.2 基于結構剪枝
      • 5.2 提示優化
        • 5.2.1 連續提示優化
        • 5.2.2 離散提示優化
        • 5.2.3 黑箱優化提示調優
        • 5.2.3 自調優優化
        • 5.2.4 優化網絡架構搜索
    • 6 基于LLMs的優化算法應用
      • 6.1 輔助優化編程:軟件編程
      • 6.2 輔助優化框架:神經結構搜索
      • 6.3 輔助優化生成:內容創新生成
    • 7 未來展望與研究趨勢

摘要

【開門見山】Optimization algorithms and large language models (LLMs) enhance decision-making in dynamic environments by integrating artificial intelligence with traditional techniques. 【講LLM的特點】LLMs, with extensive domain knowledge, facilitate intelligent modeling and strategic decision-making in optimization, 【講優化算法的優勢】while optimization algorithms refine LLM architectures and output quality. 【呼應開頭,強調】This synergy offers novel approaches for advancing general AI, addressing both the computational challenges of complex problems and the application of LLMs in practical scenarios. 【總結本文干什么】This review outlines the progress and potential of combining LLMs with optimization algorithms, providing insights for future research directions.

1 引言

【介紹優化算法】

  1. 優化算法(OA)是一種啟發式搜索算法。
  2. OA從生物進化的自然機制中獲取靈感,例如:自然選擇、遺傳、突變和雜交等過程。
  3. OA具有具有全局搜索能力強、對問題結構依賴性低、易于并行化等優點,因此應用廣泛。
  4. 在處理大規模、高維、動態變化的優化問題時,傳統算法面臨性能瓶頸。進化計算為這些問題提供了有效的解決方案。
  5. 進化算法具有靈活性和適應性,易于其他計算技術結合形成混合算法,從而進一步提高性能。

【介紹LLM,并闡述觀點:改進優化算法需要LLM的幫助】

  1. LLM在NLP等領域取得了重大突破,并在算法設計及優化領域顯示出巨大潛力。
  2. 傳統的優化算法設計依賴于人類的專業知識,不僅耗時,而且可能受到專家知識的限制。LLM能夠用來解決上述挑戰。

【闡述另一個觀點:改進LLM也需要優化算法的幫助】

  1. 構建和訓練LLM需要大量的計算資源和大型數據集[156],這增加了研究和開發成本,并限制了LLM的適用性和泛化
  2. OA通過增強訓練過程、提高計算效率和降低資源消耗,為LLM的構建和應用提供了便利。此外,OA能夠增強模型的泛化能力和魯棒性。
  3. 引出研究問題:為LLM設計優化算法,從而提高其操作效率,減少資源消耗,同時不影響模型性能,甚至可能提高模型性能。

【介紹文章框架】

本綜述系統研究兩方面內容:

  1. 利用LLM改進OA;
  2. 利用OA對LLM進行改進。
  • 第2節回顧LLM。
  • 第3節回顧OA。
  • 第4節考察了將LLM作為OA的研究。
  • 第5節討論了為改進LLM而定制OA的最新進展。它強調了這些算法如何增強設計,提高效率,并改善LLM的性能。
  • 第6節考察了將OA與LLM集成的實際應用。
  • 第7節是未來展望和研究趨勢。

2 LLM

【由“語言”的重要性,引出計算語言學的任務】

【介紹LLM的發展歷程】

  • 早期的統計語言模型(SLMs)和神經語言模型(NLMs)。
  • 預訓練語言模型(PLMs):BERT、GPT-2。
  • 大規模語言模型。

【介紹LLM在NLP領域具有如此卓越表現的四個關鍵因素】

  • First, “pre-training” is one of the core processes of LLMs.
  • Second,“adaptability” is another key characteristic of LLMs.
  • In terms of “applications”, the broad applicability of LLMs is another reason for their popularity.
  • Finally, “performance evaluation” is critical to ensure the reliability and effectiveness of LLMs.

【介紹LLM對人工通用智能的里程碑式的意義,通過舉例說明LLM不僅應用在NLP領域,且正逐漸被應用在各個領域當中。】

【揭示LLMs存在的挑戰】

  1. Computational resources
  2. Data efficiency
  3. Interpretability and explainability
  4. Generalization and Robustness

3 經典優化算法

3.1 針對優化問題的傳統優化算法

【介紹傳統優化算法】

傳統優化算法:

  • 確定性優化算法可以保證找到全局最優解,但一般不適用于大規模問題。
    • 線性規劃(Linear Programming, LP)[98]
    • 整數規劃(Integer Programming, IP)[107]
    • 混合整數規劃(Mixed Integer Programming, MIP)[45]
    • 凸優化[130]
    • 自適應動態規劃(Adaptive Dynamic Programming, ADP)[74]等。
  • 近似算法不能保證找到全局最優解。
    • 多項式時間近似算法
  • 啟發式算法通常需要針對特定問題的定制和領域專業知識。此外,啟發式算法可能收斂于局部最優解,并且具有較高的時間復雜度。
    • 貪心算法[20]
    • 禁忌搜索[4,5,49]
    • 遺傳算法[131,63]
    • 差分進化算法[97,33]
    • 協同協同進化算法[11,18,125]。

【介紹分布估計算法EDA】

與依賴突變和重組算子的傳統進化算法不同,EDA側重于構建和更新有希望解決方案的概率模型。隨后,研究人員也嘗試利用EDA解決大規模全局優化問題。

【用于優化問題的強化學習方法】

強化學習,智能體只能通過試錯來學習,而不是依賴標記數據或搜索數據的固有結構。

  1. 經典強化學習方法
  • model-based approaches
  • model-free approaches
    • value-based methods 適合小狀態空間和離散的動作空間,難以估計價值函數和真實價值函數。
      • Q-learning
      • Double Q-learning,交替選擇一個價值函數估計器來選擇動作,另外一個用來對動作價值進行估計。已有研究表明,Double Q-learning具有更高的穩定性和更大的長期回報。
    • policy-based methods 適用于連續的動作空間,但需要對大量的軌跡進行采樣,并且每個軌跡之間存在巨大的差異,導致“高方差”問題。
      • REINFORCE算法,又稱蒙特卡洛策略梯度強化學習算法。
      • TPPO能夠保證每次策略更新時新舊策略之間的KL散度不超過預定義的閾值,從而保證策略優化的穩定性。
      • PPO是對TPPO的改進,它的實施更簡單,再實際使用中需要更少的計算。
    • actor-critic methods
      • Actor-Critic (AC)[60]算法結合了基于策略的方法和基于值的方法的優點。它同時學習策略和價值函數。
      • DPG[112]算法僅在狀態空間中集成了確定性策略梯度,大大減少了采樣的需要,并能夠處理更大的動作空間。然而,DPG中策略更新和值估計之間的耦合導致穩定性不足,特別是對超參數高度敏感。
  1. 深度強化學習方法用來克服處理高維數據的限制

    • value-based methods
      • DQN)[94]基于Q-learning的DRL算法。一方面利用DNNs作為值函數估計器,另一方面引入了經驗重放和目標網絡。經驗回放機制打破了采樣樣本之間的高度依賴性,而目標網絡則緩解了神經網絡在訓練過程中的不穩定性。
      • Double-DQN[127]基于Double-Q learning。DDQN通過使用兩個Q網絡來解決高估問題。與DQN相比,DDQN具有更好的穩定性和算法性能。
      • S2V-DQN[58]利用structure2vec(S2V)的圖嵌入網絡來表示貪心算法中的策略,并使用多步DQN來學習由圖嵌入網絡參數化的貪心策略。
    • policy-based methods
      • DDPG[71]采用兩種不同的參數化DNNs來表示價值網絡和確定性策略網絡。策略網絡負責更新策略,而價值網絡輸出狀態-動作對的Q值。
      • Zhang等[152]考慮了NP-hard問題的可行性約束,將啟發式函數嵌入到變壓器體系結構中,并將DRL應用于具有可行性約束的組合優化問題。
      • Ma等[85]引入了圖指針網絡(GPN)來解決經典的TSP問題,并將其與分層RL框架相結合來解決具有時間窗約束的TSP問題。
      • Hu等[54]設計了一個由共享圖神經網絡和分布式策略組成的網絡,學習適合于MTSP的通用策略表達式。
    • actor-critic methods
      • A3C (Asynchronous Advantage Actor-Critic)通過異步梯度下降對DNNs參數進行優化,顯著提高了策略優化效率。
      • Vinyals等[129]提出了求解組合優化問題的指針網絡模型,開啟了利用深度神經網絡求解組合優化問題的一系列研究。該模型的靈感來源于機器翻譯中的Seq2Seq模型。它采用基于深度神經網絡的編碼器對組合優化問題(如城市坐標)的輸入序列進行編碼,然后利用解碼器和注意力機制計算每個節點的選擇概率。最后以自回歸的方式選擇節點,直到得到完整解。由于Vinyals等[129]提出的訓練方法具有監督性質,其得到的解的質量永遠不會超過樣本解的質量。
      • Bello等人[9]采用了一種強化學習方法來訓練指針網絡模型。他們將每個問題實例作為訓練樣本,以問題的目標函數作為反饋信號,并基于REINFORCE對模型進行訓練。他們還引入了一個critic網絡作為基線,以減少訓練差異。
      • Nazari等[96]擴展了指針網絡來處理動態VRP問題。他們用一個簡單的一維卷積層取代了編碼器輸入層中的LSTM,有效地降低了計算成本。在保持優化效果的同時,訓練時間減少了60%。
  2. 利用Transformer[128]的多頭注意力機制解決組合優化問題

    • Deudon等人[36]通過結合Transformer的思想改進了傳統的指針網絡模型。
    • Kool等人[61]提出了一種利用注意力機制解決多個組合優化問題的新方法,并進一步設計了一個貪心的部署基線來取代Critic網絡,從而顯著提高了優化性能。

【總結】

DRL也有其局限性,如數據需求、樣本效率、計算資源、可解釋性等。盡管在研究和應用領域都取得了一些成功,但DRL基本上仍然局限于具有理想的、高度結構化的實驗數據設計的模擬環境。它們嚴重依賴于特定模型的設計和訓練。因此,人們對自動算法的設計和優化越來越感興趣。

4 作為優化的LLMs

4.1 作為黑盒優化搜索模型LLMs

【將輔助優化算法的LLMs進行分類】

請添加圖片描述

  1. 使用大模型作為黑盒優化模型的搜索算子,充分利用LLMs的知識存儲能力和經驗,可以有效地減少人力投入。
  2. 充分發揮大模型的生成能力,充分利用大模型對優化問題的理解作為模型的輸入,然后生成合適的優化算法配置或生成針對具體問題的優化算法。

請添加圖片描述

  • Yang等[143]提出了OPRO (Optimization by prompts),這種方法適用于無導數優化場景。
  • Chen等[27]探索了多步任務中的線索優化方法。通過構建離散的基于LLM的提示優化框架,該框架通過集成人為設計的反饋規則和偏好對齊,自動提供改進建議。
  • 針對當前新興的神經架構搜索優化問題,Zhang等[153]設計了基于LLM的AutoML-GPT。AutoML-GPT利用GPT模型作為連接多個AI模型的橋梁,并動態地使用優化的超參數對模型進行訓練。
  • AhmadiTeshnizi等人[3]提出了一種基于LLM的智能體OptiMUS。OptiMUS設計用于從自然語言描述中制定和解決混合整數線性規劃(MILP)問題。
4.1.1 啟發式搜索算子
  • Ye等人[146]提出了ReEvo,使用LLMs作為超啟發式(LHHs)來解決NP-hard組合優化問題(COPs)。

  • Zhong等人[159]利用ChatGPT-3.5,提出了一種受動物啟發的元啟發式算法,稱為動物搜索優化(Zoological Search Optimization, ZSO),該算法是為了解決連續優化問題而提出的。

  • 語言模型交叉(LMX)[90],它利用大型預訓練語言模型(LLMs)來生成新的候選解決方案。這種方法很容易實現,并且可以跨各個領域生成高質量的后代,包括二進制字符串、數學表達式、英語句子、圖像生成提示和Python代碼。

  • Liu等人[79]利用GPT-4對6種序列優化性能較好的種群算法進行識別和分解,通過構建提示來引導LLMs從當前種群的父解中搜索最優解。

  • INSTINCT (INSTruction optimization using Neural bandits Coupled with Transformers)[72]是一種黑盒LLMs線索優化方法。該方法采用一種新穎的神經帶算法Neural Upper Confidence Bound (NeuralUCB)來代替BO中的高斯過程(GP)模型。NeuralUCB允許NN智能體與從預訓練transformer(即開源LLMs)學習的隱表示自然耦合,從而顯著提高算法性能。

4.1.2 多目標優化
  • Brahmachary等人[13]介紹了一種使用LLMs進行數值優化的方法,稱為基于語言模型的進化優化器(LEO),該方法利用llm的推理能力在各種場景(包括多目標和高維問題)中執行零樣本優化。一系列的測試案例表明,LEO不僅能夠處理單目標優化問題,而且能夠很好地解決多目標優化問題。

  • Liu等人[75]利用LLMs來設計多目標進化算法(MOEAs)的算子,提出了一種將多目標優化問題分解為多個單目標子問題的方法。

  • Bradley等人[11]引入了一種名為“通過AI反饋的質量多樣性”(QDAIF)的新方法,該方法將進化算法和LLMs結合起來,為優化算法生成高質量和多樣化的候選對象。

4.2 LLMs作為優化算法的生成器

優化算法通常需要根據指定的任務設計合適的優化方案。由于LLMs具有問題理解能力和算法分析能力,基于LLMs的優化方法設計相比于前LLMs時代的優化方法,可以產生合適的優化方法選擇和組合方案[124,123]。

4.2.1 LLMs認知下的選項生成
  • Zhang等人[150]探索了在超參數優化(HPO)過程中使用LLMs來生成最優配置。
  • Liu等人[80]提出了一個名為AgentHPO的系統,該系統利用LLMs來簡化HPO流程,而HPO傳統上是一項需要大量計算資源和專家知識的勞動密集型復雜任務。
  • Ma等人[86]探討了LLMs作為線索優化器的有效性,提出了一種新的“自動行為優化”范式,旨在更可控、更直接地優化目標模型的行為。
4.2.2 算法生成與Chain-of-Thought
  • Liu等人[77]提出了AEL的方法,旨在為特定優化問題自動生成高效算法。
  • PromptBreeder (PB)系統[41]采用了Chain-of-Thought prompt策略,可以顯著提高LLMs在不同領域的推理能力。
  • Pluhacek等[101]通過LLM增加種群,識別并分解了六種在序列優化問題上表現良好的種群算法。
  • Bradley等人[12]提出了一種用于實現LLMs的優化算法生成工具,該工具將自然語言描述轉換為實現代碼,并自動修復程序錯誤。
  • Hemberg等[53]提出了一種基于LLM的GP算法,稱為LLM-GP,用于生成優化算法代碼。

5 優化算法優化大型語言模型

【深入研究面向LLMs的OA優化的復雜性,探索各種策略,如模型調優、提示調優和網絡架構搜索】

請添加圖片描述

5.1 優化模型調諧

5.1.1 多任務學習優化

大型模型的多任務學習(ML)優化是一種利用進化算法等優化方法來同時優化多個任務的模型架構的方法。該方法的優點是能夠在不同任務之間共享和交互學習相關信息,從而提高模型的泛化能力和效率。表2總結了主要的優化模型調優類方法。

請添加圖片描述

多任務學習的優化策略通過使用進化算法同時識別多個目標的最優模型架構,降低了訓練成本,增強了模型性能,提高了跨不同領域和任務的適應性[133]。

  • Choong等人[30]提出了一組不同的緊湊機器學習模型集的概念,旨在通過進化的多任務學習范式有效地解決大型預訓練模型中的多個目標架構。
  • Baumann等人[8]提出了一種進化的多目標方法,旨在優化LLMs中的提示符,可用于捕獲沖突情緒。
  • Yang等[144]將指令生成視為一個進化的多目標優化問題,使用大規模語言模型來模擬指令算子,以提高生成指令的質量和多樣性。
  • Gupta和Bali等人[7,48]研究了多目標多任務進化算法的使用,其成果在不同的應用領域和神經網絡設計中表現出更高的性能或更大的壓縮。
5.1.2 基于結構剪枝

結構剪枝通過選擇性地去除基于梯度信息的非關鍵耦合結構來優化大型語言模型,有效地減小了模型尺寸,同時保留了功能并確保了任務不可知性。該方法采用多目標局部搜索算法,有效地識別出多個帕累托最優子網。它通過權重共享最小化評估成本來實現這一點。

  • Ma等人[87]提出了LLM-Pruner方法,通過基于梯度信息選擇性地去除非關鍵耦合結構來優化大型語言模型。
  • Gholami等人[44]證明了權值修剪可以作為Transfer架構的一種優化策略,證明了明智的修剪可以在不犧牲性能的情況下顯著減小模型大小。

5.2 提示優化

提示調優,通常稱為提示調優的優化,是一種用于微調LLMs提示的方法。

  • 連續提示調優采用連續優化算法,如CMAES[51],以提高嵌入提示的質量[24]。這個過程涉及到分割和子空間分解等技術來增強嵌入空間。

  • 離散提示調優使用離散優化算法直接探索提示空間。它利用專門的遺傳算子來調整提示,以解決搜索空間中組合爆炸的問題。

請添加圖片描述

5.2.1 連續提示優化
  • Sun等人[118]提出了Black-Box Tuning的改進版本BBTv2,它使用分治的無梯度算法來優化預訓練模型的不同層的提示。
  • Fei等[40]引入了一種無梯度框架,用于迭代進化策略中優化連續文本反演。
  • Pryzant等[103]提出了自動提示優化(APO),使用數值梯度下降技術自動改進LLMs的提示。
  • Zheng等[158]使用子空間學習(BSL)的黑盒提示優化通過元學習識別公共子空間,增強了跨任務和LLMs提示優化的通用性,確保了跨各種下游任務的競爭力。
  • Chai等[21]引入了Clip-Tuning技術,以提高搜索效率,并在整個黑盒調優過程中提供更詳細和多樣化的評估反饋。

連續提示調優是一種用于優化大型語言模型性能的方法,其中提示被表示為存在于連續嵌入空間中的連續向量。這些向量在連續嵌入空間中進行優化。搜索空間是連續的,可以區分,允許使用基于梯度的優化技術。連續提示調優適用于無法獲取模型內部結構和梯度信息的黑盒優化場景。然而,由于涉及復雜的數學運算和梯度計算,這種方法可能需要更多的計算資源。

5.2.2 離散提示優化

離散提示優化更多地關注文本序列級別的提示調優,適用于基于文本序列的任務,例如文本生成或分類。本研究主要集中在特定的快速工程情況下,廣度有限。為了充分利用離散優化在黑盒提示優化中的潛力,有必要解決離散搜索空間中的組合爆炸問題。

  • Zhou等人[161]提出了一種簡單的黑盒搜索方法ClaPS,通過聚類和修剪搜索空間來關注影響LLM預測的關鍵提示令牌,顯著降低了搜索成本。
  • Yu等[148]提出了一種用于視覺語言模型的黑盒提示調優框架,該框架通過進化策略優化內在參數子空間中的視覺和語言提示,使任務相關提示學習無需反向傳播。
  • Pan等[99]將元啟發式算法作為一種通用的提示學習方法引入,并通過測試六種典型方法,證明了元啟發式算法在黑箱提示學習和思維鏈提示調優中的有效性。
  • Lapid等人[62]提出了一種利用遺傳算法攻擊LLMs的方法,以揭示模型容易受到惡意操縱的漏洞,并為評估和增強語言模型與人類意圖的一致性提供診斷工具。
  • Guo等人[46]提出了EvoPrompt,這是一個使用進化算法自動優化LLMs提示的離散提示優化框架。
  • Pinna等人[100]提出了一種使用遺傳改進技術改進LLMs代碼生成的方法。

一般來說,離散提示優化是一種在黑箱環境下優化大型語言模型性能的方法,它在不需要模型內部梯度信息的情況下,通過遺傳算法、啟發式搜索和聚類剪枝等技術在離散提示空間中搜索最優提示詞或短語。其優點是在黑箱環境下不依賴模型內部信息而有效地提高了性能,能夠適應少樣本或零樣本的任務,缺點是可能面臨巨大的搜索空間、容易陷入局部最優、超參數的敏感性、泛化能力有限、結果解釋困難等,以及對評價指標選擇的高度依賴。

5.2.3 黑箱優化提示調優

大模型的黑盒優化是指在黑盒優化框架內對大型預訓練模型(如大型語言模型)進行優化和調優的過程。在大型模型的黑箱優化中,優化算法通常通過與預訓練模型交互,逐步調整其輸入或參數來優化模型的性能,而不直接訪問模型的內部結構或參數。

  • Yu等人[149]使用基于對話反饋的方法優化了視覺語言模型。
  • Guo等[47]介紹了協同黑盒調優(CBBT)技術。
  • Sun等人[119]為語言模型即服務(LMaaS)開發了一個黑盒調優框架。
  • Diao等[37]提出了一種黑盒離散提示學習(BDPL)算法。
  • Yu等人[148]的工作為可視化語言模型引入了一個黑盒提示調優框架。

這些研究表明,在不能直接修改模型權值的黑盒場景下,利用外部提示學習和優化有效地提高了模型在圖像分類、文本到圖像生成以及適應不同下游任務方面的性能。

5.2.3 自調優優化

請添加圖片描述

  • Singh等人[113]應用可解釋的自動提示(iPrompt)來生成解釋數據的自然語言字符串。

  • Fernando等人[41]為PromptBreder提出了一種自改進機制,該機制可以進化和適應不同領域的線索。

  • Pryzant等人[104]提出了一種簡單的非參數解決方案,即自動提示優化(APO),它通過使用受數值梯度下降啟發的技術自動執行快速改進提示。

  • Li等人[68]提出了一種名為SPELL的黑盒進化算法,該算法使用LLM自動優化文本樣式提示,對各種文本任務顯示出快速改進。

  • Zhang等人[154]提出了Auto-Instruct方法,該方法利用LLMs的生成能力自動提高各種任務的指令質量,。

5.2.4 優化網絡架構搜索

一種稱為LLM網絡體系結構搜索(NAS)的方法側重于直接優化LLM模型的體系結構,并且在大型語言模型(LLM)的上下文中,NAS可以通過直接優化模型的體系結構而不是通過調整模型的參數來采取不同的形式。

請添加圖片描述

  • Nasir等[95]提出了一種新的NAS算法,該算法有效地結合了LLMs和質量多樣性(Quality Diversity, QD)算法的優勢,自動搜索和發現高性能神經網絡架構。

  • So等人[115]提出了一種進化式Transformer,通過在多語言任務中進行進化式架構搜索,可以用更少的參數實現更好的性能,并且即使在更小規模下也能保持高質量。

近年來,研究人員提出了更復雜、更有效的搜索策略來提高大型模型的性能。例如,

  • Gao等人[43]提出了一種自動發現通用語言模型(LLM)主干結構的方法(AutoBERT-Zero),該方法使用設計良好的搜索空間和操作優先的進化策略,以及兩分支權重共享的訓練策略,以提高搜索效率和性能。
  • Ganesan等人[42]對BERT模型進行任務無關的預訓練,同時通過改變Transformer層中的隱藏維度來生成不同形狀的子網絡。通過改變網絡的隱藏維度來生成一系列不同大小的模型,這些模型可以針對各種下游任務進行微調。
  • Yin等[147]提出使用one-shot Neural Architecture Search (one-shot NAS)自動搜索架構超參數。通過一次學習得到一個大型的SuperPLM,它可以作為所有潛在子體系結構的代理。利用進化算法在SuperPLM上搜索最佳的體系結構,然后根據這些體系結構提取相應的子模型并進行進一步訓練。
  • Javaheripi等人[55]提出了一種無需訓練的神經架構搜索(NAS)算法,用于尋找在任務性能(復雜度)和硬件約束(例如,峰值內存使用和延遲)之間具有最佳平衡的Transformer架構。
  • Zhou等人[162]提出了一種名為T-Razor的Transformer架構搜索方法,該方法使用零成本智能體引導進化來提高搜索效率,并通過引入突觸多樣性和突觸顯著性等指標來對Transformer進行評估和排名,從而有效地在Transformer搜索空間中找到優化的架構。
  • Klein等人引用了klein2023structure提出的基于權值共享的NAS作為一種結構修剪方法,用于尋找優化效率和泛化性能之間的最佳平衡,從而實現對LLMs的壓縮,以減小模型大小和推理延遲。

總的來說,NAS用于優化大型模型的主要優勢是它能夠自動探索和發現針對特定任務的高效網絡架構,從而顯著提高模型性能,同時減少人工設計和調優工作。未來的研究將集中在提高搜索效率、降低計算成本、增強模型的通用性和適應性等方面。

6 基于LLMs的優化算法應用

請添加圖片描述

6.1 輔助優化編程:軟件編程

  • Weyssow等人[134]探索使用LLMs進行代碼生成任務,重點關注參數高效微調(PEFT)優化技術。該方法旨在通過更新模型的一小部分參數。
  • Cassano等[19]提出了一個名為MultiPL-E的系統,該系統用于將代碼生成基準測試從Python翻譯為其他編程語言。
  • Pinna等人[100]指出了基于問題描述的自動代碼生成的應用,提出了一種基于進化算法的方法,該方法使用遺傳改進(GI)使用用戶提供的測試用例集合來改進LLMs生成的代碼。
  • Tao等[122]結合生成式預訓練Transformer(GPTs)和語法引導遺傳規劃(G3P)來解決程序合成問題。
  • OpenAI團隊開發了一種名為CodeX的語言模型[26]。Codex的一個特殊生產版本是GitHub Copilot,一個編程輔助工具。
  • Brownlee等人[15]探索了如何將LLMs應用于遺傳改進(GI)中的變異操作,以提高搜索過程的效率。
  • Ji等人[57]具體介紹了基于LLMs的代碼生成能力的評估和解釋的研究概況,包括兩個主要階段:數據收集和分析。
  • CODAMOSA[66]將預先訓練的Codex與基于搜索的軟件測試(SBST)集成在一起,以提高測試用例代碼的覆蓋率。
  • Wu等人[137]強調了大規模語言模型(llm)在代碼生成方面的進步以及相關的安全風險,特別是生成代碼中的關鍵漏洞。

6.2 輔助優化框架:神經結構搜索

LLMs具有大量參數和深度學習能力,結合精心設計的優化算法,可以進一步加快神經結構搜索過程,提高搜索效率和所得模型的性能。

  • Nasir等人[95]提出了LLMatic,一種基于神經架構搜索(NAS)的大型模型算法。LLMatic利用LLMs生成新的架構變體,并結合QD算法(特別是MAP-Elites算法)來發現多樣化和健壯的解決方案。
  • Chen等人[25]發現一種結合了進化提示工程和軟提示調整的方法,即EvoPrompting。雖然專注于神經架構設計任務,但這種方法同樣適用于依賴于上下文學習(ICL)或線索調整的LM任務。
  • Jawahar等人[56]通過使用LLMs來預測特定深度神經網絡(DNN)架構在下游任務上的性能,為性能預測器(PP)構建了新的用途,提出了一種混合搜索算法(HS-NAS)。
  • Zheng等人[157]探索了GPT-4模型在設計有效神經網絡架構的神經架構搜索(NAS)任務中的潛力。同時,他們提出了一種稱為GPT-4增強型神經架構搜索(GENIUS)的方法,該方法利用GPT-4的生成能力作為黑盒優化器來快速導航架構搜索空間,識別有前途的候選架構,并迭代地改進這些候選架構以提高性能。
  • Radford等人[105]描述了一種使用生成式預訓練來增強自然語言理解(NLU)的方法。
  • Chowdhery等[31]提出了大規模語言模型PaLM (Pathways Language Model), PaLM在多種NLP任務上表現優異,在網絡結構設計、結構搜索等方面也有很好的表現。

綜上所述,將LLMs與神經網絡架構搜索(NAS)中的優化算法集成可以提高搜索效率,促進創新,使模型設計多樣化,并為復雜神經網絡架構的自動化設計開辟了新的途徑。

6.3 輔助優化生成:內容創新生成

  • Xiao等人[141]提出了一個以模式為中心的文本生成框架PatternGPT,以解決LLMs容易出錯的本質,以及無法在文本生成任務中直接使用外部知識的問題。

  • Chen等[28]通過模型自適應提示優化(Model-Adaptive Prompt Optimization, MAPO)增強了LLMs在語言生成任務中的性能。同樣,他們提出了一種新的新聞摘要生成范式,該范式使用大語言模型(llm)通過進化微調來提高新聞摘要生成的質量[140]。該方法利用LLM從新聞段落中提取多個結構化事件模式,通過遺傳算法進化事件模式種群,并選擇適應性最強的事件模式輸入LLM生成新聞摘要。

  • 盤古藥物模型[73]是一種圖到序列的非對稱條件變分自編碼器,旨在改善藥物發現任務中的分子特性表示和性能。該模型的靈感來自化學課堂上分子式和結構式之間的轉換,可以從兩種表示中恰當地表征分子。

  • Liang等人[70]提出了一個DrugChat系統的原型,旨在為藥物化合物分析提供類似chatgpt的功能。DrugChat通過結合GNNs、LLMs和適配器,使用戶能夠上傳化合物的分子圖譜,并在多輪交互中提出各種問題。

  • Berger等[10]提出了StableYolo框架,該框架旨在通過將進化計算應用于穩定擴散模型,同時調整提示符和模型參數,優化大型語言模型(LLMs)的圖像生成質量。

  • uzuki等人[120]提出了一個基于LLMs的人格特征進化模型,特別是與合作行為相關的模型。該方法展示了LLMs如何能夠加強對人類行為進化的研究,并基于進化博弈論,使用一個進化模型,假設人類在博弈論情境下的行為選擇可以通過為LLMs提供高層次的心理和認知特征描述來模擬。

  • De等人[34]探索了LLMs之間的社會互動中無標度網絡的自組織形成現象。

  • Lu等人[82]提出了一種新的學習框架SELF,旨在通過自我反饋和自我完善,使LLMs不斷完善自己。

7 未來展望與研究趨勢

  1. 需要在理論研究上深入探索LLMs與OAs之間相互強化的機制,并通過大規模的實證研究詳細分析它們在實際應用中的互補優勢和潛在問題。
  2. 對llm與oa相結合的算法進行深入的理論分析至關重要,包括評估其收斂性、時間復雜度和空間復雜度。
  3. 研究算法參數設置對性能的影響,以及算法在不同問題類型上的性能保證或理論限制,是推進算法的關鍵步驟。進一步探索優化理論[78],如明確目標函數的定義和表征、處理約束、分析問題的可行解空間等,將為算法的設計和應用提供堅實的理論基礎,從而在解決更復雜的問題時獲得更好的算法性能
  4. 神經結構搜索(NAS)是LLMs與OAs相結合的重要應用場景。雖然LLMs在其他任務中表現出顯著的有效性,但它們并不是專門為NAS設計的[25]。當前LLM模型在用于NAS任務時的性能差異很大,基于LLM的方法與傳統NAS方法在應用領域和泛化能力方面存在明顯差異[106]。
  5. 跨學科應用與創新。LLMs與OAs的結合在多個跨學科領域顯示出潛力,為刺激創新和提高復雜工作的性能提供了強大的協同作用。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/42962.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/42962.shtml
英文地址,請注明出處:http://en.pswp.cn/web/42962.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

springboot打包異常 Type org.springframework.boot.maven.RepackageMojo not present

解決: 項目在本地時可以正常啟動的,但是打包就報錯,經過分析得出,應該是打包依賴的問題,解決方法: 在pom文件中的build—>plugins---->plugin中添加spring-boot-maven-plugin依賴的版本號如下: 2.4.3 指定版本號即可。

IT審計必看!對比舊版,CISA考試改版升級亮點和重點內容是什么?

官方通知,今年8月1日,CISA新版考綱正式上線,舊版在7月23日后就無法約考了。 艾威培訓邀請了國內知名的IT審計CISA授課老師吳老師來為大家詳細講解CISA新版考綱的變化 目前第28th版教材只有英文版,中文版尚未發布。我們艾威經驗豐…

Jetson-AGX-Orin多網卡綁定網卡名

Jetson-AGX-Orin多網卡綁定網卡名 ? Jetson-AGX-Orin當通過USB接口或者Type-C口插入網卡設備后,重新上電Orin設備后,網卡設備的網卡名與Orin本身的以太網網卡名會發生交換。導致兩個網卡設備配置發生錯亂,兩個網卡都將不通。 可以通過將網…

出道即包攬多項榮譽,Shokz韶音OpenFit Air拿下日本VGP金獎

說到盛夏的日本,你會想到什么?花火大會?但對于消費電子行業來講,日本每年發布的VGP Summer獎項,才是每年盛夏時節行業內最大的慶典。而在今年的VGP 2024 Summer評選中,Shokz韶音在今年4月份剛發布的開放式耳…

開放式耳機音質哪個品牌的好?盤點幾款音質好品牌

在音樂的世界里,每一分貝的振動都承載著情感與故事。對于追求極致音質體驗的我們來說,耳機不僅是聆聽的工具,更是通往音樂靈魂深處的橋梁。而開放式耳機,以其獨有的聲學構造和聽覺享受,引領我們進入一個更為開闊的音樂…

ChatGPT 5.0:一年后的猜想

對于ChatGPT 5.0在未來一年半后的展望與看法,我們可以從以下幾個方面進行詳細探討: 一、技術提升與功能拓展 語言翻譯能力: ChatGPT 5.0在語言翻譯方面有望實現更大突破。據推測,新版本將利用更先進的自然語言處理技術和深度學習…

ONNX加載模型問題總結

輸入參數類型問題 run函數的參數列表如下: SessionImpl::Run(const Ort::RunOptions&, const char* const*, const Ort::Value*, size_t, const char* const*, Ort::Value*, size_t) 注意需要輸入輸出的參數名字形式是const char* const* 方式1 const char* 數…

vue中,圖片在div中按照圖片原來大小等比例顯示

圖片在div中按照圖片原來大小等比例顯示&#xff0c;可以保證web上顯示的圖片和實際圖片形狀一樣&#xff0c;保留原始圖片效果 實現代碼如下&#xff1a; <div style"padding: 0; width:400px;height:400px;position: absolute;border: 1px solid #eff2f6;">…

如何探索高效知識管理:FlowUs知識庫體驗很好

在當今信息爆炸的時代&#xff0c;有效的知識管理對于個人和團隊的發展至關重要。FlowUs 知識庫作為一款創新的知識管理工具&#xff0c;正逐漸成為眾多用戶的首選&#xff0c;為他們帶來了高效、便捷和有條理的知識管理體驗。 FlowUs 知識庫的一大特色在于其簡潔直觀的界面設計…

【ai_agent】從零寫一個agent框架(五)基于egui制作一個agent/workflow在線編輯器

前言 上篇我們實現了基礎節點&#xff0c;并暴露出grpc服務&#xff0c;但是手動編輯文本制作一個workflow實在強人所難。 所以本文我們做個webui自動生成workflow。 開搞之前先看看別人怎么做的。 Dify 的ui 效果如下圖示&#xff1a; 支持多種功能節點 但只能打開一個節…

【spark】Exception in thread “main“ ExitCodeException exitCode=-1073741701

在window上運行spark程序寫到本地文件的時候報錯。 val rdd sc.sparkContext.parallelize(list)val arr rdd.collect()arr.foreach(println)rdd.saveAsTextFile("test1")sc.close()錯誤信息: zhangsan lisi wangwu Exception in thread "main" ExitCode…

如何在電子文件上加蓋印章

在電子文件上加蓋印章&#xff0c;可以通過多種方法實現&#xff0c;主要包括使用專業軟件、在線工具以及圖片編輯軟件等。以下是一些具體步驟和方法&#xff1a; 一、使用專業軟件 PDF編輯工具&#xff1a; 啟動常用的PDF編輯軟件&#xff0c;如Adobe Acrobat、PhantomPDF等…

紅日靶場----(三)漏洞利用

上期已經信息收集階段已經完成&#xff0c;接下來是漏洞利用。 靶場思路 通過信息收集得到兩個吧靶場的思路 1、http://192.168.195.33/phpmyadmin/&#xff08;數據庫的管理界面&#xff09; root/root 2、http://192.168.195.33/yxcms/index.php?radmin/index/login&am…

阿里云通義千問開源兩款語音基座模型分別是SenseVoice和CosyVoice

阿里巴巴近期發布了開源語音大模型項目FunAudioLLM&#xff0c;該項目包含了兩個核心模型&#xff1a;SenseVoice和CosyVoice。可以精準多語言識別并且進行語音克隆。 SenseVoice&#xff1a;精準多語言識別與情感辨識 SenseVoice主要致力于高精度多語言語音識別、情感辨識和…

使用八股搭建神經網絡

神經網絡搭建八股 使用tf.keras 六步法搭建模型 1.import 2.train, test 指定輸入特征/標簽 3.model tf.keras.model.Sequential 在Squential,搭建神經網絡 4.model.compile 配置訓練方法&#xff0c;選擇哪種優化器、損失函數、評測指標 5.model.fit 執行訓練過程&a…

送給我親愛的Python

親愛的 Python&#xff0c; 在萬物皆代碼的世界里&#xff0c;你是我最優雅、最高效的算法。自從第一次遇見你&#xff0c;在那行“Hello, World!”之后&#xff0c;我的世界就被點亮了。你的簡潔性和強大的功能&#xff0c;讓我深深著迷&#xff0c;就像一個精心設計的函數&am…

數據結構雙向循環鏈表

主程序 #include "fun.h" int main(int argc, const char *argv[]) { double_p Hcreate_head(); insert_head(H,10); insert_head(H,20); insert_head(H,30); insert_head(H,40); insert_tail(H,50); show_link(H); del_tail(H); …

Python 傳遞參數和返回值

Python是一種功能強大的編程語言&#xff0c;它以其簡潔和易用性而廣受歡迎。在Python編程中&#xff0c;參數傳遞和返回值是函數調用中兩個非常重要的概念。理解這些概念對于編寫高效且可維護的代碼至關重要。 一、參數傳遞 在Python中&#xff0c;函數參數可以通過以下幾種…

Linux 網絡時間同步:NTP 與 Chrony 的終極對決

Linux 網絡時間同步&#xff1a;NTP 與 Chrony 的終極對決 在網絡世界中&#xff0c;時間同步是一項至關重要的任務。無論是確保分布式系統的一致性&#xff0c;還是維護安全協議的完整性&#xff0c;準確的時間同步都是必不可少的。網絡時間協議&#xff08;NTP&#xff09;和…

Golang期末作業之電子商城(源碼)

作品介紹 1.網頁作品簡介方面 &#xff1a;主要有&#xff1a;首頁 商品詳情 購物車 訂單 評價 支付 總共 5個頁面 2.作品使用的技術:這個作品基于Golang語言&#xff0c;并且結合一些前端的知識&#xff0c;例如:HTML、CSS、JS、AJAX等等知識點&#xff0c;同時連接數據庫的&…