徐勝強(qiáng)
(河北省邯鄲水文勘測(cè)研究中心,河北 邯鄲 056001)
水質(zhì)是水資源管理和保護(hù)的重要指標(biāo)之一,對(duì)于保障人類健康和生態(tài)環(huán)境的可持續(xù)發(fā)展具有重要意義。邯鄲岳城水庫位于磁縣與安陽縣兩縣相交界處,是該地區(qū)重要的水源地和水利工程,水質(zhì)的評(píng)價(jià)和預(yù)測(cè)對(duì)于水庫管理和保護(hù)至關(guān)重要。傳統(tǒng)的水質(zhì)評(píng)價(jià)和預(yù)測(cè)方法主要依賴于統(tǒng)計(jì)分析和經(jīng)驗(yàn)?zāi)P?對(duì)于復(fù)雜的非線性關(guān)系和時(shí)空變化規(guī)律的揭示存在一定的局限性。因此,本研究基于BP 神經(jīng)網(wǎng)絡(luò)技術(shù),旨在提供一種新的、準(zhǔn)確的水質(zhì)評(píng)價(jià)和預(yù)測(cè)方法,通過對(duì)水質(zhì)監(jiān)測(cè)數(shù)據(jù)的分析和處理,可以建立起水質(zhì)與相關(guān)因素之間的復(fù)雜非線性關(guān)系,實(shí)現(xiàn)對(duì)水質(zhì)的準(zhǔn)確評(píng)價(jià)和未來趨勢(shì)的預(yù)測(cè)。
BP 神經(jīng)網(wǎng)絡(luò),即反向傳播神經(jīng)網(wǎng)絡(luò),是一種常用的人工神經(jīng)網(wǎng)絡(luò)模型,用于解決分類和回歸等問題[1]。它基于誤差反向傳播算法,通過不斷調(diào)整網(wǎng)絡(luò)參數(shù),使得網(wǎng)絡(luò)的輸出與期望值盡可能接近。
第一,神經(jīng)元模型:BP 神經(jīng)網(wǎng)絡(luò)由多個(gè)神經(jīng)元(或稱為節(jié)點(diǎn))組成。每個(gè)神經(jīng)元接收來自上一層神經(jīng)元的輸入,通過激活函數(shù)處理后產(chǎn)生輸出。
第二,前向傳播:BP 神經(jīng)網(wǎng)絡(luò)采用前向傳播的方式,將輸入信號(hào)通過網(wǎng)絡(luò)的各層傳遞,直到輸出層產(chǎn)生最終的輸出。
第三,權(quán)重調(diào)整:BP 神經(jīng)網(wǎng)絡(luò)通過誤差反向傳播算法進(jìn)行訓(xùn)練。首先,根據(jù)輸入樣本的真實(shí)輸出和網(wǎng)絡(luò)當(dāng)前輸出之間的誤差,計(jì)算輸出層神經(jīng)元的誤差[2]。然后,將誤差通過網(wǎng)絡(luò)的連接權(quán)重反向傳播到隱藏層和輸入層的神經(jīng)元,根據(jù)誤差大小調(diào)整權(quán)重。這樣,網(wǎng)絡(luò)逐漸調(diào)整權(quán)重,使得輸出逼近期望值。
第四,激活函數(shù):在BP 神經(jīng)網(wǎng)絡(luò)中的神經(jīng)元中,所用的激活函數(shù)一般使用Sigmoid 函數(shù),對(duì)神經(jīng)元的輸入進(jìn)行輸出轉(zhuǎn)換。Sigmoid 函數(shù)具有連續(xù)、可導(dǎo)的特性,適合用于誤差反向傳播算法。
BP 神經(jīng)網(wǎng)絡(luò)的模型結(jié)構(gòu)分為三層。其中,輸入層用于接收外部輸入的特征向量或樣本數(shù)據(jù),每個(gè)輸入節(jié)點(diǎn)對(duì)應(yīng)一個(gè)特征或?qū)傩?輸入層節(jié)點(diǎn)的數(shù)量取決于輸入數(shù)據(jù)的維度;隱藏層是位于輸入層和輸出層之間的一層或多層神經(jīng)元組成的層,隱藏層的節(jié)點(diǎn)數(shù)量和層數(shù)可以根據(jù)問題的復(fù)雜程度和需求進(jìn)行設(shè)置,隱藏層的主要功能是進(jìn)行特征提取和數(shù)據(jù)轉(zhuǎn)換,通過非線性激活函數(shù)將輸入信號(hào)轉(zhuǎn)化為更高級(jí)的特征表示;輸出層是神經(jīng)網(wǎng)絡(luò)的最后一層,將隱藏層的輸出轉(zhuǎn)化為最終的輸出結(jié)果,輸出層的節(jié)點(diǎn)數(shù)量通常根據(jù)問題的要求來決定,例如分類問題中,輸出節(jié)點(diǎn)的數(shù)量可以對(duì)應(yīng)不同的類別。
BP 神經(jīng)網(wǎng)絡(luò)的優(yōu)點(diǎn)是可以解決非線性問題,具有較強(qiáng)的逼近能力和泛化能力。它可以通過訓(xùn)練過程自動(dòng)學(xué)習(xí)數(shù)據(jù)的特征和規(guī)律,并進(jìn)行模式識(shí)別和預(yù)測(cè)。需要注意的是,BP 神經(jīng)網(wǎng)絡(luò)存在訓(xùn)練速度慢等問題,為此,相關(guān)研究人員對(duì)算法和結(jié)構(gòu)進(jìn)行了一定的改進(jìn),如改進(jìn)的激活函數(shù)、正則化技術(shù)、卷積神經(jīng)網(wǎng)絡(luò)等??傊?BP 神經(jīng)網(wǎng)絡(luò)是以誤差反向傳播算法為基礎(chǔ)的網(wǎng)絡(luò)模型,通過調(diào)整網(wǎng)絡(luò)參數(shù)來實(shí)現(xiàn)輸入與期望輸出的接近,適用于各種分類和回歸問題。
收集與水庫水質(zhì)相關(guān)的監(jiān)測(cè)數(shù)據(jù),包括水溫、pH 值、溶解氧、濁度、總磷、總氮等指標(biāo),數(shù)據(jù)可以通過水質(zhì)監(jiān)測(cè)站、傳感器等設(shè)備獲取,也可以通過歷史記錄、實(shí)地采樣等方式獲取[3]。對(duì)收集到的數(shù)據(jù)進(jìn)行篩選,將其中的異常或者缺失的數(shù)值去除,減少干擾。異常值可以通過統(tǒng)計(jì)方法或?qū)I(yè)知識(shí)進(jìn)行識(shí)別和處理,缺失值可以通過插值或刪除等方法進(jìn)行處理。
第一,特征提?。簭脑嫉乃|(zhì)監(jiān)測(cè)數(shù)據(jù)中提取與水庫水質(zhì)評(píng)價(jià)和檢測(cè)相關(guān)的特征。特征提取的目標(biāo)是從原始數(shù)據(jù)中提取出最能反映水質(zhì)狀態(tài)和變化的信息。常用的特征提取方法包括統(tǒng)計(jì)、頻域、時(shí)域等特征的提取等。統(tǒng)計(jì)特征提取是計(jì)算監(jiān)測(cè)數(shù)據(jù)的均值、方差、最大值、最小值等統(tǒng)計(jì)指標(biāo),這些統(tǒng)計(jì)特征可以反映水質(zhì)數(shù)據(jù)的分布和變化情況。頻域特征提取是通過對(duì)水質(zhì)數(shù)據(jù)進(jìn)行傅里葉變換或小波變換,提取頻域信息,如頻譜能量、頻帶特征等,這些頻域特征可以反映水質(zhì)數(shù)據(jù)的周期性和頻率特征。時(shí)域特征提取是利用時(shí)序信息提取水質(zhì)數(shù)據(jù)的動(dòng)態(tài)特征,如趨勢(shì)分析、自相關(guān)系數(shù)等,這些時(shí)域特征可以反映水質(zhì)數(shù)據(jù)的變化趨勢(shì)和關(guān)聯(lián)性。
第二,特征選擇:從提取的特征中選擇對(duì)水質(zhì)評(píng)價(jià)和檢測(cè)具有重要意義的特征。特征選擇的目標(biāo)是減少特征維度,提高模型的訓(xùn)練效果和泛化能力。常用的特征選擇方法包括相關(guān)性分析、信息增益、主成分分析等。相關(guān)性分析是計(jì)算特征與水質(zhì)指標(biāo)之間的相關(guān)系數(shù)或相關(guān)性指標(biāo),篩選出與目標(biāo)水質(zhì)指標(biāo)相關(guān)性較高的特征[4]。信息增益是通過信息熵和條件熵的計(jì)算,評(píng)估特征對(duì)目標(biāo)水質(zhì)指標(biāo)的信息增益,選擇具有較高信息增益的特征。主成分分析是將原始特征通過線性變換,得到一組新的主成分,選擇對(duì)目標(biāo)水質(zhì)指標(biāo)解釋能力較強(qiáng)的主成分作為特征。
對(duì)選擇的特征使用最大-最小歸一化進(jìn)行歸一化處理,將各特征之間的量綱差別進(jìn)行消除。將標(biāo)準(zhǔn)化后的數(shù)據(jù)集進(jìn)行劃分,劃分為訓(xùn)練集、驗(yàn)證集和測(cè)試集三個(gè)數(shù)據(jù)集,通常用于各集的數(shù)據(jù)分別占總數(shù)據(jù)的70%、20%和10%的比例。劃分?jǐn)?shù)據(jù)集的目的是為了評(píng)估模型的泛化能力和預(yù)測(cè)效果,并避免過擬合和欠擬合的問題。
根據(jù)問題的定義和研究目標(biāo),確定BP 神經(jīng)網(wǎng)絡(luò)的輸入變量和輸出變量。輸入變量通常為水質(zhì)監(jiān)測(cè)指標(biāo),輸出變量可以是水質(zhì)的分類結(jié)果、預(yù)測(cè)值等。將輸入和輸出變量進(jìn)行編碼,使其適合于BP 神經(jīng)網(wǎng)絡(luò)的輸入和輸出格式。常用的編碼方法包括二進(jìn)制編碼、獨(dú)熱編碼等。對(duì)數(shù)據(jù)集進(jìn)行平衡處理,以保證訓(xùn)練集、驗(yàn)證集和測(cè)試集中各類別數(shù)據(jù)的數(shù)量大致相等。對(duì)于不平衡數(shù)據(jù)集,可以采用欠采樣、過采樣等方法進(jìn)行處理。
對(duì)BP 神經(jīng)網(wǎng)絡(luò)的輸入層、輸出層以及隱藏層的結(jié)點(diǎn)數(shù)量以及各自權(quán)重進(jìn)行明確,隱藏層的節(jié)點(diǎn)數(shù)和層數(shù)的確定需要根據(jù)問題的復(fù)雜度和數(shù)據(jù)集的大小進(jìn)行選擇和調(diào)整。對(duì)網(wǎng)絡(luò)的連接權(quán)重和偏置進(jìn)行初始化,通??梢允褂秒S機(jī)數(shù)進(jìn)行初始化。通過BP 神經(jīng)網(wǎng)絡(luò),對(duì)訓(xùn)練集的輸入數(shù)據(jù)進(jìn)行前向傳播,得到輸出數(shù)據(jù),并將其和實(shí)際輸出數(shù)據(jù)相對(duì)比,計(jì)算兩者之間的誤差。根據(jù)誤差,使用反向傳播算法更新網(wǎng)絡(luò)的連接權(quán)重和偏置,以減小誤差,使網(wǎng)絡(luò)的輸出更接近實(shí)際值。
對(duì)前向和反向傳播的過程進(jìn)行循環(huán)進(jìn)行,直到達(dá)到預(yù)設(shè)的訓(xùn)練終止條件,如達(dá)到最大迭代次數(shù)或誤差降低到一定閾值。使用驗(yàn)證集,評(píng)估已經(jīng)訓(xùn)練好的模型對(duì)訓(xùn)練好的模型,并對(duì)模型的準(zhǔn)確率、精確率、召回率等指標(biāo)進(jìn)行計(jì)算,以評(píng)估模型的性能和泛化能力。根據(jù)評(píng)估結(jié)果和實(shí)際需求,對(duì)模型進(jìn)行調(diào)優(yōu),包括調(diào)整網(wǎng)絡(luò)結(jié)構(gòu)、學(xué)習(xí)率、正則化等超參數(shù)的選擇和調(diào)整。
使用測(cè)試集對(duì)訓(xùn)練好的模型進(jìn)行測(cè)試,預(yù)測(cè)水質(zhì)的分類結(jié)果或預(yù)測(cè)值,對(duì)模型在測(cè)試集上的準(zhǔn)確率等指標(biāo)進(jìn)行計(jì)算,從而進(jìn)行模型預(yù)測(cè)能力和穩(wěn)定性能的評(píng)估。通過對(duì)模型在驗(yàn)證集和測(cè)試集上的表現(xiàn),評(píng)估模型的性能和泛化能力,可以比較不同模型的評(píng)估指標(biāo),選擇表現(xiàn)最佳的模型作為最終模型。對(duì)模型的預(yù)測(cè)結(jié)果進(jìn)行分析和解釋,根據(jù)模型的輸出結(jié)果提供水質(zhì)評(píng)價(jià)和檢測(cè)的相關(guān)建議和解釋。
根據(jù)水質(zhì)評(píng)價(jià)分級(jí)標(biāo)準(zhǔn)和國(guó)家生活用水質(zhì)量標(biāo)準(zhǔn),將水庫的水質(zhì)劃分為三級(jí)。構(gòu)建BP 網(wǎng)絡(luò)模型,輸入層和輸出層的結(jié)點(diǎn)數(shù)分別為6 和3,輸出向量的含義以及對(duì)應(yīng)的關(guān)系見表1。
隱含層結(jié)點(diǎn)數(shù)按照式(1)選?。?/p>
式中:Q、M、N分別表示隱含、輸入以及輸出各層的結(jié)點(diǎn)數(shù)量;C為整數(shù),取值自1 到10。進(jìn)行多次試驗(yàn),選取Q為5,學(xué)習(xí)效率取值0.4,網(wǎng)絡(luò)結(jié)構(gòu)為(6,5,3)。進(jìn)行網(wǎng)絡(luò)訓(xùn)練達(dá)到12000次后達(dá)到精度0.005 的要求。
BP 神經(jīng)網(wǎng)絡(luò)的輸出范圍為0~1,因此需要對(duì)原始樣本進(jìn)行歸一化處理,結(jié)果見表2。
表2 歸一化處理后的訓(xùn)練樣本
BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練完成以后,使用待測(cè)樣本對(duì)其進(jìn)行檢驗(yàn),結(jié)果見表3。
表3 樣本檢驗(yàn)結(jié)果
通過樣本檢驗(yàn)結(jié)果,樣本二和四屬于一級(jí)水質(zhì),樣本五屬于二級(jí)水質(zhì),樣本一屬于三級(jí)水質(zhì),樣本三界于二級(jí)水質(zhì)和三級(jí)水質(zhì)之間,但樣本三中Cr 的含量超過二級(jí)水質(zhì)標(biāo)準(zhǔn),而且其三級(jí)水質(zhì)的隸屬度達(dá)到0.587,因此該樣本為三級(jí)水質(zhì)。對(duì)BP 神經(jīng)網(wǎng)絡(luò)的輸出結(jié)果和水質(zhì)分級(jí)標(biāo)準(zhǔn)相比較,可以看出兩者之間較為吻合,可以用來進(jìn)行水質(zhì)的評(píng)價(jià)與預(yù)測(cè)。
本研究基于BP 神經(jīng)網(wǎng)絡(luò)模型,對(duì)邯鄲岳城水庫的水質(zhì)進(jìn)行評(píng)價(jià)和預(yù)測(cè)。通過收集水質(zhì)監(jiān)測(cè)數(shù)據(jù),并利用BP 神經(jīng)網(wǎng)絡(luò)模型建立水質(zhì)與各指標(biāo)之間的映射關(guān)系,我們得到了準(zhǔn)確的水質(zhì)評(píng)價(jià)和未來趨勢(shì)的預(yù)測(cè)結(jié)果。本研究的結(jié)果對(duì)于深入了解岳城水庫的水質(zhì)狀況具有重要意義。通過對(duì)水質(zhì)數(shù)據(jù)的分析和預(yù)測(cè),可以及時(shí)發(fā)現(xiàn)水質(zhì)異常和趨勢(shì)變化,為水資源管理和環(huán)境保護(hù)提供科學(xué)依據(jù)。同時(shí),基于BP 神經(jīng)網(wǎng)絡(luò)的水質(zhì)預(yù)測(cè)模型可以為未來水質(zhì)變化的預(yù)測(cè)提供參考,幫助決策者采取相應(yīng)的措施,保障水源地的安全和可持續(xù)利用??傊?本研究基于BP 神經(jīng)網(wǎng)絡(luò)模型,對(duì)邯鄲岳城水庫的水質(zhì)進(jìn)行了評(píng)價(jià)和預(yù)測(cè),為水資源管理和環(huán)境保護(hù)提供了重要的科學(xué)依據(jù)。進(jìn)一步的研究可以進(jìn)一步改進(jìn)模型的性能,并結(jié)合其他技術(shù)手段,提高水質(zhì)評(píng)價(jià)和預(yù)測(cè)的準(zhǔn)確性和可靠性。