AM易道科研分享
AM易道最近注意到卡內(nèi)基梅隆大學(xué)在Nature子刊npj Computational Materials發(fā)表的一篇論文,提出了一個叫AlloyGPT的AI模型。
這個模型的核心思路很簡單:
既然GPT能通過學(xué)習(xí)文本規(guī)律來生成連貫的句子,那能不能讓AI學(xué)習(xí)合金數(shù)據(jù)的規(guī)律,直接生成符合性能要求的3D打印合金材料的成分配方?
聽起來有點玄乎,但他們真的做出來了。
而且這個思路對增材制造特別有意義,因為3D打印恰恰能在體素級別調(diào)整成分,設(shè)計空間巨大,傳統(tǒng)的試錯方法玩不轉(zhuǎn)。
我們認(rèn)為這篇文章很重要,一起來看看AI如何玩轉(zhuǎn)3D打印材料開發(fā)。
AM易道對于該文章的許多表述已脫離原文章的原始技術(shù)表述,有大量原創(chuàng)和解讀創(chuàng)作成分,如需要了解更多硬核技術(shù)內(nèi)容,請自行閱讀原文。
把合金數(shù)據(jù)變成語句
AlloyGPT的第一步是把物理數(shù)據(jù)翻譯成AI能讀懂的語言(見圖1)。
團隊把鋁合金的成分、相結(jié)構(gòu)、性能等信息,按照固定格式整理成文本序列。
比如一條典型的句子長這樣:
{Task:Pred001}={Composition:[(Al):+9.393e+01,(Ni):+2.901e+00,...]}
=>{Structure:[AsBuilt_L12Mol%:+6.205e+00,...]}
=>{Property:[DiffusionResistivity:+9.091e-01,...]}這種表達方式有幾個好處:
信息密度高:一條記錄包含了成分、析出相比例、擴散阻力、凝固裂紋傾向等十幾個物理量;
第二結(jié)構(gòu)靈活,可以輕松加入工藝參數(shù)(激光功率、掃描速度等)作為新的信息塊;
第三,方向可逆:正向預(yù)測時按"成分→結(jié)構(gòu)→性能"排列,逆向設(shè)計時則倒過來寫成"性能→結(jié)構(gòu)→成分"。
他們用這種方式把52萬組CALPHAD模擬數(shù)據(jù)轉(zhuǎn)成了94萬條句子(每組數(shù)據(jù)生成正反兩條),作為訓(xùn)練語料。
這個數(shù)據(jù)集覆蓋了Al-Ni-Er-Zr-Y-Yb系,專門針對激光增材制造的快速凝固條件。
模型結(jié)構(gòu):中等規(guī)模但夠用
AlloyGPT的架構(gòu)借鑒了GPT-2,但做了定制化調(diào)整:
- 36層Transformer,每層16個注意力頭
- 4.5億參數(shù),嵌入維度1024
- 256詞匯量的分詞器,給周期表所有元素保留了獨立token,數(shù)字則用單字符token表示
這個規(guī)模放在大語言模型里算是中等偏小,但對合金這種結(jié)構(gòu)化數(shù)據(jù)來說已經(jīng)夠用。
合金物理不像自然語言那么復(fù)雜多變,不需要上千億參數(shù)去記憶海量知識。
關(guān)鍵是數(shù)據(jù)質(zhì)量和表達方式,而不是單純堆參數(shù)。
正向預(yù)測:喂得越多,算得越準(zhǔn)
先看正向預(yù)測這塊兒。
當(dāng)你只告訴模型合金成分,讓它猜性能的時候,準(zhǔn)確度還不錯。
但如果你再多給點信息比如通過XRD測出了相結(jié)構(gòu),一并喂給模型,它的預(yù)測準(zhǔn)確度會蹭蹭往上漲(2d里紅條比藍條明顯高出一截)。
這其實挺符合常識的:
成分決定了會析出什么相,相的分布又決定了最終性能。
你給模型的線索越多,它自然猜得越準(zhǔn)。
這對實際工作有個啟發(fā),假如你手頭已經(jīng)做了部分表征實驗(比如掃了個XRD確認(rèn)了相組成),不妨把這些數(shù)據(jù)也塞給模型,讓它幫你預(yù)測那些更費勁、更貴的力學(xué)性能測試結(jié)果。
逆向設(shè)計:一個目標(biāo),多條路徑
逆向設(shè)計才是AlloyGPT真正有意思的地方。
你直接告訴它想要什么性能(比如"熱裂敏感性低于0.3,擴散阻力大于0.8"),它就能給你吐出符合要求的配方。
圖3和圖4對比了兩種情況。
第一種是你把性能和相結(jié)構(gòu)都告訴它(PS-to-C任務(wù)),模型基本能還原出測試集里的已知配方,R2能達到0.95以上。
第二種更絕,你只給性能目標(biāo)(P-to-SC任務(wù)),模型給出的配方和測試集差異很大(R2只有0.5),但這些新配方的實際性能卻能達標(biāo)(R2還是0.95以上)。
換句話說,模型沒有照抄答案,而是自己設(shè)計出了新配方。
![]()
圖4d里藍框圈出的那些點,都是模型生成的低開裂風(fēng)險配方—這些在原始數(shù)據(jù)集里根本不存在。
傳統(tǒng)方法遇到這種多解問題會很頭疼。
要么用貝葉斯優(yōu)化反復(fù)試探,可能要跑90輪才找到方案;要么搞多目標(biāo)遺傳算法,也不輕松。
AlloyGPT因為是概率模型,天生就能捕捉多個可能的解。
同一個目標(biāo),你讓它生成幾次,就能拿到好幾套備選方案。
GPT在保守和激進之間調(diào)檔
圖6展示了一個關(guān)鍵控制手段—預(yù)測溫度(Tp)。這個參數(shù)本質(zhì)上控制模型的創(chuàng)造力:
- Tp≤1
生成的配方比較保守,靠近訓(xùn)練數(shù)據(jù),但性能達標(biāo)率高
- 1
配方多樣性明顯增加(成分變異系數(shù)能翻倍),但性能誤差也在上升
- Tp>2
模型開始瞎說,生成的文本連語法規(guī)則都不符合了
實際用的時候,建議先用Tp=1左右跑幾輪,拿到穩(wěn)妥的方案。
如果想探索更激進的配方,可以試試Tp=1.5,然后用CALPHAD模擬或者直接試驗來篩選。
這比盲目擴大成分范圍效率高多了。
模型的思考過程
論文團隊花了不少力氣研究這個AI到底是怎么判斷的,想搞清楚:
它真的理解合金物理,還是只是在瞎蒙?
圖7和8給出了一些線索。
你可以把模型想象成一個有36層樓的大腦,每層樓里有16個專家在同時工作。
當(dāng)模型要預(yù)測L12相(一種重要的強化相)有多少時,不同的專家會關(guān)注不同的信息。
比如說,1號專家特別在意Zr(鋯)和Yb(鐿)這兩個元素的含量,10號專家則盯著Er(鉺)和Y(釔)(圖7b-c)。
![]()
有意思的是,這四個元素恰好都是能和鋁形成L12相的關(guān)鍵成分。這說明模型不是瞎猜的,它確實抓住了一些物理本質(zhì)。
研究團隊還用了兩種方法來驗證這個判斷。第一種叫梯度法(下圖8a-c),判斷改動哪個數(shù)字,結(jié)果變化最大?
結(jié)果發(fā)現(xiàn),預(yù)測L12相含量時,Er和Yb的權(quán)重最高—這和之前的實驗數(shù)據(jù)分析結(jié)果對得上。
第二種叫擾動法(下圖8e),相當(dāng)于故意隱藏某個元素的信息,看模型的判斷會不會亂。結(jié)果發(fā)現(xiàn)Yb對凝固區(qū)間和開裂傾向影響最強。
![]()
但是,圖7也暴露了一個問題:36層樓、每層16個專家,總共576個腦袋同時在工作,它們的思考模式千差萬別。
最終的決策是這一大堆判斷綜合出來的結(jié)果,你很難說清楚到底哪個因素起了決定性作用。
神經(jīng)網(wǎng)絡(luò)是這樣—它能給出準(zhǔn)確答案,但要它解釋清楚推理過程,那就難了。
這也是為什么論文強調(diào),對于模型給出的極端配方,最好還是要做實驗驗證。
畢竟它雖然學(xué)到了一些規(guī)律,但我們也不能完全確定它是不是還藏著什么我們不知道的歪理。
跑出訓(xùn)練范圍會怎樣?
圖5測試了模型的外推能力。研究團隊故意把Yb、Zr、Er的含量上限擴大一倍,采樣了一些訓(xùn)練集外的成分。
結(jié)果顯示,預(yù)測誤差隨著遠(yuǎn)離訓(xùn)練邊界的距離(dM)逐漸增大,但不是斷崖式崩潰,而是平穩(wěn)退化。
在dM<0.5的薄層區(qū)域,模型表現(xiàn)還算靠譜。
這意味著如果你想在訓(xùn)練數(shù)據(jù)附近微調(diào)配方,AlloyGPT是可以信任的。
但如果要跳到完全陌生的成分區(qū)間,還是老老實實重新訓(xùn)練吧。
怎么用?實際建議
對3D打印從業(yè)者來說,我們覺得AlloyGPT可以這么用:
快速篩選可打印配方
設(shè)定約束條件(比如HCS<0.5抗開裂,擴散阻力>0.9高溫穩(wěn)定),讓模型生成20個候選,用CALPHAD復(fù)核一遍,挑2到3個粉試打。
比傳統(tǒng)試驗設(shè)計省時間。
梯度結(jié)構(gòu)設(shè)計
增材制造可以逐層改變成分,但每一層都要滿足局部約束(比如界面處要低裂紋敏感,承力區(qū)要高強度)。
工藝窗口預(yù)判
雖然當(dāng)前版本只覆蓋成分到性能的映射,但論文提到可以把工藝參數(shù)(激光功率、掃描速度等)也編碼進去。
如果訓(xùn)練數(shù)據(jù)包含這些,就能直接問"在500W、1m/s條件下,什么成分不開裂?"
這可能會更實用。
知識遷移:
鋁系訓(xùn)練完了,下一步可以加鈦系、鎳系的數(shù)據(jù),讓模型學(xué)習(xí)跨體系的規(guī)律。長遠(yuǎn)看有可能發(fā)展成合金領(lǐng)域的基礎(chǔ)模型。
不過也要清醒認(rèn)識局限性:
數(shù)據(jù)依賴嚴(yán)重,垃圾進垃圾出;
物理機制是黑盒,生成的極端配方必須實驗驗證。
和傳統(tǒng)方法比怎么樣?
論文和XGBoost對比了一下。
XGBoost訓(xùn)練快(CPU幾分鐘 vs GPU幾小時),推理也快,預(yù)測精度相當(dāng)(R2都在0.79到0.99之間)。
但XGBoost做不了逆向設(shè)計,遇到多解問題也沒轍。
AM易道認(rèn)為,如果預(yù)算夠,可以用AlloyGPT海選方案,XGBoost做初篩,最后CALPHAD或?qū)嶒炁陌濉?/p>
AlloyGPT提供了一種新的工具:
把材料設(shè)計問題重新表述為語言問題,借用AI在語言建模上的成熟技術(shù)棧,繞開物理建模的復(fù)雜性。
但這條路能走多遠(yuǎn),還取決于數(shù)據(jù)積累和模型架構(gòu)的進化。
我們認(rèn)為這個方向值得強烈關(guān)注。
如果AI能把增材材料設(shè)計周期從幾個月壓縮到幾天,行業(yè)創(chuàng)新節(jié)奏會加快許多。
國內(nèi)也有創(chuàng)材深造這樣的公司在做類似探索,他們用AI驅(qū)動的方式已經(jīng)實現(xiàn)了航空航天級高強鋁合金和鎳基高溫合金的商品化,我們未來將做更多解讀。
本文的AlloyGPT開源了代碼:
GitHub: Taheri-Mousavi-Laboratory/AlloyGPT,有興趣的團隊可以拿自己的數(shù)據(jù)訓(xùn)一版試試。
不過你得先有ThermoCalc的密碼,并且數(shù)據(jù)要遵守ThermoCalc的許可協(xié)議,訓(xùn)練好的模型不能隨便公開。
關(guān)注AM易道,讀懂3D打印的變化之道。
尋找AM易道編輯,5年以上3D打印行業(yè)經(jīng)驗,不限專業(yè)領(lǐng)域。期待與有深度思考能力、文字能力和創(chuàng)作興趣的小伙伴合作,共同打造優(yōu)質(zhì)內(nèi)容。有意者請加yihanzhong詳聊。
企業(yè)合伙人計劃:
讀者提示:添加amyidao加入讀者交流群(備注加群),獲取原始信源鏈接或不便發(fā)表內(nèi)容,并與AM易道同頻讀者共同探討3D打印的一切,AM易道建議也讀者星標(biāo)公眾號,以便第一時間收到AM易道更新。
免責(zé)聲明:AM易道圖片視頻來自于網(wǎng)絡(luò),僅作為輔助閱讀之用途,無商業(yè)目的。版權(quán)歸原作者所有,如有任何侵權(quán)行為,請權(quán)利人及時聯(lián)系,我們將在第一時間刪除。本文圖片版權(quán)歸版權(quán)方所有,AM易道水印為自動添加,輔助閱讀,不代表對該圖片擁有版權(quán),如需使用圖片,請自行咨詢版權(quán)相關(guān)方。AM易道文章不構(gòu)成任何投資建議,AM易道不對因使用本文信息而導(dǎo)致的任何直接或間接損失承擔(dān)責(zé)任。
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.