年福耿
(海軍士官學(xué)校,安徽 蚌埠233012)
隨著我國(guó)經(jīng)濟(jì)快速發(fā)展,水資源短缺和水資源污染嚴(yán)重威脅到人們的生產(chǎn)和生活,對(duì)水資源進(jìn)行快速正確的分類評(píng)價(jià),已經(jīng)成為評(píng)估水質(zhì)污染程度的一項(xiàng)重要工作。常見的評(píng)價(jià)方法有綜合評(píng)價(jià)法、神經(jīng)網(wǎng)絡(luò)法等,每種方法有各自優(yōu)點(diǎn)和不足,傳統(tǒng)方法雖然能反映水質(zhì)的部分情況,但難以描述評(píng)價(jià)因子與水質(zhì)等級(jí)之間的復(fù)雜的關(guān)系,通用性較差;神經(jīng)網(wǎng)絡(luò)有較強(qiáng)的處理能力,但是存在一些先天的缺陷,比如網(wǎng)絡(luò)結(jié)構(gòu)難以確定,泛化能力差等,所以要在此基礎(chǔ)上分析研究出適用于水質(zhì)的分類評(píng)價(jià)的模型及方案。
基于水質(zhì)監(jiān)測(cè)網(wǎng)站上的監(jiān)測(cè)數(shù)據(jù),數(shù)據(jù)集一共包涵376 條已分類監(jiān)測(cè)數(shù)據(jù),10 個(gè)變量,其中變量水質(zhì)類別為因變量,部分?jǐn)?shù)據(jù)如表1 所示。
表1 水質(zhì)監(jiān)測(cè)網(wǎng)站上的監(jiān)測(cè)數(shù)據(jù)
因?yàn)楸O(jiān)測(cè)數(shù)據(jù)中有的站點(diǎn)存在儀器故障現(xiàn)象,存在導(dǎo)致監(jiān)測(cè)數(shù)據(jù)缺失,導(dǎo)致水質(zhì)類別不準(zhǔn)確,所以先對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,剔除無效數(shù)據(jù). 通過刪除缺失數(shù)據(jù)處理,已分類監(jiān)測(cè)數(shù)據(jù)還有322 條。
通過第一部刪除缺失數(shù)據(jù)后,數(shù)據(jù)中的站點(diǎn)情況、斷面屬性這兩個(gè)變量,對(duì)水質(zhì)分類影響不大,所以進(jìn)行剔除,斷面名稱及測(cè)量時(shí)間作為數(shù)據(jù)對(duì)應(yīng)的屬性,水質(zhì)類別的確定重點(diǎn)根據(jù)pH值、溶解氧、氨氮、高錳酸鹽指數(shù)四個(gè)屬性進(jìn)行確定。
由于采集數(shù)據(jù)存在綱量的差異,為了提高后續(xù)實(shí)驗(yàn)訓(xùn)練的速度和預(yù)測(cè)的精度,對(duì)處理好的322 組訓(xùn)練測(cè)試數(shù)據(jù),用下面的公式進(jìn)行歸一化處理,使得處理后的數(shù)據(jù)分布在[0,1]之間。
支持向量機(jī)(簡(jiǎn)稱SVM)是基于統(tǒng)計(jì)學(xué)理論,以結(jié)構(gòu)風(fēng)險(xiǎn)最小化原理為基礎(chǔ)的一種新型機(jī)器學(xué)習(xí)方法,SVM方法廣泛應(yīng)用于統(tǒng)計(jì)分類、回歸預(yù)測(cè)等問題,可以較好逼近非線性復(fù)雜系統(tǒng),能夠有效解決過學(xué)習(xí)、維數(shù)災(zāi)難以及局部最小等問題,具有良好的泛化能力和分類性能,本文根據(jù)測(cè)試水樣物質(zhì)成分的含量,利用SVM方法構(gòu)建水質(zhì)分類模型,對(duì)水質(zhì)進(jìn)行分類評(píng)價(jià)。
圖1 線性可分SVM 示意圖
為了使分類器的劃分超平面有最大間隔,并求解出模型中的參數(shù),則有:
在很多情況下,樣本空間并不是線性可分的,對(duì)于樣本空間中的非線性分類情況,可以使用非線性變換的方法,將它轉(zhuǎn)化成某個(gè)維的特征空間中的線性分類問題,在高維特征空間中學(xué)習(xí)線性支持向量機(jī)。
圖2 非線性可分SVM 示意圖
假設(shè)給定數(shù)據(jù)所得圖像如圖2 左圖所示,顯然我們沒法用一條直線將“·”和“+”分開,如果用一個(gè)橢圓,將會(huì)得到很好的效果,我們希望將這個(gè)非線性分類問題變換為線性問題,通過變換后的線性問題的方法求解原來的非線性問題,我們可以將圖2 左圖的橢圓變換成右圖中的直線,將非線性分類問題變換為線性分類問題。
因此,對(duì)于線性不可分的樣本集,可以通過引入核函數(shù)把輸入向量映射到高維的特征空間中,從而使樣本在特征空間內(nèi)線性可分,主要的非線性核函數(shù)如下:
通過預(yù)處理后的數(shù)據(jù)共322 組水質(zhì)數(shù)據(jù),挑選數(shù)據(jù)中的75%水質(zhì)樣本數(shù)據(jù)作為訓(xùn)練集,另外25%水質(zhì)樣本數(shù)據(jù)作為測(cè)試集。
采用多次實(shí)驗(yàn)對(duì)比線性SVM和非線SVM在水質(zhì)分類上的準(zhǔn)確率,實(shí)驗(yàn)322 組數(shù)據(jù),使用Python 編程進(jìn)行實(shí)驗(yàn),主要代碼如圖3 所示。
圖3 線性SVM 和非線性SVM 主要程序
線性SVM 模型經(jīng)過交叉驗(yàn)證后,得到最佳懲罰系數(shù)C 為0.5,可得到SVM模型在訓(xùn)練集上的平均準(zhǔn)確率只有83.3%,在測(cè)試集上的準(zhǔn)確率為81.5%. 可見基于線性SVM的水質(zhì)分類效果一般。基于核函數(shù)的非線性SVM模型,經(jīng)過交叉驗(yàn)證后,得到最佳懲罰系數(shù)C 為5,最佳的核函數(shù)為徑向基核函數(shù),模型在訓(xùn)練數(shù)據(jù)集上的平均正確率高達(dá)95.8%,而且在測(cè)試集的預(yù)測(cè)準(zhǔn)確率也接近93.8%. 可見基于核技術(shù)的非線性SVM表現(xiàn)效果較好。利用81 組測(cè)試集的預(yù)測(cè)值和真實(shí)值畫出數(shù)據(jù)的線性SVM和非線性SVM混淆矩陣,如圖4 所示。
圖4 線性SVM 和非線性SVM 模型的混淆矩陣
進(jìn)行對(duì)比分析,可發(fā)現(xiàn)兩種模型在Ⅴ類水質(zhì)上都分類的較好,線性SVM分類水質(zhì)時(shí)會(huì)把Ⅰ、Ⅱ、Ⅲ、Ⅳ類的少部分?jǐn)?shù)據(jù)分類錯(cuò)誤,容易提高一檔或者降低一檔,非線性SVM分類水質(zhì)時(shí),準(zhǔn)確率較高,但也存在會(huì)把Ⅰ、Ⅱ、Ⅲ、Ⅳ類的極少部分?jǐn)?shù)據(jù)分類時(shí)會(huì)提高一檔或者降低一檔。通過實(shí)驗(yàn)可以發(fā)現(xiàn),線性SVM模型在水質(zhì)分類上表現(xiàn)一般,不太適合水質(zhì)分類;基于RBF 核函數(shù)的非線性SVM在水質(zhì)分類研究上表現(xiàn)的較為理想,可進(jìn)一步的推廣應(yīng)用。