李 俊,王 康,張 群
(中國(guó)電建集團(tuán)西北勘測(cè)設(shè)計(jì)研究院有限公司,西安 710065)
大壩變形監(jiān)測(cè)是大壩安全監(jiān)控的重要組成部分,建立精確的大壩變形預(yù)測(cè)模型對(duì)實(shí)現(xiàn)大壩安全狀態(tài)預(yù)警及診斷分析有著重要意義。近年來(lái),機(jī)器學(xué)習(xí)算法在大壩變形預(yù)測(cè)中的成果廣泛應(yīng)用于大壩安全監(jiān)控領(lǐng)域,大都取得了較好的效果。范新宇等[1]運(yùn)用BP 神經(jīng)網(wǎng)絡(luò)模型對(duì)某庫(kù)區(qū)高邊坡進(jìn)行變形預(yù)測(cè)分析,應(yīng)用效果良好;何明等[2]建立了基于最小二乘支持向量機(jī)的大壩變形預(yù)測(cè)模型,獲得了較高的預(yù)測(cè)精度。但是,由于大壩變形過(guò)程具有高度非線性、動(dòng)態(tài)性,且受多種因素相互影響等特點(diǎn),導(dǎo)致支持向量機(jī)模型很難確定合適的核函數(shù),神經(jīng)網(wǎng)絡(luò)模型容易過(guò)學(xué)習(xí)等問(wèn)題[3-5]。
關(guān)聯(lián)規(guī)則是一種重要的數(shù)據(jù)挖掘手段[6],是形如X→Y的蘊(yùn)涵式,即事件由X推導(dǎo)出Y的簡(jiǎn)稱(chēng)。其中,X和Y分別稱(chēng)為關(guān)聯(lián)規(guī)則的前端和后端,同時(shí)該事件有兩個(gè)基本屬性,即支持度和置信度。Apriori是一種經(jīng)典的關(guān)聯(lián)規(guī)則算法,用于挖掘大數(shù)據(jù)中潛在的事物聯(lián)系。該算法采用自底向上的遍歷思想逐級(jí)挖掘,以確保關(guān)聯(lián)規(guī)則的準(zhǔn)確性。周發(fā)超等[7]針對(duì)經(jīng)典Apriori算法執(zhí)行效率低的缺點(diǎn),引進(jìn)TID標(biāo)識(shí)碼使得算法效率大大提高;李漢巨等[8]廣泛收集自然災(zāi)害數(shù)據(jù),并利用改進(jìn)的關(guān)聯(lián)規(guī)則算法從中挖掘出自然災(zāi)害事件的關(guān)聯(lián)規(guī)則,實(shí)現(xiàn)對(duì)自然災(zāi)害事件的預(yù)測(cè)。
本文以大壩實(shí)測(cè)數(shù)據(jù)為基礎(chǔ),將大壩變形影響因子(上游水位、溫度等)作為關(guān)聯(lián)規(guī)則的前端,大壩變形量為后端,利用Apriori算法進(jìn)行關(guān)聯(lián)規(guī)則的挖掘,建立關(guān)聯(lián)規(guī)則庫(kù),然后將產(chǎn)生的關(guān)聯(lián)規(guī)則用于建立大壩變形預(yù)判模型,實(shí)現(xiàn)大壩變形的準(zhǔn)確預(yù)測(cè),為分析大壩的運(yùn)行性態(tài)奠定基礎(chǔ)。
為了將關(guān)聯(lián)規(guī)則用于大壩變形性態(tài)預(yù)判,對(duì)于形如X→Y蘊(yùn)涵式,其后端Y必須是變形量,其前端X應(yīng)為大壩變形的影響因子。根據(jù)經(jīng)典的大壩變形統(tǒng)計(jì)模型[9]:
(1)
公式(1)中:Hi為上游水深的i次方;Ti為測(cè)點(diǎn)前i天每天的壩體溫度平均值;θ為蓄水初期到目前的天數(shù)除以100。
由于H、H2、H3、H4之間有確定性關(guān)系,所以關(guān)聯(lián)規(guī)則挖掘時(shí)僅選擇H作為影響因子;Ti表示測(cè)點(diǎn)前i天的壩體溫度平均值,選取測(cè)點(diǎn)當(dāng)天和前3、10、30、60 d的壩體溫度平均值作為影響因子;關(guān)于時(shí)效變形,采用不斷更新挖掘數(shù)據(jù)的方法,保證關(guān)聯(lián)規(guī)則庫(kù)的新陳代謝,可以最大程度地消除時(shí)效變形的影響。最終確定關(guān)聯(lián)規(guī)則的前端為6個(gè)影響因子:H、T、T3、T10、T30、T60,考慮到溫度影響因子過(guò)多使得預(yù)測(cè)難度增加的原因,關(guān)聯(lián)規(guī)則的前端要求可以降低為:H和至少任意3個(gè)溫度影響因子。
關(guān)聯(lián)度在數(shù)學(xué)上是指兩函數(shù)相似的程度,是表征兩個(gè)事物之間的關(guān)聯(lián)程度[10]。本文以影響因子與大壩變形量間的關(guān)聯(lián)度為權(quán)重指標(biāo),建立大壩變形性態(tài)關(guān)聯(lián)規(guī)則。上游水位H、溫度T、前i天平均溫度 ,Ti(i=3,10,30,60)與變形量D之間的關(guān)聯(lián)度:
假設(shè)有m組監(jiān)測(cè)數(shù)據(jù),構(gòu)成的影響因子矩陣i:
(2)
公式(2)中:i1j,i2j,i3j,i4j,i5j,i6j(j=1,2,…,m)分別表示6個(gè)影響因子序列。
變形量矩陣d:
d=(d1d2…dm)
(3)
首先對(duì)影響因子矩陣i和變形量矩陣d進(jìn)行歸一化處理,得到無(wú)量綱矩陣I和D。則關(guān)聯(lián)系數(shù)可按下式計(jì)算:
(i=1,2,…,6)
(4)
公式(4)中:ρ為分辨系數(shù),通常取0.5。
關(guān)聯(lián)系數(shù)的均值即為影響因子與變形量之間的關(guān)聯(lián)度:
(5)
Apriori是一種常用的關(guān)聯(lián)規(guī)則挖掘算法。在算法執(zhí)行前,用戶(hù)應(yīng)先設(shè)定2個(gè)閾值:最小支持度和最小置信度。支持度是指該規(guī)則在數(shù)據(jù)庫(kù)中出現(xiàn)的次數(shù)或頻率,置信度是指該規(guī)則在數(shù)據(jù)庫(kù)中的準(zhǔn)確性。所有支持度大于最小支持度的項(xiàng)集稱(chēng)為頻繁項(xiàng)集,置信度大于最小置信度的關(guān)聯(lián)規(guī)則稱(chēng)為強(qiáng)關(guān)聯(lián)規(guī)則。
首先挖掘?qū)崪y(cè)數(shù)據(jù)中的頻繁項(xiàng)集,然后將頻繁項(xiàng)集推導(dǎo)成關(guān)聯(lián)規(guī)則。利用Apriori算法產(chǎn)生頻繁項(xiàng)集過(guò)程主要分為連接和剪枝兩步。首先,將包含i個(gè)變量的項(xiàng)集稱(chēng)為i項(xiàng)集,將包含i個(gè)變量的頻繁項(xiàng)集稱(chēng)為i頻繁項(xiàng)集,掃描所有實(shí)測(cè)資料,產(chǎn)生候選i項(xiàng)集,根據(jù)最小支持度,產(chǎn)生1-頻繁項(xiàng)集。然后由1-頻繁項(xiàng)集自連接產(chǎn)生2-項(xiàng)集,對(duì)2-項(xiàng)集剪枝處理,即剔除2-項(xiàng)集里面有非空子集是非頻繁項(xiàng)集的項(xiàng),再根據(jù)最小支持度,產(chǎn)生2-頻繁項(xiàng)集。重復(fù)以上步驟,直到得出所有頻繁項(xiàng)集。然后將得到的頻繁項(xiàng)集推理成關(guān)聯(lián)規(guī)則,以4-頻繁項(xiàng)集(H,T,T3,D)為例,其中:H事件為當(dāng)天上游水位取值在區(qū)間[a,b]內(nèi);T事件為測(cè)點(diǎn)當(dāng)天溫度取值在區(qū)間[c,d]內(nèi);T3事件為測(cè)點(diǎn)前3 d溫度均值在區(qū)間[e,f]內(nèi),D事件為測(cè)點(diǎn)當(dāng)天變形取值在區(qū)間[g,h]內(nèi)。則可推理出關(guān)聯(lián)規(guī)則:
H、T、T3→D
則該關(guān)聯(lián)規(guī)則的支持度和置信度分別為[5]:
Support(H、T、T3→D) =P((H、T、T3)∪D)
(6)
confidence(H、T、T3→D) =P((H、T、T3)|D)
(7)
該關(guān)聯(lián)規(guī)則可以表述為:當(dāng)上游水位H、當(dāng)天溫度T、前3d平均溫度T3分別在區(qū)間[a,b]、[c,d]、[e,f]內(nèi)時(shí),變形量有P((H、T、T3)∪D) 的可能性出現(xiàn)在區(qū)間[g,h]內(nèi),且這種情況出現(xiàn)的頻率為P((H、T、T3)|D) 。
在對(duì)監(jiān)測(cè)數(shù)據(jù)進(jìn)行關(guān)聯(lián)規(guī)則挖掘前,用戶(hù)需要設(shè)定2個(gè)重要的閾值,即最小支持度和最小置信度。然而在利用關(guān)聯(lián)規(guī)則進(jìn)行大壩變形量的預(yù)測(cè)時(shí),關(guān)聯(lián)規(guī)則的前端包含影響因子的數(shù)量并不是固定的,如果按照常規(guī)方法,將最小支持度和最小置信度設(shè)置成定值,那么會(huì)導(dǎo)致影響因子數(shù)量較少時(shí),預(yù)測(cè)精度偏低。鑒于此,本文提出基于關(guān)聯(lián)度的融合支持度和融合置信度的概念,用于提高關(guān)聯(lián)規(guī)則的預(yù)測(cè)精度。
單個(gè)影響因子與變形量之間的關(guān)聯(lián)度可按公式(5)計(jì)算得到,那么n個(gè)影響因子的融合關(guān)聯(lián)度可表示為:
(8)
設(shè)定當(dāng)全部6個(gè)影響因子為前端時(shí)初始最小支持度和初始最小置信度為Sup6和Conf6,那么任意n個(gè)影響因子作為關(guān)聯(lián)規(guī)則的前端時(shí),相應(yīng)的融合最小支持度Supn和融合最小置信度Confn為:
(9)
(10)
在對(duì)不同影響因子進(jìn)行關(guān)聯(lián)規(guī)則挖掘時(shí),采用相應(yīng)的融合最小支持度和融合最小置信度作為Apriori算法的最小支持度和最小置信度,以改善關(guān)聯(lián)規(guī)則的預(yù)測(cè)性能。
根據(jù)大壩上某一點(diǎn)的變形監(jiān)測(cè)資料統(tǒng)計(jì)分析,以該點(diǎn)變形量的歷史最大值σmax為基礎(chǔ),結(jié)合標(biāo)準(zhǔn)正態(tài)分布,確定大壩變形性態(tài)的臨界值系數(shù)。
(11)
公式(11)中:臨界值σi的系數(shù)擬定思路為:第一、二、三、四臨界值由標(biāo)準(zhǔn)正態(tài)分布密度函數(shù)橫軸分別在(-∞,2.5]、(-∞,2]、(-∞,1.5]、(-∞,1]范圍內(nèi)面積所對(duì)應(yīng)的大壩變形處于安全狀態(tài)的概率,如圖1。
4個(gè)臨界值系數(shù)將大壩變形劃分為5種性態(tài),即非常穩(wěn)定、穩(wěn)定、基本穩(wěn)定、異常、失常。同時(shí),對(duì)于上游水位、溫度也采用相同的臨界值系數(shù)進(jìn)行區(qū)間劃分。
將用關(guān)聯(lián)度改進(jìn)的融合支持度和融合置信度作為Apriori算法挖掘時(shí)的最小支持度和最小置信度,對(duì)不同類(lèi)型的關(guān)聯(lián)規(guī)則前端進(jìn)行挖掘,然后將產(chǎn)生的強(qiáng)關(guān)聯(lián)規(guī)則用于預(yù)測(cè),建立預(yù)判模型。具體實(shí)現(xiàn)過(guò)程如圖2,主要步驟如下:
(1) 將監(jiān)測(cè)數(shù)據(jù)離散化處理。Apriori算法不具備處理連續(xù)型數(shù)據(jù)的能力,因此在進(jìn)行關(guān)聯(lián)規(guī)則挖掘前,應(yīng)先將變形量和影響因子的取值根據(jù)上述4個(gè)臨界值系數(shù)劃分為5個(gè)區(qū)間,用區(qū)間編號(hào)代替變形量和影響因子的具體值;
(2) 計(jì)算影響因子與變形量之間的關(guān)聯(lián)度。關(guān)聯(lián)度的計(jì)算方法可按公式(4)和公式(5)計(jì)算;
(3) 計(jì)算不同關(guān)聯(lián)規(guī)則前端對(duì)應(yīng)的融合最小支持度和融合最小置信度。本文選取6個(gè)影響因子,其中包含5個(gè)溫度影響因子,若從這個(gè)5個(gè)溫度影響因子中隨機(jī)選取至少3個(gè),共有16種不同的組合。給定包含全部影響因子的融合最小支持度Sup6和融合最小置信度Conf6,可按公式(8)、(9)和公式(10),分別計(jì)算各不同組合關(guān)聯(lián)規(guī)則前端的融合最小支持度和融合最小置信度;
(4) 關(guān)聯(lián)規(guī)則挖掘。對(duì)不同的關(guān)聯(lián)規(guī)則前端,利用Apriori算法對(duì)離散化的監(jiān)測(cè)數(shù)據(jù)在融合最小支持度和融合最小置信度2個(gè)閾值下進(jìn)行關(guān)聯(lián)規(guī)則的挖掘,將挖掘出來(lái)的關(guān)聯(lián)規(guī)則構(gòu)成關(guān)聯(lián)規(guī)則庫(kù),用于大壩變形性態(tài)預(yù)判;
(5) 利用準(zhǔn)確關(guān)聯(lián)規(guī)則預(yù)判。本模型在預(yù)測(cè)時(shí),關(guān)聯(lián)規(guī)則前端的部分影響因子(如H、T)需要根據(jù)水文和天氣預(yù)報(bào)來(lái)確定。因受制于水文及天氣預(yù)報(bào)精度的影響,本模型僅對(duì)未來(lái)3 d的大壩變形進(jìn)行預(yù)測(cè)。如H(2)、T(4)、T3(3)、T30(3)→D(2)的關(guān)聯(lián)規(guī)則,當(dāng)H、T、T3、T30分別處在區(qū)間2、4、3、3時(shí),我們可以推斷大壩變形量D處于區(qū)間2,大壩變形處于穩(wěn)定狀態(tài),并同時(shí)給出預(yù)測(cè)可信度,即這條關(guān)聯(lián)規(guī)則的置信度;
(6) 利用近似關(guān)聯(lián)規(guī)則預(yù)判。真正進(jìn)行預(yù)測(cè)時(shí),會(huì)發(fā)現(xiàn)有時(shí)候前端影響因子所處的區(qū)間組合超出關(guān)聯(lián)規(guī)則庫(kù)的檢索范圍。此時(shí),應(yīng)采用與之所處區(qū)間最相近的關(guān)聯(lián)規(guī)則進(jìn)行預(yù)測(cè),利用近似關(guān)聯(lián)規(guī)則預(yù)測(cè)需符合以下要求:① 近似關(guān)聯(lián)規(guī)則的前端應(yīng)盡可能包含更多的影響因子;② 近似關(guān)聯(lián)規(guī)則前端影響因子所處區(qū)間的性態(tài)級(jí)別應(yīng)不低于影響因子實(shí)際處所區(qū)間;③ 近似關(guān)聯(lián)規(guī)則前端單個(gè)影響因子所處區(qū)間的性態(tài)級(jí)別最多不超過(guò)實(shí)際所處區(qū)間1級(jí);④ 近似關(guān)聯(lián)規(guī)則前端最多只能包含2個(gè)近似影響因子;⑤ 若在以上近似條件下仍然沒(méi)有可用關(guān)聯(lián)規(guī)則,應(yīng)特別指出;
(7) 模型評(píng)價(jià)。將模型預(yù)測(cè)結(jié)果與實(shí)際監(jiān)測(cè)數(shù)據(jù)對(duì)比,分別計(jì)算未來(lái)1、2、3 d的預(yù)測(cè)準(zhǔn)確度。
本文以某雙支墩大頭壩第四壩段壩頂水平位移(PL4)為預(yù)測(cè)對(duì)象。本文選取2018年1月1日至2020年11月16日共計(jì)1051組數(shù)據(jù)用于關(guān)聯(lián)度的計(jì)算和關(guān)聯(lián)規(guī)則的挖掘,測(cè)點(diǎn)變形量和影響因子過(guò)程線如圖3所示。由于該工程壩型的特殊性,關(guān)于氣溫因子的選擇需做如下討論:該工程共有3處氣溫測(cè)點(diǎn),分別為壩上氣溫、壩下氣溫和垛內(nèi)氣溫。參考文獻(xiàn)[9]中指出,對(duì)于有壩體內(nèi)部溫度監(jiān)測(cè)儀器的,應(yīng)優(yōu)先選擇壩體內(nèi)部溫度作為影響因子。雖然垛內(nèi)氣溫不能完全代表壩體溫度,但可以用考慮滯后效應(yīng)的垛內(nèi)氣溫來(lái)表征壩體溫度,所以本案例中選用垛內(nèi)氣溫作為影響因子。
利用公式(5)計(jì)算影響因子H、T、T3、T10、T30、T60與變形量D的關(guān)聯(lián)度分別為0.5852、0.5473、0.5512、0.553、0.5629、0.5759。
經(jīng)過(guò)反復(fù)試驗(yàn)并結(jié)合工程實(shí)際,本文初步確定當(dāng)全部6個(gè)影響因子為前端時(shí)初始最小支持度和初始最小置信度為Sup6=2和Conf6=0.6,利用公式(9)和公式(10)分別計(jì)算不同關(guān)聯(lián)規(guī)則前端的融合最小支持度和融合最小置信度,結(jié)果見(jiàn)表1。
表1 不同關(guān)聯(lián)規(guī)則前端的融合最小支持度和融合最小置信度
將影響因子組成的16種不同關(guān)聯(lián)規(guī)則前端和變形量作為Apriori算法的輸入矩陣,然后輸入相對(duì)應(yīng)的融合最小支持度和融合最小置信度進(jìn)行關(guān)聯(lián)規(guī)則的挖掘,共挖掘出307條有用關(guān)聯(lián)規(guī)則。
考慮到絕大多數(shù)時(shí)間大壩都處于較安全狀態(tài),無(wú)法較為全面地利用關(guān)聯(lián)規(guī)則,所以本文選取1 a當(dāng)中變形量較大的5—9月份的監(jiān)測(cè)數(shù)據(jù)作為檢驗(yàn)集進(jìn)行模型精度檢驗(yàn)。本文選取2020年5月16日至9月15日共計(jì)123組數(shù)據(jù)進(jìn)行預(yù)測(cè),將預(yù)測(cè)結(jié)果與實(shí)測(cè)值繪制成熱點(diǎn)如圖4所示,圖中橫坐標(biāo)表示檢驗(yàn)集時(shí)間軸,縱坐標(biāo)為3種不同預(yù)測(cè)方式和實(shí)測(cè)值下的測(cè)點(diǎn)變形性態(tài),顏色越深,表示測(cè)點(diǎn)變形所處的形態(tài)等級(jí)越高,預(yù)警級(jí)別也越高。此圖可以較為直觀地表現(xiàn)出測(cè)點(diǎn)的變形性態(tài)等級(jí)和預(yù)測(cè)結(jié)果對(duì)比。
表2 關(guān)聯(lián)規(guī)則庫(kù)(部分)
從圖4可以看出提前越長(zhǎng)時(shí)間預(yù)測(cè),預(yù)測(cè)結(jié)果出錯(cuò)率越高。將上述3組預(yù)測(cè)出錯(cuò)結(jié)果匯總見(jiàn)表3,從該出錯(cuò)明細(xì)表可以看出,該模型具有較好的預(yù)測(cè)精度,預(yù)測(cè)結(jié)果較為理想。
表3 預(yù)測(cè)結(jié)果出錯(cuò)明細(xì)
本文所建立的模型是基于Apriori算法對(duì)監(jiān)測(cè)資料進(jìn)行關(guān)聯(lián)規(guī)則的挖掘,并用關(guān)聯(lián)度改進(jìn)算法中的2個(gè)關(guān)鍵閾值,同時(shí)提出利用近似關(guān)聯(lián)規(guī)則預(yù)測(cè)的基本要求,以實(shí)現(xiàn)大壩變形的預(yù)測(cè)。形成結(jié)論如下:
(1) 模型根據(jù)經(jīng)典的統(tǒng)計(jì)模型選定影響因子作為關(guān)聯(lián)規(guī)則的前端,并用關(guān)聯(lián)度對(duì)傳統(tǒng)Apriori算法進(jìn)行改進(jìn),具有很強(qiáng)的理論基礎(chǔ),可靠性較高。
(2) 由于Apriori算法從數(shù)據(jù)層面出發(fā),進(jìn)行深度挖掘,即使模型在影響因子、閾值選擇方面出現(xiàn)一定的不精確,挖掘出來(lái)的關(guān)聯(lián)規(guī)則仍然滿足最小支持度和最小置信度的要求,所以挖掘出來(lái)的關(guān)聯(lián)規(guī)則還是具有一定的可靠性,模型容錯(cuò)率很高。
(3) 將本模型應(yīng)用到某雙支墩大頭壩,獲得了較高的預(yù)測(cè)精度,從上述關(guān)聯(lián)規(guī)則預(yù)測(cè)及評(píng)價(jià)中可以看出,當(dāng)利用關(guān)聯(lián)規(guī)則提前1 d預(yù)測(cè)時(shí),出錯(cuò)率僅為4.07%,大壩變形性態(tài)誤差級(jí)別不超過(guò)一級(jí),且在高危變形性態(tài)時(shí)間段內(nèi)沒(méi)有出現(xiàn)預(yù)判錯(cuò)誤,說(shuō)明將其應(yīng)用于大壩變形預(yù)測(cè)是可行、有效的。