微軟亞洲研究院副院長(zhǎng)周明老師報(bào)告:From Language Intelligence to Code Intelligence Based on Pre-trained Models
感謝周明老師的分享以及Windy同學(xué)的筆記,完整報(bào)告內(nèi)容文末閱讀原文一鍵直達(dá)。
代碼智能(Code Intelligence)旨在使計(jì)算機(jī)具備理解和生成代碼的能力,并利用編程語(yǔ)言知識(shí)和上下文進(jìn)行推理,支持代碼檢索、補(bǔ)全、翻譯、糾錯(cuò)、問(wèn)答等場(chǎng)景。
以深度學(xué)習(xí)為代表的人工智能算法,近年來(lái)在視覺(jué)、語(yǔ)音和自然語(yǔ)言理解任務(wù)上取得了飛躍式的突破。最近基于Transformer的預(yù)訓(xùn)練模型大大推動(dòng)了自然語(yǔ)言處理和多模態(tài)的技術(shù)進(jìn)步。而基于最新的自然語(yǔ)言技術(shù)與編程語(yǔ)言知識(shí)相融合的代碼智能的研究也受到越來(lái)越多的關(guān)注。
本報(bào)告將介紹微軟亞洲研究院自然語(yǔ)言計(jì)算組在該研究領(lǐng)域的一系列最新進(jìn)展,包括針對(duì)代碼智能的預(yù)訓(xùn)練模型(CodeBERT/CodeGPT)、基準(zhǔn)數(shù)據(jù)集(CodeXGLUE)和融合了編程語(yǔ)言句法和語(yǔ)義信息的新的評(píng)價(jià)指標(biāo)(CodeBLEU)。最后,本報(bào)告研討該領(lǐng)域目前存在的主要問(wèn)題并探索未來(lái)的發(fā)展方向。
報(bào)告筆記如下。
利用數(shù)據(jù)自然特點(diǎn),不需要人工標(biāo)注
「UniLM」(Dong et al.,2019)
「Unicoder for Understanding」 (Huang et al.,2019)
「Unicoder for Generation」 (Liang et al.,2020)
「Unicoder一VL for Images」 (Li et al, 2020)
「Unicoder一VL for Videos」 (Luo et al., 2020)
「LayoutLM: Text+Layout Pre 一training」
能不能把自然語(yǔ)言的方法應(yīng)用到代碼領(lǐng)域,提高效率?
「CodeBERT」 (Model-1)
「CodeBERT (Model-2): Pre-Train with Code + Text」
「CodeBERT (Model-3): Pre-Train with Code + Text + Structure」
「CodeGPT」
基于3點(diǎn):不同詞的權(quán)重不同,AST的匹配,語(yǔ)義一致(看變量是否一致)
評(píng)測(cè)本身是否好?(看哪種評(píng)價(jià)和人工評(píng)價(jià)最吻合)
答:
答:NLP工作者只知道串對(duì)串,對(duì)幾個(gè)詞的不同比較寬容,但編程只要錯(cuò)一點(diǎn)就沒(méi)法運(yùn)行。如何評(píng)測(cè)是需要考慮的,目前沒(méi)有很好的辦法數(shù)字化衡量,例如可執(zhí)行性,但邏輯性效率等都可以做一些模擬工作,希望大家未來(lái)想辦法自動(dòng)評(píng)價(jià)
答:以前從其他領(lǐng)域借鑒了很多方法,挪到了NLP;后來(lái)NLP的transformer等等,有更好的預(yù)訓(xùn)練模型,可以反攻其他領(lǐng)域了。這件事是NLP工作者應(yīng)該好好考慮的,一切序列化的任務(wù)都可以看作自然語(yǔ)言任務(wù),提高相關(guān)領(lǐng)域的技術(shù)發(fā)展,反哺其他領(lǐng)域。
聯(lián)系客服