AIxiv專欄是機器之心釋出學術、技術內容的欄目。過去數年,機器之心AIxiv專欄接收報導了2000多篇內容,覆蓋全球各大高校與企業的頂級實驗室,有效促進了學術交流與傳播。如果您有優秀的工作想要分享,歡迎投稿或者聯絡報導。投稿郵箱:liyazhou@jiqizhixin.com;zhaoyunfeng@jiqizhixin.com
論文標題:A Systematic Survey on Large Language Models for Algorithm Design 論文地址:https://arxiv.org/abs/2410.14716
LLM4AD 的系統綜述:我們首次對過去三年中發表的 180 多篇高度相關的研究論文進行了系統綜述,探討了使用 LLMs 進行演算法設計的發展。 LLM4AD 的多維度分類:我們引入了一個多維度分類法,將 LLM4AD 的作品和功能分為四個不同的維度:1)LLMs 在演算法設計中使用的四種正規化,概述了這些模型如何為演算法設計做出貢獻或增強演算法設計;2)搜尋方法,探討了 LLMs 用於導航和最佳化演算法設計中搜尋空間的各種方法;3)提示詞設計,研究瞭如何使用不同的提示策略;以及 4)應用領域,確定 LLMs 正在應用於解決的不同領域。 LLM4AD 的挑戰和未來方向:我們不僅僅是對現有文獻進行總結,而是對當前關於演算法設計中大型語言模型(LLMs)研究的侷限性進行了批判性分析。此外,我們提出了潛在的未來研究方向,包括開發領域特定的 LLMs、探索多模態 LLMs、促進人與 LLM 的互動、使用 LLMs 進行演算法評估和理解 LLM 行為、推進全自動演算法設計,以及為系統評估 LLM 在演算法設計中的表現進行基準測試。這一討論旨在激發新的方法並促進該領域的進一步發展。
第一階段 資料提取和收集:我們透過谷歌學術、科學網和 Scopus 收集相關論文。我們的搜尋邏輯是標題必須包含以下兩組詞語中至少一組的任意組合:“LLM”、“LLMs”、“大型語言模型”、“演算法”、“啟發式”、“搜尋”、“最佳化”、“最佳化器”、“設計”、“方法”(例如,LLM 和最佳化,LLMs 和演算法)。在移除重複的論文後,截至 2024 年 7 月 1 日,我們共收集到 850 篇論文。 第二階段 摘要篩選:我們檢查每篇論文的標題和摘要,以有效排除不相關的論文。排除的標準包括這些論文不是英文的,不是用於演算法設計的,沒有使用大型語言模型的。掃描後,剩餘 260 篇論文。 第三階段 全文篩選:我們徹底審查每篇論文,排除缺乏相關內容的論文。掃描後,剩餘 160 篇論文。 第四階段補充:根據對該領域的瞭解,我們手動新增了一些相關的工作,以避免遺漏任何重要的貢獻。在整合了額外的論文後,我們最終得到了 180 多篇論文。我們將首先介紹 LLM4AD 論文列表的概覽,然後提出一個分類法來系統地回顧進展。除了組織好的論文列表之外,我們還納入了 2024 年 7 月 1 日之後釋出的一些重要出版物。
LLMaO 把 LLMs 用作演算法框架內的黑盒最佳化器。將 LLMs 整合到最佳化任務中,充分利用它們理解和生成複雜模式和解決方案的能力,以及在提示工程中的良好靈活性。然而,由於它們的黑盒性質,它們通常缺乏可解釋性,並在面對大規模問題時面臨挑戰。 LLMaP 使用 LLMs 作為代理模型,預測結果或響應,功能上大體可以分為分類或迴歸兩類。與其他基於模型的預測器(如高斯過程和傳統神經網路)相比,1) LLMs 能夠基於其在龐大資料集上接受的訓練,處理和生成類人響應。這種能力使它們能夠理解和解釋資料中的複雜模式,適用於傳統建模技術可能因資料的複雜性和複雜表示而難以應對的任務。2) 預訓練的 LLMs 可以顯著減少與訓練高保真模型相比所需的計算負載和時間。 LLMaE 利用 LLMs 挖掘和提取目標問題和(或)演算法中的嵌入特徵或特定知識,然後在解決新問題中利用這些特徵。這一過程利用了 LLMs 的獨特和強大的能力,如文字和程式碼理解,使它們能夠識別資料中可能透過傳統特徵提取方法無法處理或理解的模式和關係。 LLMaD 直接建立演算法或特定元件。這種正規化充分利用了 LLMs 的語言處理、程式碼生成和推理能力。LLMs 透過生成啟發式演算法、編寫程式碼片段或設計函式,進一步推動了演算法設計自動化,顯著加速演算法設計過程,減少人力勞動,並可能為演算法開發帶來創造性和更好的設計。這是單靠傳統演算法設計方法難以實現的。
演算法設計大模型 與使用通用的預訓練 LLMs 不同,研究如何專門訓練 LLM 以自動設計演算法是值得的。在開發領域特定 LLM 時可以探索以下幾個方面:1)訓練領域 LLM 成本高且資源消耗大。藉助領域資料和知識可以減小特定應用的演算法 LLM 的規模。2)演算法設計生成和收集領域資料存在挑戰。與通用程式碼生成或語言處理任務不同,沒有專門用於演算法設計的大型且格式化的資料。3)與其學習一個文字和程式碼生成模型,如何學習演算法開發思想和演算法推理能力仍是一個未探索的問題。 多模態 LLM 現有的 LLM4AD 工作主要集中在利用 LLM 的文字理解和生成能力,無論是在語言、程式碼還是統計方面。與傳統的基於模型的最佳化相比,LLM 的一個優勢是它們能像人類一樣處理多模態資訊,這一點很少被研究。已經有一些嘗試展示了在演算法設計中融入多模態資訊的優勢,預計將開發更多利用多模態 LLM 的方法和應用。 人類 - 大模型互動 需要進一步研究 LLM 與人類專家在演算法設計中的互動。例如,在 LLMaD 工作中,LLM 可以被視為智慧代理,使人類專家可以介入並接管生成、修改和評估演算法等任務。研究如何促進 LLM 與人類專家之間高效且富有成效的合作將是有價值的。可以為此目的使用群體智慧中的思想和技術。 基於 LLM 的演算法評估 LLM 在演算法評估中可能是有幫助的。已經進行了一些嘗試來自動評估演算法和評估演算法設計。例如,已有工作利用基礎模型自動生成定義下一個可學習任務的程式碼,透過生成環境和獎勵函式,能夠為演算法評估建立各種模擬學習任務。我們期待更多關於基於 LLM 的演算法評估的研究。 理解 LLM 的行為 在大多數研究中,LLM 作為一個黑盒模型運作。解釋 LLM 的行為不僅能豐富我們對 LLM 行為的理解,還有助於那些直接請求 LLM 困難或成本高昂的情況。已經有一些嘗試來近似和理解 LLM 在解決方案生成中的上下文學習行為。例如,已有人設計了一個白盒線性運算元來近似 LLM 在多目標進化最佳化中的結果。儘管有這些初步嘗試,如何解釋 LLM 的行為在許多演算法設計案例中仍是一個開放的問題,包括啟發式生成和想法探索。 全自動演算法設計 全自動演算法設計面臨兩個主要挑戰:1) 生成新的演算法思想;2) 建立複雜、冗長的程式碼。雖然一些研究已經探討了新思想的生成,但完整的演算法設計(而不僅是啟發式元件),包括啟發式元件和詳細的程式碼實現,仍然是一個挑戰。現有應用通常專注於自動化預定義演算法框架內的元件,而不是從頭開始建立新演算法。未來的研究需要解決這些複雜性,以推進全自動演算法設計領域的發展。 LLM4AD 的標準測試集和平臺 標準測試集能促進進行公平、標準化和便捷的比較。雖然我們很高興見證了多樣化的研究工作和應用的出現,但仍然缺乏對基於 LLM 的演算法設計的系統和科學的標準評估手段。未來,預計會有更多的基準測試出現,它們將在推進 LLM4AD 方面發揮關鍵作用。