Paper2Code:好像復現(xiàn)論文成了可能
引言
可重復性是科學進步的基石,然而在機器學習領域,許多已發(fā)表論文并未附帶相應的代碼實現(xiàn),阻礙了結(jié)果驗證并延緩了科研進程。為了解決這一難題,KAIST 與 DeepAuto.ai 的研究團隊提出了 PaperCoder——一種自動化框架,能夠從機器學習研究論文中直接生成可執(zhí)行的代碼庫。
PaperCoder 框架概述圖 1:PaperCoder 的三階段流程,展示了如何通過規(guī)劃、分析和編碼,將論文轉(zhuǎn)換為完整的代碼庫。
相比于依賴現(xiàn)有代碼片段或 API 的傳統(tǒng)方案,PaperCoder 通過多代理系統(tǒng),利用大型語言模型(LLM)模擬人類的軟件開發(fā)流程,自動生成端到端、可執(zhí)行的代碼庫。該系統(tǒng)由規(guī)劃、分析和生成三個階段組成,每個階段由專門的 LLM 代理協(xié)同完成。
機器學習中的可重復性危機
機器學習社區(qū)正面臨嚴峻的可重復性挑戰(zhàn)。對近期頂級會議論文的統(tǒng)計顯示,公開代碼的比例極低:
機器學習會議中的代碼可用性圖 2:ICLR、NeurIPS 和 ICML 2024 上公開代碼的論文比例。
如圖所示,ICLR 2024 公開代碼的論文僅占 21.2%,NeurIPS 2024 為 10.9%,ICML 2024 僅有 31.6%。缺乏實現(xiàn)細節(jié)使研究人員難以復現(xiàn)和擴展已有工作,進而拖慢整個領域的發(fā)展。
PaperCoder 框架
PaperCoder 將“從論文到代碼”的任務形式化為軟件開發(fā)問題:
?R:包含方法與算法描述的研究論文
?C:生成的代碼庫
?M:基于 LLM 的轉(zhuǎn)換模型
該框架仿照人類開發(fā)流程,分為三個階段:
1.規(guī)劃階段:
? 制定整體架構(gòu)路線圖(UML 類圖、時序圖)
? 確定文件依賴關系
? 生成配置文件
2.分析階段:
? 對每個文件和函數(shù)進行細粒度解析
? 分析輸入/輸出、模塊交互和算法細節(jié)
? 標注關鍵組件(例如位置編碼、優(yōu)化器實現(xiàn))
3.生成階段:
? 按照規(guī)劃階段確定的順序,合成完整代碼庫
每一階段由相應的 LLM 代理執(zhí)行,各代理協(xié)同工作,確保論文中的重要細節(jié)被準確提取并融入生成的代碼中。
技術實現(xiàn)
PaperCoder 通過對比樸素方法,凸顯其結(jié)構(gòu)化流程的優(yōu)勢:
PaperCoder 詳細實現(xiàn)圖 3:PaperCoder 與直接輸入 LLM 的樸素方法對比。
?樸素方法:將整篇論文直接喂入 LLM,往往忽略位置編碼或優(yōu)化器等細節(jié),導致生成的代碼錯誤頻發(fā)。
?PaperCoder:
a.規(guī)劃:整體設計、UML 繪制、依賴規(guī)劃、配置生成
b.分析:細粒度解析每個模塊,識別關鍵算法組件
c.編碼:基于分析結(jié)果,逐步合成、實現(xiàn)所有必要功能
通過這種分層設計,PaperCoder 能精確捕捉諸如位置編碼實現(xiàn)、帶特定超參數(shù)的 Adam 優(yōu)化器等細節(jié),生成高質(zhì)量、易執(zhí)行的代碼。
評估方法
PaperCoder 的性能評估包括定量指標與人工評估:
1.參考評估:將生成代碼與公開參考實現(xiàn)進行對比
2.無參考評估:在缺乏參考實現(xiàn)的場景下,評估代碼質(zhì)量
3.人工評估:由原論文作者或領域?qū)<掖蚍?/p>
評估方法之間的相關性圖 4:基于參考評估與無參考評估得分的相關性 (r = 0.79)。
相關性高達 0.79,表明即使在無參考實現(xiàn)的情況下,也能可靠評估生成代碼的正確性。
結(jié)果與性能
實驗結(jié)果表明,PaperCoder 相較基線方法具有顯著優(yōu)勢:
1.超越現(xiàn)有基線:優(yōu)于 ChatDev、MetaGPT 等通用方案
2.組件貢獻明顯:規(guī)劃、分析、生成三階段均對性能提升有所貢獻(通過消融實驗驗證)
3.高執(zhí)行率:生成代碼幾乎無誤,僅需對 0.48% 的行數(shù)做小幅修改即可運行
4.出色的復現(xiàn)能力:在 Paper2Code 與 PaperBench 基準上均表現(xiàn)優(yōu)異,成功復現(xiàn)論文關鍵組件
人工評估
由原論文作者及多位領域?qū)<疫M行的人工評估顯示:
?77%的評審者認為生成的代碼庫最佳
?85%的評審者反饋生成結(jié)果對其研究有顯著幫助
人工評估表格圖 5:人工評估示例表格
評估涵蓋數(shù)據(jù)處理、方法實現(xiàn)及實驗流程,充分驗證了 PaperCoder 在真實科研場景中的應用價值。
局限性和未來工作
盡管 PaperCoder 已展現(xiàn)強大能力,但仍存在以下局限:
1.領域局限:目前僅針對機器學習論文,尚未擴展到其他科學領域
2.評估依賴:主要依賴模型指標,缺乏更多自動化執(zhí)行評估方式
3.復雜算法:對高度復雜或全新算法的支持仍有挑戰(zhàn)
4.依賴管理:跨環(huán)境兼容性及外部依賴管理需進一步完善
未來工作可聚焦于:
? 將框架擴展至更多學科
? 引入自動化調(diào)試與故障定位評估
? 集成更豐富的執(zhí)行評估指標
? 強化依賴性管理與環(huán)境適配
結(jié)論
Paper2Code 引領了從科研論文到可執(zhí)行代碼的自動化新范式,通過多代理 LLM 系統(tǒng)重塑人類軟件開發(fā)流程,實現(xiàn)端到端的代碼生成與復現(xiàn)。三階段方法確保關鍵細節(jié)無遺漏,定量與人工評估均證明了其有效性。PaperCoder 有望加速機器學習及其他領域的研究進展,為構(gòu)建更加開放、高效的科研生態(tài)注入新動能。
本文轉(zhuǎn)載自??芝士AI吃魚??,作者:芝士AI吃魚
