孫濤 袁健美?
1) (湘潭大學(xué)數(shù)學(xué)與計(jì)算科學(xué)學(xué)院,湘潭 411105)
2) (科學(xué)工程計(jì)算與數(shù)值仿真湖南省重點(diǎn)實(shí)驗(yàn)室,湘潭 411105)
隨著人工智能的發(fā)展,機(jī)器學(xué)習(xí)在材料計(jì)算中的應(yīng)用越來(lái)越廣泛.將機(jī)器學(xué)習(xí)應(yīng)用到材料性質(zhì)預(yù)測(cè)等任務(wù)中首要實(shí)現(xiàn)的是獲得有效的材料特征表示.本文采用一種原子特征表示方法,研究一種低維、密集的分布式原子特征向量,并用于材料帶隙預(yù)測(cè)任務(wù).按照材料化學(xué)式中原子種類(lèi)和原子個(gè)數(shù),使用Transformer 編碼器作為模型結(jié)構(gòu),通過(guò)訓(xùn)練大量的材料化學(xué)式數(shù)據(jù),從而提取參與訓(xùn)練元素的特征.利用該方法預(yù)測(cè)Janus結(jié)構(gòu)過(guò)渡金屬硫族化合物MXY (M 代表過(guò)渡金屬,X,Y 是不同硫族元素)二維材料帶隙.基于深度學(xué)習(xí)得到的原子特征向量比傳統(tǒng)的Magpie 方法和Atom2Vec 方法的預(yù)測(cè)平均絕對(duì)誤差更小.可視化分析和材料性質(zhì)預(yù)測(cè)數(shù)值實(shí)驗(yàn)表明,本文提出的基于深度學(xué)習(xí)提取的原子特征表示方法,可以有效表征材料特征,并且應(yīng)用到材料帶隙預(yù)測(cè)任務(wù)中.
傳統(tǒng)的材料科學(xué)研究通常需要經(jīng)過(guò)大量的計(jì)算得到材料的目標(biāo)屬性,這通常會(huì)消耗大量時(shí)間和資源.隨著人工智能的快速發(fā)展,深度學(xué)習(xí)技術(shù)已經(jīng)被廣泛應(yīng)用在圖像識(shí)別[1]、目標(biāo)檢測(cè)[2]和自然語(yǔ)言處理[3]等領(lǐng)域.深度學(xué)習(xí)技術(shù)不需要了解從特征空間到目標(biāo)值的具體函數(shù)關(guān)系,而是通過(guò)訓(xùn)練大量的數(shù)據(jù),得到了一組神經(jīng)網(wǎng)絡(luò)權(quán)值來(lái)構(gòu)建從特征空間到目標(biāo)值的映射關(guān)系.近年來(lái),深度學(xué)習(xí)技術(shù)被應(yīng)用到材料的發(fā)現(xiàn)和設(shè)計(jì)、材料性質(zhì)預(yù)測(cè)[4,5]等方面.Hu 等[6]通過(guò)在OQMD 數(shù)據(jù)庫(kù)上訓(xùn)練了一個(gè)WGAN模型,利用訓(xùn)練好的鑒別器模型,得到了一種材料表征方法,并且通過(guò)在公共 數(shù)據(jù)集上對(duì)材料的帶隙、形成能和臨界溫度進(jìn)行預(yù)測(cè)驗(yàn)證了其有效性.Chen 等[7]利用圖神經(jīng)網(wǎng)絡(luò)建立MEGNet 來(lái)預(yù)測(cè)分子和晶體的性質(zhì),在QM9 數(shù)據(jù)集上預(yù)測(cè)了13 個(gè)目標(biāo)性質(zhì),其中11 個(gè)性質(zhì)優(yōu)于之前的預(yù)測(cè)效果.Li 等[8]提出了一種結(jié)合卷積神經(jīng)網(wǎng)絡(luò)和長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)的混合神經(jīng)網(wǎng)絡(luò),用于超導(dǎo)體的臨界溫度預(yù)測(cè).此外,深度學(xué)習(xí)技術(shù)也被用于分子動(dòng)力學(xué)模擬中,如鄂維南課題組[9]提出了一種基于神經(jīng)網(wǎng)絡(luò)的分子動(dòng)力學(xué)模擬方案,克服了與輔助量(如對(duì)稱(chēng)函數(shù)或庫(kù)侖矩陣)相關(guān)的限制,通過(guò)構(gòu)造深度學(xué)習(xí)原子勢(shì)來(lái)描述原子周?chē)沫h(huán)境.從大量的材料數(shù)據(jù)中學(xué)習(xí)潛在的物理規(guī)律,可以用于材料性質(zhì)的預(yù)測(cè),這通常會(huì)節(jié)省大量的時(shí)間和資源.
機(jī)器學(xué)習(xí)模型最重要的兩個(gè)方面是數(shù)據(jù)表示和學(xué)習(xí)算法.在材料性質(zhì)預(yù)測(cè)任務(wù)中,機(jī)器學(xué)習(xí)模型的數(shù)據(jù)表示就是確定材料的特征描述符.在之前的研究工作中,特征描述符的確定通常是先根據(jù)預(yù)測(cè)材料的特性,按經(jīng)驗(yàn)從已有的原子特征或者材料結(jié)構(gòu)特征中初步選擇一些特征,然后再利用特征選擇方法通過(guò)嘗試和試錯(cuò)逐步確定最終的特征[10].為了得到材料的通用特征描述符,越來(lái)越多的材料表征方法被不斷提出.Zhou 等[11]提出Atom2Vec方法得到原子向量表示,用材料數(shù)據(jù)建立原子-環(huán)境矩陣,通過(guò)奇異值分解降維方法得到原子20 維向量表示.Li 等[8]利用Atom2Vec 方法得到的原子向量構(gòu)建了超導(dǎo)體材料的稀疏矩陣數(shù)據(jù)表示.Calfa 等[12]提出One-hot 方法得到二元金屬氧化物和晶體材料數(shù)據(jù)表示,利用核回歸預(yù)測(cè)了金屬氧化物的電子性質(zhì)和晶體的彈性性質(zhì).One-hot 方法可以簡(jiǎn)單地為其他類(lèi)型材料提供數(shù)據(jù)表示,有很多學(xué)者利用One-hot 方法得到的材料表征作為材料的數(shù)據(jù)表示,進(jìn)行下一步機(jī)器學(xué)習(xí)任務(wù).例如Hu 等[6]通過(guò)One-hot 方法將OQMD 數(shù)據(jù)庫(kù)中材料表示成一個(gè)稀疏矩陣.Ward 等[13]提出Magpie 方法表征材料,通過(guò)開(kāi)發(fā)一組基于組合的通用屬性集,得到材料的一維向量數(shù)據(jù)表示.在文獻(xiàn)[14]中,使用Magpie 方法表征材料,采用支持向量機(jī)模型建立了預(yù)測(cè)無(wú)機(jī)固體的帶隙機(jī)器學(xué)習(xí)模型.
在之前的材料信息學(xué)研究中,材料的數(shù)據(jù)表示方法通常為以下兩種: 一是先得到原子的數(shù)據(jù)表示(Atom2Vec),然后通過(guò)材料化學(xué)式中原子的組成和數(shù)量拼接原子向量得到材料的數(shù)據(jù)表示;另一種是直接通過(guò)材料化學(xué)式或材料的物理化學(xué)性質(zhì)數(shù)據(jù),得到材料的數(shù)據(jù)表示,例如One-hot 方法.本文利用開(kāi)放量子材料數(shù)據(jù)庫(kù)的大量材料數(shù)據(jù),以自監(jiān)督的方式訓(xùn)練Transformer 編碼器模型,提取嵌入層參數(shù)得到原子特征向量.然后,通過(guò)對(duì)主族元素原子的特征向量進(jìn)行聚類(lèi)分析,實(shí)現(xiàn)了提取的原子特征向量可以區(qū)分元素的類(lèi)別;對(duì)主族元素原子特征向量的主成分進(jìn)行降維分析可以看到,原子特征向量在第一主成分上的投影基本反映了該元素對(duì)應(yīng)的最外層電子數(shù);最后,將其應(yīng)用在Janus 結(jié)構(gòu)的過(guò)渡金屬硫族化合物二維材料帶隙的預(yù)測(cè)任務(wù)中,驗(yàn)證了原子特征向量在材料預(yù)測(cè)任務(wù)中的有效性.
該模型是一種預(yù)訓(xùn)練的機(jī)器學(xué)習(xí)模型.用機(jī)器學(xué)習(xí)模型解決材料問(wèn)題時(shí),常常面臨數(shù)據(jù)量不足的問(wèn)題.如果直接用該數(shù)據(jù)進(jìn)行下游任務(wù)(材料性質(zhì)預(yù)測(cè)等),訓(xùn)練效果可能一般.在材料性質(zhì)預(yù)測(cè)任務(wù)中,模型輸入特征一般包括原子特征和材料結(jié)構(gòu)特征[15].本模型的主要作用就是在大量的材料數(shù)據(jù)中提取原子特征,為用機(jī)器學(xué)習(xí)模型進(jìn)行材料性質(zhì)預(yù)測(cè)等任務(wù)得到可靠的輸入.
本模型基于性質(zhì)相似的原子可以和同樣的原子形成結(jié)構(gòu)和性質(zhì)相似的化合物的觀點(diǎn).例如氟和氯是同族原子,都可以和氫以1∶1 的比例結(jié)合形成氟化氫(HF)和氯化氫(HCl).
在自然語(yǔ)言處理任務(wù)中,Transformer 是一種經(jīng)典的神經(jīng)網(wǎng)絡(luò)框架[16].Transformer 包括編碼器和解碼器兩部分.本模型結(jié)構(gòu)使用Transformer 的編碼器部分,如圖1 所示,圖中藍(lán)色矩形代表原子向量.每個(gè)Block 輸入原子向量和輸出原子向量的個(gè)數(shù)是相同的,因此可以疊加多個(gè)Block.在樣本輸入Block 進(jìn)行訓(xùn)練前,首先會(huì)生成一個(gè)原子詞匯表,原子詞匯表包含了訓(xùn)練數(shù)據(jù)中全部的原子和特殊符號(hào).對(duì)每一個(gè)材料化學(xué)式中的原子使用One-hot編碼得到一個(gè)原子詞匯表長(zhǎng)度的向量.通過(guò)一個(gè)神經(jīng)網(wǎng)絡(luò)嵌入層,讓原子的向量維度從原子詞匯表長(zhǎng)度減少到嵌入層神經(jīng)元個(gè)數(shù),在將其輸入Transformer 的Block 中進(jìn)行訓(xùn)練.在損失函數(shù)的控制下,通過(guò)反向傳播算法更新模型中各個(gè)節(jié)點(diǎn)的參數(shù),待損失函數(shù)值趨于穩(wěn)定,提取了模型前面的嵌入層參數(shù),即原子詞匯表中每個(gè)原子的特征表示.
每個(gè)Block 內(nèi)部結(jié)構(gòu)如圖1 右圖所示,每個(gè)Block 的輸出向量都由輸入Block 的向量經(jīng)過(guò)同樣的處理方式得到輸出向量.以圖1 左圖從下往上第一個(gè)Block 的橙色輸出向量為例,介紹每個(gè)Block內(nèi)部機(jī)制(橙色向量?jī)H僅用于介紹Block 內(nèi)部機(jī)制,和藍(lán)色向量都代表原子特征向量).輸入Block的橙色向量首先會(huì)經(jīng)過(guò)注意力機(jī)制得到一個(gè)包含其他輸入向量信息的輸出向量,然后將輸入注意力機(jī)制的橙色原子向量和該輸出向量相加,得到的新向量經(jīng)過(guò)層歸一化操作,輸入到全連接層中得到輸出向量;該向量和輸入全連接層的向量相加,再經(jīng)過(guò)層歸一化操作得到Block 的對(duì)應(yīng)輸出向量.圖1右圖中僅展示一個(gè)Block 的輸出向量,對(duì)于其他輸出向量,由輸入向量經(jīng)過(guò)同樣的計(jì)算過(guò)程得到.
圖1 Transformer 編碼器結(jié)構(gòu)Fig.1.The Transformer encoder structure.
圖1 中注意力機(jī)制由一個(gè)多頭注意力機(jī)制組成,如圖2 所示.對(duì)于輸入注意力機(jī)制的全部向量組成的矩陣M ∈Rd×f(d為向量個(gè)數(shù),f為向量維度),分別與可訓(xùn)練矩陣Q ∈Rf×f,K ∈Rf×f,V ∈Rf×e(e為向量線(xiàn)性變換到v矩陣的維度)相乘得到q ∈Rd×f,k ∈Rd×f,v ∈Rd×e,公式如下:
圖2 多頭注意機(jī)構(gòu)模塊結(jié)構(gòu)[16]Fig.2.Multi-attention mechanism module structure[16].
注意力機(jī)制輸出矩陣的計(jì)算公式如下:
多頭注意力機(jī)制每個(gè)hea d 對(duì)q,k,v分別進(jìn)行線(xiàn)性變換,對(duì)每個(gè)head 執(zhí)行注意力函數(shù).將 headi得到的結(jié)果向量記為bi,所有head 得到的結(jié)果拼接起來(lái)再進(jìn)行線(xiàn)性變換,得到最終多頭注意力機(jī)制的輸出向量ans.
如圖3 中示例輸入樣本所示,將輸入樣本表示成材料化學(xué)式1、分隔符、材料化學(xué)式2、樣本標(biāo)簽4 部分.受到自然語(yǔ)言處理領(lǐng)域表現(xiàn)出良好性能的Bert 模型[3]的啟發(fā),使用的訓(xùn)練方法有兩種,如圖3 所示.第一種訓(xùn)練方法是隨機(jī)遮蓋掉一條輸入樣本15%的原子,讓模型來(lái)預(yù)測(cè)這些被遮蓋掉的原子.如果某個(gè)原子被遮蓋,在訓(xùn)練時(shí)該原子位置的輸入有3 種情況: 有80%的概率替換成特殊字符[MASK],有10%的概率隨機(jī)替換成一個(gè)原子,另外10%概率替換為原子本身.被遮蓋掉的原子對(duì)應(yīng)的輸出向量會(huì)經(jīng)過(guò)一個(gè)線(xiàn)性多分類(lèi)器,用softmax 函數(shù)得到預(yù)測(cè)結(jié)果的概率分布,然后與該原子的真實(shí)標(biāo)簽用交叉熵?fù)p失函數(shù)計(jì)算損失值,得到 l osslm(原子真實(shí)標(biāo)簽可以在模型訓(xùn)練過(guò)程中遮蓋原子操作時(shí)產(chǎn)生).這樣的訓(xùn)練方式將具有相似性質(zhì)的原子得到相似的原子向量.
圖3 模型訓(xùn)練示意圖Fig.3.Model training diagram.
第二種訓(xùn)練方法是對(duì)化合物做類(lèi)別預(yù)測(cè).若兩個(gè)材料化學(xué)式中包含的元素屬于化學(xué)元素周期表中同樣的族,則將兩個(gè)材料認(rèn)為是同一類(lèi).若一條樣本中兩個(gè)材料是同一類(lèi)別,則該樣本的標(biāo)簽為1;反之,若一條樣本中兩個(gè)材料不是同一類(lèi)別,則該樣本標(biāo)簽為0.在實(shí)際訓(xùn)練時(shí),在每條樣本開(kāi)始會(huì)加入一個(gè)特殊字符[CLS].由于模型中加入了注意力機(jī)制,該特殊字符在在參與訓(xùn)練時(shí)考慮到了整個(gè)樣本,所以對(duì)特殊字符[CLS]輸出結(jié)果做一個(gè)二分類(lèi)任務(wù),判斷同一條樣本中的兩個(gè)材料是否屬于同一類(lèi)別.該二分類(lèi)任務(wù)的損失函數(shù)也是交叉熵?fù)p失函數(shù),通過(guò)計(jì)算損失值得到 l osslabel.
在訓(xùn)練過(guò)程中,以上兩種訓(xùn)練方法同時(shí)進(jìn)行,然后對(duì)目標(biāo)模型做如下優(yōu)化:
通過(guò)反向傳播算法,對(duì)模型中的參數(shù)進(jìn)行更新,來(lái)減少總損失值,直到總損失值收斂.
模型需要材料化學(xué)式數(shù)據(jù)作為輸入數(shù)據(jù)進(jìn)行訓(xùn)練,使用開(kāi)放量子材料數(shù)據(jù)庫(kù)[17](OQMD)的數(shù)據(jù)來(lái)訓(xùn)練模型.開(kāi)放量子材料數(shù)據(jù)庫(kù)包含大量由密度泛函理論計(jì)算的晶體結(jié)構(gòu)數(shù)據(jù),從OQMD 數(shù)據(jù)庫(kù)中提取561888 個(gè)材料的化學(xué)式,按照模型輸入樣本格式,將其重組成560130 條樣本用于訓(xùn)練模型.
模型基于Pytorch[18]框架,利用其自動(dòng)微分和GPU 加速計(jì)算動(dòng)態(tài)張量,同時(shí)保持較快的計(jì)算速度.將提取的樣本中包含的所有元素組成一個(gè)原子詞匯表,為了得到原子詞匯表中的所有元素的分布式向量表示,需要先確定向量維度.由于得到的向量應(yīng)具備密集、低維的特點(diǎn),所以向量維度不能高于所有元素的個(gè)數(shù),但是向量維度太低可能不能包含學(xué)習(xí)到的全部信息,所以將嵌入層神經(jīng)元個(gè)數(shù)調(diào)整為16,最終也將得到元素的16 維原子向量.Transformer 編碼器模型已經(jīng)在自然語(yǔ)言處理領(lǐng)域廣泛應(yīng)用,其中一個(gè)重要的模型應(yīng)用就是BERT模型[3].本文深度神經(jīng)網(wǎng)絡(luò)的參數(shù)設(shè)置參考BERT模型參數(shù),并在實(shí)際訓(xùn)練過(guò)程中進(jìn)行參數(shù)微調(diào).最終將模型中Transformer 的Block 數(shù)設(shè)為8,多頭注意力機(jī)制head 數(shù)目設(shè)為8,訓(xùn)練80 代.
以主族元素為例,分析提取的原子向量代表的物理化學(xué)性質(zhì).對(duì)參與訓(xùn)練的34 個(gè)主族元素進(jìn)行了基于余弦距離(見(jiàn) (7)式)的層次聚類(lèi),聚類(lèi)結(jié)果如圖4 所示.
在圖4 中,將相似的原子特征向量用紅色矩形標(biāo)出.可以看到,第I 主族堿金屬元素(Li,Na,K,Rb,Cs)和II 主族堿土元素(Be,Mg,Ca,Sr,Ba)全部元素被分為一組;第 III 主族金屬元素(Al,Ga,In,Tl)被分為一組;非金屬元素(H,C,N,P,O,S,Se,F,Cl,Br,I)除氧元素為都被分為一組,包含典型的非金屬元素——鹵素;類(lèi)金屬元素(B,Si,Ge,As,Sb,Te)中,元素B,Ge,As,Sb 被分為一組,同組還有第IV 主族金屬元素(Sn,Pb),第V主族金屬元素(Bi),因?yàn)橥逶鼐哂邢嗨频幕瘜W(xué)性質(zhì),這也許是模型更傾向于學(xué)習(xí)Sn,Pb,Bi 和同族元素的化學(xué)性質(zhì)而不是元素類(lèi)別.除此之外,利用深度學(xué)習(xí)得到的原子特征向量也提取了部分原子序數(shù)相鄰的元素的關(guān)系.例如Al 和Si 的原子序數(shù)分別為13 和14,由圖4 可以看出,模型提取的原子特征向量也極為相似.
圖4 主族元素層次聚類(lèi)圖Fig.4.A hierarchical clustering diagram of the main family elements.
另外,為了更好地理解原子特征向量在高維空間中的內(nèi)涵,利用主成分分析的方法,將16 維原子特征向量降維到4 個(gè)主成分.分別做出第一主成分(PCA1)、第二主成分(PCA2)和第三主成分(PCA3)、第四主成分(PCA4)的散點(diǎn)圖,如圖5 和圖6 所示.在圖5 中,可以看到,原子特征向量在第一個(gè)主成分上的投影基本上可以反映原子最外層價(jià)電子數(shù)目,最外層價(jià)電子數(shù)目越多,第一主成分值越大.在圖6 中,第三、四主成分的散點(diǎn)圖可以將主族元素按同族元素的相似的化學(xué)性質(zhì)進(jìn)行聚類(lèi).
圖5 PCA1 和PCA2 散點(diǎn) 圖Fig.5.PCA1 and PCA2 scatter maps.
圖6 PCA3 和PCA4 散點(diǎn)圖Fig.6.PCA3 and PCA4 scatter maps.
綜上所述,利用深度學(xué)習(xí)在大量材料中提取的原子特征向量可以表示元素的信息,在下一節(jié)中將驗(yàn)證本文提取到的原子特征向量在材料信息學(xué)的下游任務(wù)中有較好的應(yīng)用.
為了驗(yàn)證基于深度學(xué)習(xí)得到的原子特征向量(Atom_DL)的有效性,利用得到的原子特征向量對(duì)MXY Janus 單分子層材料的帶隙進(jìn)行預(yù)測(cè).MX2型過(guò)渡金屬硫化物(其中M 代表過(guò)渡金屬,X是硫族元素)在大量文獻(xiàn)中得到討論[19].最近實(shí)驗(yàn)[20]表明,可以通過(guò)用兩個(gè)不同的鹵族、硫族或磷族元素來(lái)合成金屬原子M 兩側(cè)的X,這形成了一類(lèi)新二維材料,稱(chēng)為MXY Janus 單分子層.從C2DB數(shù)據(jù)庫(kù)[21?22]中得到216 個(gè)MXY Janus 單分子層材料數(shù)據(jù),用機(jī)器學(xué)習(xí)的方法來(lái)預(yù)測(cè)MXY Janus單分子層的帶隙.由于C2DB 數(shù)據(jù)庫(kù)中材料帶隙值的缺失,最終篩選出93 條MXY Janus 單分子層材料數(shù)據(jù)進(jìn)行預(yù)測(cè)任務(wù).
機(jī)器學(xué)習(xí)模型的輸入包括材料的原子特征和材料結(jié)構(gòu)特征.分別將基于Magpie 方法、Atom2Vec方法和深度學(xué)習(xí)的方法得到的原子特征向量作為材料的原子特征輸入模型,其中Magpie 方法①https://github.com/hackingmaterials/matminer/tree/46d6a90664dc9e804e81c2c22cbee9e7221e8315/matminer/utils/data_files/magpie_elementdata和Atom2Vec 方法②https://github.com/idocx/Atom2Vec的數(shù)據(jù)分別可以在兩個(gè)開(kāi)源項(xiàng)目中獲得.Magpie 方法利用已知的原子物理化學(xué)性質(zhì),可以簡(jiǎn)單高效地構(gòu)造每個(gè)材料的特征向量;但是使用該方法進(jìn)行預(yù)測(cè)任務(wù)時(shí),往往難以統(tǒng)一特征向量不同分量的量綱.Atom2Vec 方法是一種分布式表示方法,這種方法得到的原子特征向量是連續(xù)的、低維的,并且特征向量各分量量綱統(tǒng)一;但是這種方法使用前需要先在大型數(shù)據(jù)集上預(yù)訓(xùn)練.對(duì)于材料的結(jié)構(gòu)特征,考慮到MXY Janus 單分子層具體的結(jié)構(gòu)性質(zhì),選擇材料3 個(gè)原子的歸一化相對(duì)位置和晶胞面積作為材料的結(jié)構(gòu)特征輸入模型.在輸入模型時(shí),將材料的原子特征和材料結(jié)構(gòu)特征拼接起來(lái)作為輸入特征,來(lái)預(yù)測(cè)材料的帶隙值.
利用3 種機(jī)器學(xué)習(xí)方法(隨機(jī)森林、核嶺回歸、支持向量回歸)對(duì)MXY Janus 單分子層的帶隙性質(zhì)進(jìn)行建模和預(yù)測(cè).隨機(jī)森林回歸模型[5]通過(guò)隨機(jī)抽取樣本和特征,以并行的方式獲得多棵相互不關(guān)聯(lián)的決策樹(shù)的預(yù)測(cè)結(jié)果,對(duì)所有決策樹(shù)的預(yù)測(cè)結(jié)果取平均值,作為隨機(jī)森林回歸模型的預(yù)測(cè)結(jié)果.
核嶺回歸[23]就是基于核函數(shù)并且包括l2范數(shù)的線(xiàn)性回歸.對(duì)于線(xiàn)性回歸模型,可以使用最小二乘法計(jì)算回歸模型的參數(shù),但是當(dāng)樣本數(shù)據(jù)中存在多重共線(xiàn)性的問(wèn)題時(shí),參數(shù)數(shù)值會(huì)變得非常大.在最小二乘法回歸模型的基礎(chǔ)上添加參數(shù)的l2范數(shù),即為嶺回歸的目標(biāo)函數(shù):
其中λ大于0.為了最小化目標(biāo)函數(shù),對(duì)(8)式右邊關(guān)于參數(shù)w求導(dǎo),并且令導(dǎo)數(shù)為0,即可得到參數(shù)w的最優(yōu)解為
這里Id為單位矩陣.對(duì)于非線(xiàn)性數(shù)據(jù),通過(guò)非線(xiàn)性映射函數(shù)Φ將低維空間的數(shù)據(jù)映射到高維空間,也就是用Φ(X) 代替X,使數(shù)據(jù)線(xiàn)性可分.在嶺回歸中加入核函數(shù)K,即為核嶺回歸.重復(fù)嶺回歸求解過(guò)程,可以得到核嶺回歸參數(shù)的最優(yōu)解為
支持向量回歸[24]求解一個(gè)線(xiàn)性超平面,使得特征空間中的所有樣本點(diǎn)到該超平面的幾何間隔最大.本質(zhì)上是求解一個(gè)有約束的優(yōu)化問(wèn)題,其目標(biāo)函數(shù)為
其中w是回歸模型的參數(shù),ε是容忍偏差,y是樣本真實(shí)值.支持向量回歸和線(xiàn)性回歸的一個(gè)重要區(qū)別就是,支持向量回歸存在一個(gè)容忍偏差,只有當(dāng)回歸模型預(yù)測(cè)值和真實(shí)值的差大于容忍偏差,才計(jì)算損失.在求解優(yōu)化問(wèn)題時(shí),通過(guò)拉格朗日乘子法求解.對(duì)于非線(xiàn)性數(shù)據(jù),支持向量回歸和核嶺回歸類(lèi)似,通過(guò)引入核函數(shù)將數(shù)據(jù)從低維空間映射到高維空間,使之可以求解.
以上3 種機(jī)器學(xué)習(xí)模型各有特點(diǎn),隨機(jī)森林回歸由于隨機(jī)性,可以有效降低模型的方差,具有較好的泛化能力和抗過(guò)擬合能力;核嶺回歸通過(guò)增加正則化項(xiàng),提升了訓(xùn)練的穩(wěn)定性,具有可解釋性、泛化能力強(qiáng)等優(yōu)點(diǎn),并且適用于小樣本數(shù)據(jù)回歸;支持向量回歸作為一種監(jiān)督學(xué)習(xí)算法,具有很好的泛化能力,并且對(duì)異常值具有魯棒性.
為了得到穩(wěn)定的結(jié)果,利用5 折交叉驗(yàn)證對(duì)模型進(jìn)行檢驗(yàn).5 折交叉驗(yàn)證將數(shù)據(jù)集平均劃分成5 份,依次用其中的一份作為測(cè)試集,其他數(shù)據(jù)作為訓(xùn)練集來(lái)得到誤差.最后,計(jì)算5 個(gè)誤差的平均值作為模型最終的誤差.在不同的機(jī)器學(xué)習(xí)方法和不同的輸入原子特征向量組成的模型中,使用參數(shù)搜索的方式得到最優(yōu)的模型.相同的機(jī)器學(xué)習(xí)方法的參數(shù)在同一個(gè)參數(shù)空間中進(jìn)行搜索,所有的機(jī)器學(xué)習(xí)算法模型都是使用開(kāi)源庫(kù)Scikit-learn[25]實(shí)現(xiàn)的.隨機(jī)森林模型的參數(shù)如表1 所示,核嶺回歸的參數(shù)如表2 所示,支持向量回歸模型參數(shù)如表3所示.
表1 隨機(jī)森林模型參數(shù)Table 1.The random forest model parameter.
表2 核嶺回歸模型參數(shù)Table 2.Kernel ridge regression model parameter.
表3 支持向量機(jī)回歸模型參數(shù)Table 3.Support vector regression model parameter.
各模型的預(yù)測(cè)結(jié)果的平均絕對(duì)誤差如圖7 所示,對(duì)于3 種機(jī)器學(xué)習(xí)方法,基于深度學(xué)習(xí)得到的原子特征向量作為輸入特征時(shí)的平均絕對(duì)誤差要低于已有的兩種原子特征向量表示方法.此外,當(dāng)Magpie 和Atom2Vec 方法得到的原子特征向量輸入機(jī)器學(xué)習(xí)模型中時(shí),核嶺回歸模型預(yù)測(cè)的精度是最差的;而對(duì)于本文提出的原子特征向量方法,核嶺回歸模型預(yù)測(cè)的精度比其他兩種方法高.由于核嶺回歸更適用于處理特征相關(guān)性高的數(shù)據(jù)集,而Magpie 得到的原子特征向量分量量綱不統(tǒng)一,特征相關(guān)性自然很低,所以平均絕對(duì)誤差比較高;而本文提出的原子特征向量量綱統(tǒng)一,各特征之間有一定的相關(guān)性,所以平均絕對(duì)誤差較低,這也說(shuō)明本文得到的原子特征向量是低維、密集的分布式特征向量.
圖7 對(duì)MXY Janus 單分子層材料的帶隙預(yù)測(cè)平均絕對(duì)誤差Fig.7.MAE of band gap prediction for MXY Janus monolayer materials.
表4 列出了測(cè)試集中的24 個(gè)樣本的帶隙計(jì)算值和帶隙預(yù)測(cè)值,其中帶隙計(jì)算值是通過(guò)基于密度泛函理論的第一性原理計(jì)算得到的,在密度泛函理論中使用PBE 交換關(guān)聯(lián)泛函進(jìn)行計(jì)算,自旋軌道耦合通過(guò)非自洽對(duì)角化包含在Kohn-Sham 特征態(tài)的全基中[22].從表4 可以看出,3 種機(jī)器學(xué)習(xí)模型均對(duì)基于深度學(xué)習(xí)的原子特征向量具有良好的預(yù)測(cè)效果.這也驗(yàn)證本文得到的原子特征向量的在機(jī)器學(xué)習(xí)方法中的有效性,這樣得到的原子特征向量可以應(yīng)用到其他材料性質(zhì)預(yù)測(cè)的任務(wù)中.
表4 測(cè)試集材料預(yù)測(cè)值和計(jì)算值對(duì)比Table 4.Comparison of material predictive and experimental values in the test.
本研究基于性質(zhì)相似的原子可以和同樣的原子形成結(jié)構(gòu)和性質(zhì)相似的化合物的觀點(diǎn),利用深度學(xué)習(xí)的方法從大量材料化學(xué)式數(shù)據(jù)中提取主族元素和大多數(shù)副族元素的原子特征.使用隨機(jī)森林、核嶺回歸和支持向量回歸3 種機(jī)器學(xué)習(xí)方法對(duì)Janus 結(jié)構(gòu)過(guò)渡金屬硫化物MXY Janus 單分子層材料的帶隙性質(zhì)進(jìn)行預(yù)測(cè).在材料特征表示上,使用了材料結(jié)構(gòu)特征和原子特征.材料結(jié)構(gòu)特征使用組成化合物各原子的歸一化相對(duì)位置和晶胞面積,原子特征分別使用Magpie,Atom2Vec 和Atom_DL.為了得到回歸效果更好的模型,對(duì)每一種機(jī)器學(xué)習(xí)模型定義一個(gè)相同的參數(shù)搜索空間,使用Scikit-learn 庫(kù)中的參數(shù)網(wǎng)格搜索函數(shù)在參數(shù)搜索空間中進(jìn)行搜索,得到機(jī)器學(xué)習(xí)模型的最佳參數(shù),使用該參數(shù)對(duì)測(cè)試集上的材料數(shù)據(jù)進(jìn)行預(yù)測(cè),計(jì)算測(cè)試集的平均絕對(duì)誤差.從結(jié)果上來(lái)看,基于深度學(xué)習(xí)提取到的原子特征在機(jī)器學(xué)習(xí)模型中表現(xiàn)出更好的性能.
隨著機(jī)器學(xué)習(xí)的不斷發(fā)展,機(jī)器學(xué)習(xí)模型在材料信息學(xué)中的應(yīng)用越來(lái)越廣泛.而利用機(jī)器學(xué)習(xí)模型的第一步就是特征工程,所以本研究結(jié)果可以應(yīng)用到其他材料任務(wù)中去.在材料的特征表示上,材料的結(jié)構(gòu)特征對(duì)性能的影響也不容忽視,也將關(guān)注提取不同類(lèi)型材料的材料結(jié)構(gòu)特征.