0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

中科院針對NL2Code任務(wù),調(diào)研了27個大模型,并指出5個重要挑戰(zhàn)

深度學習自然語言處理 ? 來源:AINLPer ? 2023-05-18 14:33 ? 次閱讀

引言

對于NL2Code任務(wù)相信大家都不陌生。它主要目的就是將自然語言轉(zhuǎn)換成可執(zhí)行代碼來提高開發(fā)人員的工作效率,終極目標就是干翻所有程序員,最近,隨著大模型的出現(xiàn),距離這一天又稍稍進了一步?;谠摫尘埃窒碇锌圃汉臀④泚喼扪芯吭涸?a target="_blank">ACL2023國際頂會上一篇文章:他們調(diào)研了NL2Code領(lǐng)域中的「27個大型語言模型以及相關(guān)評價指標」,分析了「LLMs的成功在于模型參數(shù)、數(shù)據(jù)質(zhì)量和專家調(diào)優(yōu)」,并指出了「NL2Code領(lǐng)域研究的5個機遇挑戰(zhàn)」,最后作者建立了一個分享網(wǎng)站來跟蹤LLMs在NL2Code任務(wù)上的最新進展。https://nl2code.github.io

1ffb74c8-f545-11ed-90ce-dac502259ad0.png

背景介紹

新手程序員,甚至是那些沒有任何編程經(jīng)驗的程序員,是否有可能僅僅通過用自然語言描述他們的需求來創(chuàng)建軟件?實現(xiàn)這一設(shè)想將對我們的生活、教育、經(jīng)濟和勞動力市場產(chǎn)生前所未有的影響。自然語言-代碼(NL2Code)因其廣闊的應用場景,是一項重要的研究任務(wù),在學術(shù)界和工業(yè)界都引起了廣泛的興趣。

關(guān)于NL2Code的發(fā)展,其實和自然語言理解的發(fā)展類似,一開始,基本都是基于專家規(guī)則進行算法設(shè)計,但是此類方法需要對不同編程語言進行設(shè)計,泛化性差;隨著技術(shù)發(fā)展,人們逐步開始使用靜態(tài)語言模型,并使用向量空間來描述文字,此類方法在初期一般向量空間比較稀疏,不能建立長期的依賴關(guān)系;再后來,就用到了我們比較熟悉的神經(jīng)網(wǎng)絡(luò),例如CNN、RNN、LSTM,此類方法通過標記數(shù)據(jù)進行訓練來構(gòu)建自然語言(NL)和代碼(Code)之間的關(guān)系,但實際效果對NL2Code任務(wù)的能力有限;現(xiàn)在,在ChatGPT風靡全球的背景下,越來越多的大型語言模型(LLMs)如雨后春筍一樣出現(xiàn),通過語言指令,它們可以在零樣本狀況下生成代碼,并在NL2Code任務(wù)上中取到了驚人的成績。具有標志性的一個LLM模型就是Codex,它擁有120億個參數(shù),在Python編程任務(wù)上測試,可解決72.31%的問題,并且該模型已經(jīng)商用可在實踐中提高開發(fā)人員的工作效率。

NL2Code任務(wù)與27個LLMs

對于NL2Code任務(wù),其主要目的是基于給定自然語言問題描述生成所需要的代碼。以下是一個關(guān)于Python編程問題的示例。其中灰色塊部分表示問題描述,綠色塊部分表示模型生成代碼,黃色塊部分表示測試樣例。

202a89ca-f545-11ed-90ce-dac502259ad0.png

針對NL2Code任務(wù)對27個具有代表性的LLMs進行了全面調(diào)研,下表總結(jié)了每個模型的詳細信息,其中主要包括:模型架構(gòu)、模型大小、模型層數(shù)(L)、注意力頭數(shù)量(A)、隱藏維度(H)、模型參數(shù)是否開放(P)等五個方面。

204ee482-f545-11ed-90ce-dac502259ad0.png

為了更好地可視化,下圖按時間順序展示了這些模型,繪制了最大的模型大小。觀察到的一個趨勢是,隨著研究領(lǐng)域的發(fā)展,這些大型語言模型的規(guī)模也在不斷擴大。此外,只有解碼器的架構(gòu)更適合于規(guī)模較大的預訓練模型。

2082b53c-f545-11ed-90ce-dac502259ad0.png

27個LLMs評估

上面總結(jié)了NL2Code現(xiàn)有的大型語言模型(LLMs),但是這些模型在架構(gòu)、模型規(guī)模等方面各不相同,無法進行統(tǒng)一的評估。為此,作者在HumanEval基準上進行了Zero-shot統(tǒng)一評估,其中HumanEval基準由164個手寫的Python編程問題組成,對于每個編程問題都提供了測試用例,以評估生成代碼正確性。使用pass@k作為評估指標,即通過k次嘗試可以正確回答的問題的比例。下表顯示根據(jù)模型大小進行分組,在該測試集上的測試結(jié)果。

20b55230-f545-11ed-90ce-dac502259ad0.png

從上表可以看出,這些LLM在該數(shù)據(jù)集上的性能差異很大,盡管模型參數(shù)相似但效果差異也是很大??梢园l(fā)現(xiàn)Codex 在各種尺寸上都處于領(lǐng)先地位。為什么會存在這個問題呢?影響模型效果的關(guān)鍵因素是啥呢?作者經(jīng)過分析給出的結(jié)論有:模型大小、數(shù)據(jù)質(zhì)量、專家調(diào)優(yōu)。

模型大小

根據(jù)前面的整理用于NL2Code的LLMs時間發(fā)展圖可以發(fā)現(xiàn),只要模型參數(shù)越多性能就越好。為了進一步說明模型參數(shù)大小和模型效果之間的關(guān)系,作者整理了10個比較有代表性的模型,在HumanEval基準上的pass@1結(jié)果,如下圖所示:

20fcf0a4-f545-11ed-90ce-dac502259ad0.png

根據(jù)上圖,很明顯的可以「發(fā)現(xiàn)較大的模型通常會產(chǎn)生更好的結(jié)果」。此外,「當前模型無論大小,仍然可以通過進一步增加模型參數(shù)來實現(xiàn)性能的提升」。

數(shù)據(jù)質(zhì)量

隨著LLMs模型參數(shù)的增加,其訓練數(shù)據(jù)規(guī)模也在不斷的增加。這在數(shù)據(jù)選擇和預處理方面也有更高的要求。早期的模型,例如CodeSearchNet、CoST、XLCoST等都是基于人工標注數(shù)據(jù)對進行訓練(耗時耗力);GPT系列模型(GPT-3 、GPT-Neo、GPT-J )開始在大規(guī)模無監(jiān)督數(shù)據(jù)集上進行訓練,但是由于代碼數(shù)據(jù)限制,并沒有顯示出很強的代碼生成能力。由于LLMs模型的出現(xiàn),它們可以在更大規(guī)模的未標記代碼數(shù)據(jù)集上進行訓練,最終模型效果驚人。

在驚嘆于LLMs效果的同時,也要知道LLMs在訓練之前通常會對數(shù)據(jù)進行預處理。為此作者調(diào)研了Codex、AlphaCode、CodeGen、InCoder和PyCodeGPT等5個強大模型的數(shù)據(jù)預處理方法。發(fā)現(xiàn)它們具有幾個共同的特點:一是刪除可能自動生成或未完成的代碼文件,二是使用特定的規(guī)則來過濾不常見的代碼文件?!缚傊?,這些預處理策略的目標是實現(xiàn)一個不重復的、完整的、正確的、干凈的和通用的代碼語料庫」。

專家調(diào)優(yōu)

訓練一個優(yōu)秀的模型需要認真考慮模型訓練階段的各個參數(shù)。通過對27個LLMs模型的研究發(fā)現(xiàn),它們都有一些共同的設(shè)置,比如都應用了Adam相關(guān)優(yōu)化器并在初始化階段相差不大。除此之外,還有需要調(diào)節(jié)的超參數(shù),如lr、batch、窗口大小、預熱、梯度累積和temperature。對于學習率來說,隨著模型的增大,學習率會逐步變小。如下圖所示:

212561ec-f545-11ed-90ce-dac502259ad0.png

對于temperature,這里對比了兩個模型在HumanEval任務(wù)上使用不同temperature后模型的性能。結(jié)果發(fā)現(xiàn),更高的temperature產(chǎn)生更低的pass@1和更高的pass@100,這表明更高的temperature使LLM產(chǎn)生更多樣化的預測,反之亦然。如下圖所示:

2145be74-f545-11ed-90ce-dac502259ad0.png

此外,有研究表明窗口大小也是一個關(guān)鍵因素,具有大窗口的小模型會有時優(yōu)于具有小窗口的大模型。此外,強大的LLMs通常主要使用兩種技術(shù)在代碼語料庫上訓練新的標記器:字節(jié)級字節(jié)對編碼和sentencepece 。新的標記器可以更有效和準確地將代碼內(nèi)容拆分為Tokens。這些經(jīng)過驗證的調(diào)優(yōu)技術(shù)將為培訓更強大的llm提供有價值的參考。

評估基準指標

「對NL2Code任務(wù)的評估,高質(zhì)量的基準和可靠的度量是基礎(chǔ)和必要的」。作者總結(jié)了17個NL2Code基準測試,每個基準測試在大小、語言、復雜性和場景方面都有自己的特點,如下表所示。

216d164a-f545-11ed-90ce-dac502259ad0.png

但大多數(shù)基準測試只包含有限數(shù)量的實例。例如,HumanEval和MBPP分別有164和974個實例。這是因為這些基準通常是手寫的以防數(shù)據(jù)泄露?!冈诖笮驼Z言模型時代,在創(chuàng)建新基準時避免數(shù)據(jù)泄漏至關(guān)重要」。此外,大多數(shù)當前的基準測試都有英文的問題描述和Python的代碼解決方案。最近,已經(jīng)提出了幾個多語言基準,例如涵蓋「多種編程語言的MBXP,HumanEvalX和MultiPL ,以及涵蓋多種自然語言的ODEX」。多語言基準測試的詳細信息如下表所示:

21cab7f0-f545-11ed-90ce-dac502259ad0.png

「手動評估生成的代碼是不切實際的,這就需要自動度量」。上述基準均提供了基于執(zhí)行的評估的測試用例,其中指標如 pass@k、n@k、測試用例平均值和執(zhí)行精度。但是,「這種方法對測試用例的質(zhì)量有嚴格的要求,并且只能評估可執(zhí)行代碼。對于不可執(zhí)行的代碼」,使用了 BLEU 、ROUGE 和 CodeBLEU等指標,無法準確評估代碼的正確性。到目前為止,「在設(shè)計指標來評估代碼的各個方面(例如漏洞、可維護性、清晰度、執(zhí)行復雜性和穩(wěn)定性)方面存在許多開放性挑戰(zhàn)」。

NL2Code挑戰(zhàn)與機遇

大預言模型在NL2Code的應用對學術(shù)界和工業(yè)界都有相當大的影響。雖然取得了驚人的進展,但仍然有很多挑戰(zhàn)需求解決,這也為研究人員提供了充足的機會。下面作者總結(jié)了 NL2Code任務(wù)的五個挑戰(zhàn)和機會。

「1、理解能力」:人類能夠理解不同抽象層次的各種描述, 相比之下,當前的 LLM 往往對給定的上下文敏感,這可能會導致性能下降。作者認為探索LLM的理解能力是一個重要的研究方向。

「2、判斷能力」:人類能夠判定一個編程問題是否被解決。當前模型不論輸入什么都會給出答案,而且該答案正確與否都不能確定,這在實際應用中會存在一定的問題。目前為了提高LLM的判斷能力,需要根據(jù)用戶反饋采用強化學習的方式進行調(diào)優(yōu)。作者認為探索LLM自我判斷能力,也是一個比較重要的研究方向。

「3、解釋能力」:人類開發(fā)人員能夠解釋他們編寫的代碼,這對教育的和軟件維護至關(guān)重要。最近的研究表明,LLM 具有自動生成代碼解釋的潛力。作者認為針對該能力也需要進一步的研究和探索,以充分發(fā)揮LLM在這方面的潛力。

「4、自適應能力」:當前的大型語言模型與人類之間的一個根本區(qū)別是它們適應新知識和更新知識的能力。人類開發(fā)人員能夠根據(jù)文檔資料實現(xiàn)API的快速開發(fā),而LLM需要大量的知識和訓練。作者認為如何提高LLM快速自學習能力也是一個比較大挑戰(zhàn)。

「5、多任務(wù)處理能力」:LLM在多任務(wù)處理方面與人類存在較大差異。人類可以在任務(wù)之間無縫切換,而LLM可能需要復雜的提示工程。為此作者任務(wù)提升LLM多任務(wù)能力同樣是一個重要的研究方向。


審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 語言模型
    +關(guān)注

    關(guān)注

    0

    文章

    532

    瀏覽量

    10300
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4801

    瀏覽量

    84852
  • 自然語言
    +關(guān)注

    關(guān)注

    1

    文章

    288

    瀏覽量

    13367

原文標題:ACL2023 | 中科院 針對NL2Code任務(wù),調(diào)研了27個大模型,并指出5個重要挑戰(zhàn)

文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    《具身智能機器人系統(tǒng)》第7-9章閱讀心得之具身智能機器人與大模型

    模型展示強大的泛化能力,能夠?qū)⒃谀M環(huán)境學到的技能遷移到真實場景。RT-2的改進版本更是引入了視覺-語言預訓練技術(shù),使模型能夠理解更抽象的任務(wù)
    發(fā)表于 12-24 15:03

    AI模型部署邊緣設(shè)備的奇妙之旅:目標檢測模型

    挑戰(zhàn)的方法。 2 目標檢測模型介紹 在目標檢測的任務(wù)中,有著許許多多的模型,如 Picodet、Faster R-CNN、YOLO、SSD等
    發(fā)表于 12-19 14:33

    從零開始訓練一個大語言模型需要投資多少錢?

    一,前言 ? 在AI領(lǐng)域,訓練一個大型語言模型(LLM)是一耗時且復雜的過程。幾乎每個做大型語言模型(LLM)訓練的人都會被問到:“從零開始,訓練大語言
    的頭像 發(fā)表于 11-08 14:15 ?265次閱讀
    從零開始訓練一<b class='flag-5'>個大</b>語言<b class='flag-5'>模型</b>需要投資多少錢?

    開啟全新AI時代 智能嵌入式系統(tǒng)快速發(fā)展——“第六屆國產(chǎn)嵌入式操作系統(tǒng)技術(shù)與產(chǎn)業(yè)發(fā)展論壇”圓滿結(jié)束

    計算機學院牛建偉教授主持。 中科院軟件所副所長、總工程師,武延軍研究員做了“AI大模型時代下的操作系統(tǒng)發(fā)展思考”主題演講。 武延軍介紹操作系統(tǒng)的發(fā)展歷程,指出應用的高速發(fā)展給操作系統(tǒng)
    發(fā)表于 08-30 17:24

    如何使用freeRTOS在兩任務(wù)之間傳輸任務(wù)數(shù)據(jù)?

    大家好, 我是 PSoC6 的新手,嘗試以運行第二任務(wù)的方式調(diào)整“ PSoC? 6 MCU:emFile 文件系統(tǒng)”,該任務(wù)作為 I2C
    發(fā)表于 07-03 07:55

    中科院重慶研究在勢壘可光調(diào)諧新型肖特基紅外探測器研究獲進展

    傳統(tǒng)肖特基探測器和勢壘可光調(diào)諧的肖特基紅外探測器的對比 近日,中科院重慶綠色智能技術(shù)研究微納制造與系統(tǒng)集成研究中心在《創(chuàng)新》(The Innovation)上發(fā)表題為Schottky
    的頭像 發(fā)表于 06-25 06:27 ?310次閱讀
    <b class='flag-5'>中科院</b>重慶研究<b class='flag-5'>院</b>在勢壘可光調(diào)諧新型肖特基紅外探測器研究獲進展

    【大語言模型:原理與工程實踐】大語言模型的應用

    ,它通過抽象思考和邏輯推理,協(xié)助我們應對復雜的決策。 相應地,我們設(shè)計兩類任務(wù)來檢驗大語言模型的能力。一類是感性的、無需理性能力的任務(wù),類似于人類的系統(tǒng)1,如情感分析和抽取式問答
    發(fā)表于 05-07 17:21

    【大語言模型:原理與工程實踐】大語言模型的評測

    和產(chǎn)品化提供有力的數(shù)據(jù)支持。 對于生活閑聊類評測任務(wù),模型的回答主要從人性化程度、內(nèi)容質(zhì)量和社交適應性三方面進行考察。這些方面共同反映
    發(fā)表于 05-07 17:12

    【大語言模型:原理與工程實踐】揭開大語言模型的面紗

    人工智能進步中提供重要價值。 大語言模型在邏輯推理、推斷和問題解決方面展現(xiàn)出了卓越的能力。隨著模型規(guī)模的擴大,其推理能力日益增強,能夠輕松應對復雜
    發(fā)表于 05-04 23:55

    中科加禾完成天使輪數(shù)千萬元融資,專注編譯技術(shù),推動國產(chǎn)算力和大數(shù)據(jù)發(fā)展

    創(chuàng)辦于2023年的中科加禾,依托中科院計算所的雄厚科技實力,傾心于編譯技術(shù),旨在填補國產(chǎn)芯片生態(tài)系統(tǒng)的空缺,助力國產(chǎn)算力和大模型應用推廣,推動我國人工智能產(chǎn)業(yè)的快速發(fā)展。其主營業(yè)務(wù)涵蓋大模型
    的頭像 發(fā)表于 03-19 16:49 ?1149次閱讀

    湖南大學校長、王耀南院士一行赴中科億海微調(diào)研指導

    近日,湖南大學校長、王耀南院士帶隊赴中科億海微電子科技(蘇州)有限公司(簡稱中科億海微)北京研究調(diào)研指導,魏育成總裁率隊接待。段校長及王院士一行參觀
    的頭像 發(fā)表于 02-19 12:17 ?886次閱讀
    湖南大學校長、王耀南院士一行赴<b class='flag-5'>中科</b>億海微<b class='flag-5'>調(diào)研</b>指導

    國產(chǎn)FPGA:湖南大學段獻忠校長、王耀南院士一行赴中科億海微調(diào)研指導

    近日,湖南大學段獻忠校長、王耀南院士帶隊赴中科億海微電子科技(蘇州)有限公司(簡稱中科億海微)北京研究調(diào)研指導。魏育成總裁率隊接待。段校長及王院士一行參觀
    的頭像 發(fā)表于 02-04 10:10 ?972次閱讀

    Meta發(fā)布開源大模型Code Llama 70B

    近日,Meta宣布推出了一款新的開源大模型Code Llama 70B,這是其“Code Llama家族中體量最大、性能最好的模型版本”。這款新模型
    的頭像 發(fā)表于 01-31 09:24 ?977次閱讀

    中國批準14個大語言模型供公眾使用,趕超美國AI進程加速

    據(jù)鈦媒體報道,近期中國監(jiān)管部門已經(jīng)批準14個大語言模型公開服務(wù),自啟動審批流程至今剛好半年時間,已核準40多個AI大型模型,顯示出我國在該領(lǐng)域的積極進取,以期趕超美國。
    的頭像 發(fā)表于 01-30 09:40 ?942次閱讀

    龍芯中科中科信息簽訂合作框架協(xié)議

    1月24日,龍芯中科技術(shù)股份有限公司與中科院成都信息技術(shù)股份有限公司(以下簡稱“中科信息”)合作框架簽約儀式在成都興隆湖畔科學城園區(qū)舉行。
    的頭像 發(fā)表于 01-26 11:44 ?839次閱讀