林海鵬,李國棟,陳法國,韓 毅,梁潤成
(中國輻射防護(hù)研究院,太原 030006)
屏蔽設(shè)計(jì)中優(yōu)化是一個(gè)重要問題,在實(shí)現(xiàn)屏蔽效果的同時(shí)應(yīng)盡可能降低材料重量、體積、造價(jià)等必要考慮的目標(biāo)。遺傳算法等現(xiàn)代優(yōu)化方法已廣泛應(yīng)用于輻射屏蔽設(shè)計(jì)優(yōu)化[1],圍繞算法模型、種類和策略等的原理研究也較為豐富;遺傳算法進(jìn)行屏蔽設(shè)計(jì)優(yōu)化的一個(gè)瓶頸問題在于:需要進(jìn)行屏蔽計(jì)算的次數(shù)太多,通常等于種群數(shù)量與迭代次數(shù)的乘積;而屏蔽計(jì)算往往耗時(shí)較長,尤其采用蒙特卡羅之類的概率論模擬方法,較多粒子數(shù)和復(fù)雜模型下過長的計(jì)算時(shí)間嚴(yán)重影響優(yōu)化設(shè)計(jì)效率[2-3]。
在多組分中子屏蔽材料優(yōu)化算法設(shè)計(jì)中[4],利用遺傳算法選擇優(yōu)秀個(gè)體并交叉、變異產(chǎn)生下一代種群,其中個(gè)體的遺傳信息即材質(zhì)質(zhì)量組分,而新個(gè)體的一個(gè)重要評(píng)價(jià)函數(shù)為材料屏蔽效果,通常需要利用蒙特卡羅計(jì)算。為減少時(shí)間消耗,開展了利用神經(jīng)網(wǎng)絡(luò)算法實(shí)現(xiàn)快速屏蔽計(jì)算的應(yīng)用研究。該方法將所有可能的材料組分方案看做是一個(gè)輸入空間,各個(gè)方案對(duì)應(yīng)的屏蔽計(jì)算結(jié)果作為輸出空間;選擇空間有限數(shù)量點(diǎn)組成訓(xùn)練樣本,通過神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)得到預(yù)測模型,建立輸入空間到輸出空間代數(shù)擬合的映射關(guān)系;在應(yīng)用于遺傳算法迭代過程中時(shí),對(duì)于輸入空間的任意材料組分方案,利用此預(yù)測模型可代數(shù)運(yùn)算快速獲得屏蔽計(jì)算結(jié)果,無需再調(diào)用蒙特卡羅模擬程序。
神經(jīng)網(wǎng)絡(luò)預(yù)測方法在提高計(jì)算速度的同時(shí)犧牲了一部分蒙特卡羅方法的屏蔽計(jì)算精度,二者計(jì)算結(jié)果的偏差與樣本的數(shù)量和全局性、網(wǎng)絡(luò)參數(shù)、訓(xùn)練模式以及問題本身的內(nèi)在邏輯性都有關(guān)系。計(jì)算結(jié)果的偏差范圍和分布、精度控制、泛化能力等是該方法能否應(yīng)用于遺傳算法的關(guān)鍵,本文就此對(duì)建立的BP神經(jīng)網(wǎng)絡(luò)預(yù)測模型和結(jié)果進(jìn)行了討論,并進(jìn)一步分析了有限樣本下交叉驗(yàn)證法訓(xùn)練模式對(duì)預(yù)測偏差的改善程度。
不同材料組分方案具有不同的屏蔽效果,利用蒙特卡羅模擬方法評(píng)估復(fù)合材料的中子屏蔽效果。材料結(jié)構(gòu)設(shè)為30 cm等厚平板,半徑為50 cm;中子源項(xiàng)為Watt裂變譜描述的252Cf單向面源;利用蒙特卡羅程序計(jì)算單位注量的中子穿過復(fù)合材料構(gòu)成的平板結(jié)構(gòu)后的中子和次級(jí)光子周圍劑量當(dāng)量之和D(平均劑量×材料面積,量綱:pSv·cm2)來表征屏蔽效果。
BP神經(jīng)網(wǎng)絡(luò)是一種按誤差逆?zhèn)鞑ニ惴ㄓ?xùn)練的多層前饋網(wǎng)絡(luò),典型的三層BP網(wǎng)絡(luò)模型拓?fù)浣Y(jié)構(gòu)包括輸入層、隱層和輸出層,如圖1所示。層與層之間利用傳輸函數(shù)關(guān)聯(lián)計(jì)算,其輸入矩陣X、網(wǎng)絡(luò)權(quán)值矩陣Ω、閾值向量b、激活函數(shù)f和輸出矩陣Y的關(guān)系如下:
Y=f2[Ω2f1(Ω1X+b1)+b2]
(1)
神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程中,根據(jù)實(shí)際輸出與期望輸出,以降低誤差性能函數(shù)為目標(biāo),逐步迭代調(diào)整各層的權(quán)值和閾值,直到網(wǎng)絡(luò)訓(xùn)練達(dá)到預(yù)設(shè)次數(shù)為止。常用的誤差性能函數(shù)為均方誤差,其總誤差性能函數(shù)為:
(2)
式中,ti為目標(biāo)矢量(本文相當(dāng)于劑量和D),yi(k)為第k次迭代后的輸出矢量(相當(dāng)于預(yù)測的劑量和D)。
圖1 BP神經(jīng)網(wǎng)絡(luò)基本結(jié)構(gòu)Fig.1 Basic structure of BP neural network
BP神經(jīng)網(wǎng)絡(luò)方法學(xué)習(xí)和訓(xùn)練的對(duì)象為輸入矩陣和輸出矩陣的映射關(guān)系:訓(xùn)練樣本以材料各組分的質(zhì)量分?jǐn)?shù)數(shù)據(jù)為輸入,隨機(jī)抽樣構(gòu)造了300組不同的材料組分方案并檢驗(yàn)其分布均勻性;使用蒙特卡羅程序計(jì)算各組分方案下射線穿過材料后的劑量之和D作為輸出。基于Matlab神經(jīng)網(wǎng)絡(luò)工具箱,構(gòu)建BP神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,具體流程如圖2所示。
(1)樣本代表性
輸入空間理論上是無限大的,用于網(wǎng)絡(luò)學(xué)習(xí)和訓(xùn)練的樣本是從輸入空間中隨機(jī)選取的一部分點(diǎn)集,其分布均勻性和全局性關(guān)系到最終獲得的網(wǎng)絡(luò)模型的泛化能力。對(duì)應(yīng)于6種材料質(zhì)量組分,輸入空間為一個(gè)6維空間,訓(xùn)練樣本點(diǎn)為6維矢量,通過比較300個(gè)樣本中各組分?jǐn)?shù)據(jù)統(tǒng)計(jì)分布的一致性,定性判斷樣本的代表性。如圖3所示,樣本中6種組分?jǐn)?shù)據(jù)值的分布基本一致,認(rèn)為樣本是隨機(jī)均勻的。
訓(xùn)練樣本中一部分用來訓(xùn)練網(wǎng)絡(luò)(90%),另一部分用作測試驗(yàn)證(10%),用于訓(xùn)練過程中的網(wǎng)絡(luò)泛化性檢驗(yàn)。
(2)網(wǎng)絡(luò)參數(shù)設(shè)置
利用神經(jīng)網(wǎng)絡(luò)工具箱提供的預(yù)設(shè)算法函數(shù)等,經(jīng)調(diào)試比較建立的網(wǎng)絡(luò)結(jié)構(gòu)如下:采用一個(gè)隱層;隱層節(jié)點(diǎn)數(shù)是中間變量的個(gè)數(shù),一般基于經(jīng)驗(yàn)和調(diào)試進(jìn)行設(shè)置,節(jié)點(diǎn)數(shù)太大會(huì)導(dǎo)致過擬合,而且對(duì)本文算例并不能顯著提高訓(xùn)練效果,經(jīng)比較隱層節(jié)點(diǎn)數(shù)設(shè)置為29。
激活函數(shù)將非線性引入到網(wǎng)絡(luò)中,使得神經(jīng)網(wǎng)絡(luò)可以任意逼近任何非線性函數(shù);在輸入量加權(quán)求和后,利用激活函數(shù)獲得下一層的輸出;tan-sig mod(雙曲正切S型)型傳遞函數(shù)的輸入值可取任意值,輸出值在-1到+1之間,見式(3);經(jīng)比較網(wǎng)絡(luò)訓(xùn)練效果,輸入層和輸出層的激活函數(shù)均選擇tansig函數(shù):
(3)
訓(xùn)練精度和收斂性對(duì)初始權(quán)重賦值敏感,使用均值為0、標(biāo)準(zhǔn)差為0.001的正態(tài)分布隨機(jī)數(shù)作為初始化權(quán)重值能有效加快收斂速度。
訓(xùn)練函數(shù)根據(jù)誤差性能函數(shù)調(diào)整權(quán)值閾值,選擇Levenberg-Marquardt(trainlm)算法,該算法在最小二乘擬合過程中修改權(quán)值參數(shù)時(shí)結(jié)合了高斯-牛頓算法以及梯度下降法的優(yōu)點(diǎn),能獲得較好的收斂結(jié)果。
圖2 神經(jīng)網(wǎng)絡(luò)訓(xùn)練和預(yù)測流程圖Fig.2 Training and prediction flow chart of Neural network
圖3 樣本中質(zhì)量組分統(tǒng)計(jì)分布Fig.3 Statistical distribution of mass components in training samples
經(jīng)訓(xùn)練該神經(jīng)網(wǎng)絡(luò)模型可快速收斂,最終獲得的模型對(duì)樣本的線性回歸總相關(guān)系數(shù)大于0.9999。如圖4所示,比較了利用該模型和訓(xùn)練樣本質(zhì)量組分計(jì)算得到的劑量值D(實(shí)際輸出)與預(yù)期值(初始蒙卡計(jì)算結(jié)果),直觀顯示相對(duì)偏差大部分在±10%以內(nèi),個(gè)別樣本的相對(duì)偏差絕對(duì)值接近20%。
為觀察偏差的分布規(guī)律,圖中樣本點(diǎn)按劑量值由低到高排序顯示。可見在低劑量段相對(duì)偏差較大,高劑量段相對(duì)偏差較小,而絕對(duì)偏差整體在±2以內(nèi);絕對(duì)偏差相比于相對(duì)偏差分布更加均勻。這是因?yàn)樯鲜鯞P神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程以式(2)的均方差為誤差性能評(píng)價(jià)函數(shù),而不是相對(duì)誤差所導(dǎo)致的。
圖4 BP神經(jīng)網(wǎng)絡(luò)預(yù)測結(jié)果與蒙卡計(jì)算結(jié)果的對(duì)比Fig.4 The results comparison of BP neural network and monte carlo
多組分中子屏蔽材料組分優(yōu)化算法中,利用該訓(xùn)練好的BP神經(jīng)網(wǎng)絡(luò)模型計(jì)算遺傳算法迭代中新種群個(gè)體的劑量值D,其目標(biāo)是通過搜索將種群的劑量值整體降低至最低。該神經(jīng)網(wǎng)絡(luò)預(yù)測結(jié)果的絕對(duì)偏差較小,因此計(jì)算精度不會(huì)較大影響遺傳算法的搜索尋優(yōu)方向,而且通過在遺傳算法評(píng)價(jià)函數(shù)中基于偏差估計(jì)設(shè)置置信范圍,可進(jìn)一步控制種群的多樣性,避免因劑量值預(yù)測誤差導(dǎo)致的過早收斂或陷入局部最優(yōu)[4]。最終尋優(yōu)結(jié)果可能因?yàn)樯窠?jīng)網(wǎng)絡(luò)計(jì)算偏差而無法到達(dá)真正最優(yōu)解,但也是與最優(yōu)解非常接近的。
事實(shí)上對(duì)于該方法,相比于神經(jīng)網(wǎng)絡(luò)模型對(duì)訓(xùn)練樣本的計(jì)算偏差,其泛化能力才是保持尋優(yōu)正確方向更關(guān)鍵的因素,即對(duì)輸入空間訓(xùn)練樣本之外的任意點(diǎn)(質(zhì)量組分方案)的劑量值能夠保持相當(dāng)預(yù)測精度更為重要。隨機(jī)重新構(gòu)造了330組不同的質(zhì)量組分并使用蒙特卡羅程序計(jì)算劑量D,作為驗(yàn)證樣本;將驗(yàn)證樣本質(zhì)量組分帶入訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)模型中計(jì)算出劑量預(yù)測值,與蒙卡計(jì)算值的比較如圖5所示(樣本按劑量值由低到高排序顯示),其相對(duì)偏差仍在±20%以內(nèi),為-16.8%~18.8%之間;絕對(duì)偏差為-6.4~5.2之間。
圖5 驗(yàn)證樣本神經(jīng)網(wǎng)絡(luò)預(yù)測結(jié)果與蒙卡結(jié)果的偏差Fig.5 The results comparison of BP neural network and monte carlo for verification samples
如圖6所示對(duì)訓(xùn)練樣本和驗(yàn)證樣本的預(yù)測相對(duì)偏差絕對(duì)值進(jìn)行分段統(tǒng)計(jì),從整體分布上看驗(yàn)證樣本的相對(duì)偏差相比于訓(xùn)練樣本有所擴(kuò)大,但70%以上樣本的相對(duì)偏差絕對(duì)值仍在2%以內(nèi)。從泛化能力看該模型滿足遺傳算法使用,偏差分布規(guī)律的分析可以為優(yōu)化算法中評(píng)價(jià)函數(shù)置信范圍的設(shè)置提供參考。
圖6 相對(duì)偏差絕對(duì)值統(tǒng)計(jì)分布Fig.6 Statistical distribution of absolute relative deviation
上述BP神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練過程中,設(shè)置了10%的訓(xùn)練樣本用作測試驗(yàn)證。在初步訓(xùn)練的結(jié)果上,采用交叉驗(yàn)證法對(duì)模型進(jìn)行二次訓(xùn)練,以比較訓(xùn)練模式對(duì)獲得的神經(jīng)網(wǎng)絡(luò)模型性能的影響。交叉驗(yàn)證法將訓(xùn)練樣本打亂并均勻分成K份,輪流選擇其中K-1份訓(xùn)練,剩余1份驗(yàn)證,在樣本數(shù)量較少時(shí)可以一定程度提高學(xué)習(xí)和訓(xùn)練效果。
交叉驗(yàn)證法訓(xùn)練后新的網(wǎng)絡(luò)模型對(duì)訓(xùn)練樣本劑量值D的預(yù)測偏差顯著降低,如圖7所示(按劑量值由低到高排序顯示),與蒙特卡羅計(jì)算的預(yù)期值相比絕對(duì)偏差縮小到±1以內(nèi),相比于圖4,相對(duì)偏差也明顯降低。
圖7 交叉驗(yàn)證法預(yù)測結(jié)果與蒙卡計(jì)算結(jié)果的對(duì)比Fig.7 The results comparison of cross-validation BP neural network and monte carlo
圖7藍(lán)色點(diǎn)為訓(xùn)練樣本劑量值D蒙卡模擬計(jì)算的相對(duì)不確定度,BP神經(jīng)網(wǎng)絡(luò)預(yù)測偏差的變化趨勢和其有一致性,說明訓(xùn)練樣本自身映射關(guān)系的不確定度也是限制最終BP神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練精度的重要因素。
同樣利用前述330組驗(yàn)證樣本對(duì)交叉驗(yàn)證法獲得的網(wǎng)絡(luò)模型進(jìn)行泛化性能測試。劑量預(yù)測值與蒙卡計(jì)算值的比較如圖8所示,其相對(duì)偏差在-10.38%~16.68%之間;絕對(duì)偏差在-9.09~6.76之間。
圖8結(jié)果與圖5結(jié)果比較說明,交叉驗(yàn)證法二次訓(xùn)練獲得的新的神經(jīng)網(wǎng)絡(luò)對(duì)驗(yàn)證樣本劑量值的預(yù)測相對(duì)偏差有所減少,但絕對(duì)偏差有所擴(kuò)大。說明神經(jīng)網(wǎng)絡(luò)模型對(duì)訓(xùn)練樣本空間的偏差水平不代表全樣本空間,還需考慮其對(duì)驗(yàn)證樣本空間的偏差水平。盡管交叉驗(yàn)證法提高了訓(xùn)練樣本的預(yù)測精度,但對(duì)驗(yàn)證樣本的預(yù)測反而一定程度有所變差;某種程度上訓(xùn)練樣本偏差范圍控制的越小越可能容易導(dǎo)致過擬合,使得模型對(duì)全樣本的適應(yīng)性和泛化能力提高程度有限甚至下降。
圖8 驗(yàn)證樣本交叉驗(yàn)證法神經(jīng)網(wǎng)絡(luò)預(yù)測結(jié)果與蒙卡結(jié)果的偏差Fig.8 The results comparison of cross-validation BP neural network and monte carlo for verification samples
本文探索了BP神經(jīng)網(wǎng)絡(luò)方法用于多組分材料中子屏蔽效果快速預(yù)測的可行性,利用隨機(jī)構(gòu)造和蒙特卡羅計(jì)算的300組訓(xùn)練樣本能夠快速建立收斂性較好的神經(jīng)網(wǎng)絡(luò)模型,其對(duì)訓(xùn)練樣本的劑量值預(yù)測結(jié)果與蒙卡計(jì)算值基本吻合,絕對(duì)偏差整體能控制在±2以內(nèi)。而且該網(wǎng)絡(luò)模型對(duì)訓(xùn)練樣本之外構(gòu)造的驗(yàn)證樣本同樣有較好的泛化性,絕對(duì)偏差雖有所擴(kuò)大,但保持在-6.4~5.2之間。驗(yàn)證樣本的精度和偏差范圍原則上可看做是全樣本空間的精度和偏差范圍,因此從泛化能力和偏差分布看,該方法滿足基于遺傳算法的中子屏蔽材料優(yōu)化設(shè)計(jì)使用,可以為其劑量值評(píng)價(jià)函數(shù)提供快速計(jì)算模塊。
訓(xùn)練樣本數(shù)量是有限的,而樣本空間理論上無限大,提高計(jì)算精度和泛化能力是有限樣本下神經(jīng)網(wǎng)絡(luò)算法實(shí)現(xiàn)過程的主要目標(biāo)。采用交叉驗(yàn)證法進(jìn)行二次訓(xùn)練結(jié)果顯示,該方法獲得的網(wǎng)絡(luò)模型對(duì)訓(xùn)練樣本的計(jì)算精度有明顯提高,但對(duì)驗(yàn)證樣本的計(jì)算精度在一定程度有所變差。因此,限于訓(xùn)練樣本數(shù)量、分布以及自身不確定性等,樣本的擬合程度和泛化能力有一個(gè)平衡點(diǎn)。