陳永雷
(中路高科交通檢測檢驗(yàn)認(rèn)證有限公司,北京 100088)
改進(jìn)支持向量機(jī)是一種機(jī)器學(xué)習(xí)算法,是傳統(tǒng)支持向量機(jī)(SVM)的改進(jìn)版本,是一種用于分類和回歸分析的監(jiān)督學(xué)習(xí)算法。混凝土橋梁極限荷載是指在橋梁結(jié)構(gòu)所能承受的最大荷載或最大負(fù)載,超過這個荷載將導(dǎo)致橋梁結(jié)構(gòu)出現(xiàn)嚴(yán)重的破壞或崩潰。精準(zhǔn)預(yù)測基于改進(jìn)支持向量機(jī)的混凝土橋梁極限荷載,對于提高橋梁結(jié)構(gòu)的安全性、可維護(hù)性、可持續(xù)性具有重要意義,有助于保護(hù)公共安全,減少維護(hù)成本和資源浪費(fèi),為基礎(chǔ)設(shè)施領(lǐng)域的可持續(xù)發(fā)展作出貢獻(xiàn)。
對于混凝土橋梁的基本信息,需要收集包括橋梁的結(jié)構(gòu)類型、尺寸、建筑材料、建造年代、健康狀況等詳細(xì)信息,這些信息可以通過橋梁工程師的現(xiàn)場調(diào)查或者從橋梁管理系統(tǒng)的歷史記錄中獲取,還應(yīng)收集與橋梁使用和維護(hù)相關(guān)的歷史數(shù)據(jù),例如過去荷載情況、交通流量、維修記錄等。對于混凝土橋梁而言,極限荷載是一個重要的參數(shù),其大小取決于橋梁的結(jié)構(gòu)類型、尺寸、建筑材料等因素,同時也會受到荷載歷史的影響。荷載歷史的收集對于預(yù)測模型的準(zhǔn)確性至關(guān)重要,需要收集包括橋梁設(shè)計(jì)荷載、實(shí)際交通流量、最大單車重量、最大車流量等數(shù)據(jù),這些數(shù)據(jù)可以通過橋梁管理系統(tǒng)的記錄或者現(xiàn)場調(diào)查獲得。在完成數(shù)據(jù)收集后,需要對數(shù)據(jù)進(jìn)行預(yù)處理,包括數(shù)據(jù)清洗、缺失值填充、異常值處理等步驟[1]。
例如,對于數(shù)據(jù)缺失的情況,可以使用均值填充、中位數(shù)填充或者插值等方法來填充缺失值,對于異常值,可以通過Z-Score 方法或IQR 方法進(jìn)行處理,數(shù)據(jù)預(yù)處理的目標(biāo)是使數(shù)據(jù)更加準(zhǔn)確、完整和一致,以便更好地訓(xùn)練出預(yù)測模型。
將預(yù)處理后的數(shù)據(jù)用于改進(jìn)支持向量機(jī)的訓(xùn)練和測試,通常采用交叉驗(yàn)證方法進(jìn)行模型訓(xùn)練和測試,優(yōu)化模型的參數(shù)并驗(yàn)證模型的泛化能力,為混凝土橋梁的極限荷載預(yù)測建立一個可靠的改進(jìn)支持向量機(jī)模型[2]。
數(shù)據(jù)清洗的目的是刪除重復(fù)、無效或者錯誤的數(shù)據(jù),保證數(shù)據(jù)的質(zhì)量和準(zhǔn)確性,在混凝土橋梁極限荷載預(yù)測中,數(shù)據(jù)清洗需要刪除重復(fù)的記錄、修正錯誤的數(shù)據(jù)以及清除無關(guān)的數(shù)據(jù),例如,在收集橋梁荷載歷史數(shù)據(jù)時,需要刪除重復(fù)的荷載記錄以及與極限荷載預(yù)測無關(guān)的交通流量等數(shù)據(jù)。在混凝土橋梁極限荷載預(yù)測中,由于數(shù)據(jù)收集的難度和不可避免的疏忽,可能會出現(xiàn)缺失值。缺失值填充的目的是通過一定的方法,如均值填充、中位數(shù)填充或者插值等,填補(bǔ)缺失的值,保證數(shù)據(jù)的完整性和可靠性。例如,對于橋梁設(shè)計(jì)荷載等數(shù)據(jù)中出現(xiàn)的缺失值,可以使用均值填充方法,將缺失的值替換為該數(shù)據(jù)的平均值(表1)。異常值是指遠(yuǎn)離大多數(shù)數(shù)據(jù)的極端值,可能會對預(yù)測模型產(chǎn)生不利影響,異常值處理的目標(biāo)是檢測并處理異常值,以使得數(shù)據(jù)更加符合正態(tài)分布,提高模型的預(yù)測精度[3]。
表1 使用均值填充方法處理缺失值
支持向量機(jī)是一種二分類模型,通過尋找一個超平面,將不同類別的數(shù)據(jù)分隔開來。在混凝土橋梁極限荷載預(yù)測中,將過去荷載歷史和橋梁基本信息的組合作為輸入數(shù)據(jù),將極限荷載作為輸出數(shù)據(jù),通過訓(xùn)練找到一個能夠準(zhǔn)確預(yù)測極限荷載的超平面。為了提高支持向量機(jī)的性能,支持向量機(jī)使用核函數(shù)來計(jì)算數(shù)據(jù)向量的內(nèi)積,構(gòu)造出一個高維的特征空間。在混凝土橋梁極限荷載預(yù)測中,選擇不同的核函數(shù)進(jìn)行嘗試,如線性核、多項(xiàng)式核、徑向基核等,找出最優(yōu)的核函數(shù)。支持向量機(jī)中有許多參數(shù)需要調(diào)整,如懲罰參數(shù)C 和核函數(shù)參數(shù)等,在混凝土橋梁極限荷載預(yù)測中,使用交叉驗(yàn)證方法來選擇最優(yōu)的參數(shù)組合。通過網(wǎng)格搜索法對參數(shù)進(jìn)行調(diào)優(yōu),尋找最優(yōu)的參數(shù)組合。在混凝土橋梁極限荷載預(yù)測中,不同特征的量綱和尺度可能存在較大差異,這會對模型的性能產(chǎn)生不利影響,需要對輸入數(shù)據(jù)進(jìn)行歸一化處理,將所有特征縮放到[0,1]的范圍內(nèi),使模型更加穩(wěn)定和可靠。為了提高模型的預(yù)測性能,采用集成學(xué)習(xí)的方法如隨機(jī)森林、梯度提升等,將多個支持向量機(jī)模型進(jìn)行集成,獲得更好的預(yù)測結(jié)果。
在具體的實(shí)現(xiàn)中,采用Python 語言和常用的機(jī)器學(xué)習(xí)庫(如Scikit-learn、Libsvm 等)實(shí)現(xiàn)基于改進(jìn)支持向量機(jī)的混凝土橋梁極限荷載預(yù)測模型,讀取預(yù)處理后的數(shù)據(jù),將數(shù)據(jù)劃分為訓(xùn)練集和測試集,使用支持向量機(jī)對訓(xùn)練集進(jìn)行訓(xùn)練,根據(jù)選擇的核函數(shù)、參數(shù)優(yōu)化方法和集成學(xué)習(xí)方法來構(gòu)建模型。使用測試集對模型進(jìn)行評估和驗(yàn)證,結(jié)果如表2 所示[4]。
表2 使用改進(jìn)的支持向量機(jī)進(jìn)行混凝土橋梁極限荷載預(yù)測
在訓(xùn)練之前需要確定模型的參數(shù),如核函數(shù)類型、懲罰參數(shù)C 和核函數(shù)參數(shù)等。為了尋找到最優(yōu)的參數(shù)組合,采用交叉驗(yàn)證方法進(jìn)行參數(shù)調(diào)優(yōu)。交叉驗(yàn)證是一種常用的模型評估方法,通過將數(shù)據(jù)集分成k 個子集,每個子集作為驗(yàn)證集,其余的子集組合作為訓(xùn)練集,得到k 個模型性能的評估指標(biāo),根據(jù)評估指標(biāo)確定最優(yōu)的參數(shù)組合。在確定模型的參數(shù)之后,使用全部數(shù)據(jù)集進(jìn)行訓(xùn)練,得到最終的預(yù)測模型。在訓(xùn)練過程中,采用標(biāo)準(zhǔn)的支持向量機(jī)算法或集成學(xué)習(xí)方法,進(jìn)一步提高模型的預(yù)測性能,采用隨機(jī)森林或梯度提升等集成學(xué)習(xí)方法將多個支持向量機(jī)模型進(jìn)行集成,以獲得更好的預(yù)測結(jié)果(圖1)[5]。
圖1 集成學(xué)習(xí)方法
模型訓(xùn)練完成后,需要進(jìn)行驗(yàn)證以評估模型的性能,使用獨(dú)立的測試集或時間序列數(shù)據(jù)集進(jìn)行。在測試集中,隨機(jī)選擇一部分?jǐn)?shù)據(jù)作為測試集,將剩下的數(shù)據(jù)作為訓(xùn)練集,得到模型的預(yù)測性能指標(biāo),如準(zhǔn)確率、召回率、F1 值等,如果模型的性能指標(biāo)沒有達(dá)到預(yù)期要求,可以重新調(diào)整模型參數(shù)或者采用其他改進(jìn)方法進(jìn)行模型優(yōu)化。為了驗(yàn)證模型的泛化能力,使用時間序列數(shù)據(jù)集進(jìn)行驗(yàn)證,將數(shù)據(jù)集按照時間順序分成訓(xùn)練集和測試集,訓(xùn)練集用于訓(xùn)練模型,測試集用于評估模型的泛化能力,在測試過程中,應(yīng)選擇合適的時間窗口和時間序列預(yù)測方法,確保測試結(jié)果的準(zhǔn)確性和可靠性。根據(jù)模型驗(yàn)證的結(jié)果,對模型的性能和泛化能力進(jìn)行評估,如果模型的性能指標(biāo)達(dá)到了預(yù)期要求,并且具有較好的泛化能力,則可以將其應(yīng)用于實(shí)際的混凝土橋梁極限荷載預(yù)測中[6]。
對于給定的混凝土橋梁,需要收集相關(guān)的基本數(shù)據(jù),包括橋梁的結(jié)構(gòu)類型、尺寸、建筑材料、建造年代等,這些數(shù)據(jù)可以通過橋梁管理部門的數(shù)據(jù)庫或者現(xiàn)場調(diào)查獲得。使用收集到的橋梁基本數(shù)據(jù)和相應(yīng)的荷載歷史數(shù)據(jù)對改進(jìn)支持向量機(jī)模型進(jìn)行訓(xùn)練,通過訓(xùn)練,得到一個能夠準(zhǔn)確預(yù)測極限荷載的超平面參數(shù)[7]。在預(yù)測過程中,對于給定的混凝土橋梁,需要收集相關(guān)的實(shí)時數(shù)據(jù),包括橋梁的實(shí)際荷載情況、交通流量等,這些數(shù)據(jù)可以通過橋梁管理部門的監(jiān)測系統(tǒng)或現(xiàn)場調(diào)查獲得,利用收集到的實(shí)時數(shù)據(jù)和訓(xùn)練得到的超平面參數(shù),可以采用以下步驟對混凝土橋梁的極限荷載進(jìn)行預(yù)測:對實(shí)時數(shù)據(jù)進(jìn)行預(yù)處理,包括數(shù)據(jù)清洗、缺失值填充和異常值處理等,以保證數(shù)據(jù)的準(zhǔn)確性和可靠性;將預(yù)處理后的實(shí)時數(shù)據(jù)輸入已經(jīng)訓(xùn)練好的改進(jìn)支持向量機(jī)模型中;模型自動計(jì)算輸入數(shù)據(jù)與訓(xùn)練數(shù)據(jù)的相似度,并輸出相應(yīng)的極限荷載預(yù)測值[8]。圖2 為橋梁預(yù)測極限荷載示意。
圖2 橋梁預(yù)測極限荷載
本研究通過改進(jìn)支持向量機(jī)模型,成功提高了混凝土橋梁極限荷載的預(yù)測精度,對于確保橋梁結(jié)構(gòu)的安全性和可靠性具有重要意義。未來相關(guān)人士應(yīng)繼續(xù)優(yōu)化模型,考慮更多的因素,進(jìn)一步提高混凝土橋梁極限荷載的預(yù)測準(zhǔn)確性,為工程實(shí)踐和維護(hù)提供更好的支持,進(jìn)而延長混凝土橋梁的使用壽命,降低維護(hù)成本,提高基礎(chǔ)設(shè)施的可持續(xù)性。