偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

陶哲軒看了都直呼內(nèi)行!谷歌等用LLM自動(dòng)證明定理拿頂會(huì)杰出論文,上下文越全證得越好

人工智能 新聞
在軟件工程頂會(huì)ESEC/FSE上,來(lái)自馬薩諸塞大學(xué)、谷歌和伊利諾伊大學(xué)厄巴納-香檳分校(UIUC)的研究人員發(fā)表了新的成果,使用LLM解決自動(dòng)化定理證明問(wèn)題。

Transformer的技能樹(shù)是越來(lái)越厲害了。

來(lái)自馬薩諸塞大學(xué)、谷歌和伊利諾伊大學(xué)厄巴納-香檳分校(UIUC)的研究人員發(fā)表了一篇論文,利用大語(yǔ)言模型自動(dòng)生成定理的完整證明。

圖片

論文地址:https://arxiv.org/pdf/2303.04910.pdf

這篇工作以Baldur(北歐神話(huà)中雷神Thor的兄弟)命名,首次證明了使用Transformer生成全證明是可能的,并且當(dāng)為模型提供額外的上下文時(shí),還可以改進(jìn)模型先前的證明。

文章發(fā)表于2023年12月在舊金山舉行的ESEC/FSE(ACM歐洲軟件工程聯(lián)合會(huì)議和軟件工程基礎(chǔ)研討會(huì))上,并獲得了杰出論文獎(jiǎng)(Distinguished Paper award)。

眾所周知,軟件存在bug(廢話(huà)),這在一般應(yīng)用程序或者網(wǎng)站上問(wèn)題不大,但對(duì)于比如加密協(xié)議、醫(yī)療設(shè)備和航天飛機(jī)等關(guān)鍵系統(tǒng)背后的軟件而言,必須確保沒(méi)有錯(cuò)誤。

——一般的代碼審查和測(cè)試并不能給出這個(gè)保證,這需要形式驗(yàn)證(formal verification)。

對(duì)于formal verification,ScienceDirect給出的解釋為:

the process of mathematically checking that the behavior of a system, described using a formal model, satisfies a given property, also described using a formal model

指的是從數(shù)學(xué)上檢查,使用形式模型描述的系統(tǒng)行為,是否滿(mǎn)足給定屬性的過(guò)程。

簡(jiǎn)單來(lái)說(shuō)就是,利用數(shù)學(xué)分析的方法,通過(guò)算法引擎建立模型,對(duì)待測(cè)設(shè)計(jì)的狀態(tài)空間進(jìn)行窮盡分析的驗(yàn)證。

圖片

形式化軟件驗(yàn)證,對(duì)于軟件工程師來(lái)說(shuō)是最具挑戰(zhàn)性的任務(wù)之一。例如CompCert,使用Coq交互式定理證明器驗(yàn)證的C編譯器,是無(wú)處不在的GCC和LLVM等使用的唯一編譯器。

然而,手動(dòng)形式驗(yàn)證(編寫(xiě)證明)的成本卻相當(dāng)巨大,——C編譯器的證明是編譯器代碼本身的三倍以上。

所以,形式驗(yàn)證本身是一項(xiàng)“勞動(dòng)密集型”的任務(wù),研究人員也在探索自動(dòng)化的方法。

比如Coq和Isabelle等證明助手,通過(guò)訓(xùn)練一個(gè)模型來(lái)一次預(yù)測(cè)一個(gè)證明步驟,并使用模型搜索可能的證明空間。

而本文的Baldur首次在這個(gè)領(lǐng)域引入了大語(yǔ)言模型的能力,在自然語(yǔ)言文本和代碼上訓(xùn)練,并在證明上進(jìn)行微調(diào),

Baldur可以一次就生成定理的完整證明,而不是一次一個(gè)步驟。

圖片

如上圖所示,僅使用定理語(yǔ)句作為證明生成模型的輸入,然后從模型中抽取證明嘗試,并使用Isabelle執(zhí)行證明檢查。

如果Isabelle接受了證明嘗試而沒(méi)有錯(cuò)誤,就說(shuō)明證明成功;否則從證明生成模型中抽取另一個(gè)證明嘗試。

Baldur在6336個(gè)Isabelle/HOL定理及其證明的基準(zhǔn)上進(jìn)行評(píng)估,從經(jīng)驗(yàn)上證明了完整證明生成、修復(fù)和添加上下文的有效性。

另外,這個(gè)工具之所以叫Baldur,可能是因?yàn)楫?dāng)前最好的自動(dòng)證明生成工具叫做Thor。

Thor的證明率更高(57%),它使用較小的語(yǔ)言模型結(jié)合搜索可能證明空間的方法預(yù)測(cè)證明的下一步,而B(niǎo)aldur的優(yōu)勢(shì)在于它能夠生成完整的證明。

圖片

不過(guò)Thor和Baldur兩兄弟也可以一起工作,這樣可能把證明率提升到接近66%。

自動(dòng)生成完整證明

Baldur由Google的大語(yǔ)言模型Minerva提供支持,Minerva在科學(xué)論文和包含數(shù)學(xué)表達(dá)式的網(wǎng)頁(yè)上進(jìn)行訓(xùn)練,并對(duì)有關(guān)證明和定理的數(shù)據(jù)進(jìn)行了微調(diào)。

Baldur可以與定理證明助手Isabelle合作,Isabelle對(duì)證明結(jié)果進(jìn)行檢查。當(dāng)給定一個(gè)定理陳述時(shí),Baldur幾乎在41%的時(shí)間內(nèi)能夠生成一個(gè)完整的證明。

圖片

為了進(jìn)一步提高Baldur的性能,研究人員向模型提供了額外的上下文信息(比如其他定義、或理論文件中的定理陳述),這使證明率提高到47.5%。

這意味著B(niǎo)aldur能夠獲取上下文,并使用它來(lái)預(yù)測(cè)新的正確證明,——類(lèi)似于程序員,當(dāng)了解了相關(guān)方法和代碼之后,他們更有可能修復(fù)程序中的錯(cuò)誤。

圖片

下面舉個(gè)例子(fun_sum_commute定理):

圖片

這個(gè)定理來(lái)自形式證明檔案中一個(gè)名為多項(xiàng)式的項(xiàng)目。

當(dāng)人工編寫(xiě)證明的時(shí)候,會(huì)區(qū)分兩種情況:集合是有限的或者不是有限的:

圖片

所以,對(duì)于模型來(lái)說(shuō),輸入是定理陳述,而目標(biāo)輸出是這個(gè)人工編寫(xiě)的證明。

Baldur認(rèn)識(shí)到這里需要?dú)w納,并應(yīng)用了一種特殊的歸納法則,稱(chēng)為infinite_finite_induct,遵循與人類(lèi)書(shū)面證明相同的總體方法,但更簡(jiǎn)潔。

而因?yàn)樾枰獨(dú)w納,Isabelle使用的Sledgehammer默認(rèn)無(wú)法證明這個(gè)定理。

訓(xùn)練

為了訓(xùn)練證明生成模型,研究人員構(gòu)建了一個(gè)新的證明生成數(shù)據(jù)集。

現(xiàn)有數(shù)據(jù)集包含單個(gè)證明步驟的示例,每個(gè)訓(xùn)練示例包括證明狀態(tài)(輸入)和要應(yīng)用的下一個(gè)證明步驟(目標(biāo))。

給定一個(gè)包含單個(gè)證明步驟的數(shù)據(jù)集,這里需要?jiǎng)?chuàng)建一個(gè)新數(shù)據(jù)集,以便訓(xùn)練模型一次預(yù)測(cè)整個(gè)證明。

研究人員從數(shù)據(jù)集中提取每個(gè)定理的證明步驟,并將它們連接起來(lái)以重建原始證明。

證明修復(fù)

還是以上面的fun_sum_commute為例,

圖片

Baldur首次生成的證明嘗試,在證明檢查器中失敗。

Baldur試圖應(yīng)用歸納法,但未能首先將證明分解為兩種情況(有限集與無(wú)限集)。Isabelle返回以下錯(cuò)誤消息:

圖片

為了從這些字符串中派生出一個(gè)證明修復(fù)訓(xùn)練示例,這里將定理陳述、失敗的證明嘗試和錯(cuò)誤消息連接起來(lái)作為輸入,并使用正確的人工編寫(xiě)的證明作為目標(biāo)。

圖片

上圖詳細(xì)介紹了訓(xùn)練數(shù)據(jù)的創(chuàng)建過(guò)程。

使用證明生成模型,針對(duì)原始訓(xùn)練集中的每個(gè)問(wèn)題,對(duì)溫度為0的證明進(jìn)行采樣。

使用校對(duì)助手,記錄所有失敗的校樣及其錯(cuò)誤消息,然后,繼續(xù)構(gòu)建新的證明修復(fù)訓(xùn)練集。

對(duì)于每個(gè)原始訓(xùn)練示例,將定理語(yǔ)句、證明生成模型生成的(不正確的)候選證明以及相應(yīng)的錯(cuò)誤消息連接起來(lái),以獲得新訓(xùn)練示例的輸入序列。

添加上下文

在定理陳述之前添加理論文件的行,作為額外的上下文。比如下圖這樣:

圖片

Baldur中帶有上下文的證明生成模型,可以利用這些附加信息。出現(xiàn)在fun_sum_commute定理語(yǔ)句中的字符串,在這個(gè)上下文中再次出現(xiàn),因此圍繞它們的附加信息可以幫助模型做出更好的預(yù)測(cè)。

上下文可以是陳述(定理、定義、證明),還可以是自然語(yǔ)言注釋。

為了利用LLM的可用輸入長(zhǎng)度,研究人員首先從同一個(gè)理論文件中添加多達(dá)50個(gè)語(yǔ)句。

在訓(xùn)練過(guò)程中,首先對(duì)所有這些語(yǔ)句進(jìn)行標(biāo)記化,然后截?cái)嘈蛄械淖髠?cè)以適應(yīng)輸入長(zhǎng)度。

圖片

上圖展示了有上下文和無(wú)上下文的生成模型的證明成功率與證明嘗試次數(shù)的關(guān)系圖。我們可以看出,具有上下文的證明生成模型始終優(yōu)于普通生成模型。

圖片

上圖展示了不同尺寸和溫度模型的已驗(yàn)證定理與推理成本之比。

我們可以看到生成模型的證明成功率,以及8B模型和62B模型的上下文與證明嘗試次數(shù)的關(guān)系。

具有上下文的62B證明生成模型優(yōu)于具有上下文的8B模型。

不過(guò),作者在這里強(qiáng)調(diào),由于這些實(shí)驗(yàn)的成本較高,他們也無(wú)法調(diào)整超參數(shù),62B模型如果經(jīng)過(guò)優(yōu)化可能會(huì)表現(xiàn)得更好。

責(zé)任編輯:張燕妮 來(lái)源: 新智元
相關(guān)推薦

2024-01-31 13:04:00

AI數(shù)據(jù)

2023-10-10 12:30:51

AI模型

2023-10-10 13:51:46

GPT-4GitHubAI

2023-10-28 13:18:05

AI工具

2024-10-14 14:31:36

2023-12-16 12:47:59

2023-03-09 09:14:51

ChatGPTAI

2024-12-09 09:35:00

AI數(shù)據(jù)訓(xùn)練

2025-06-03 08:15:00

2024-04-23 13:39:39

2023-12-16 09:42:12

2024-10-12 12:30:04

2023-10-04 08:07:06

CopilotGitHub

2023-08-16 17:53:53

論文AI

2024-04-03 10:05:00

LLM性能基準(zhǔn)測(cè)試

2025-05-21 09:10:00

AI代碼陶哲軒

2022-10-25 10:20:31

線(xiàn)程變量原理

2024-07-29 08:49:00

AI數(shù)學(xué)

2023-09-02 11:21:54

代碼ChatGPT

2023-09-04 13:16:00

人工智能模型
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)