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