倪海燕,王文博,任群言,鹿力成,馬力
(1.中國科學院聲學研究所,北京 100190;2.中國科學院水聲環(huán)境特性重點實驗室,北京 100190;3.中國科學院大學,北京 100049)
海底底質分類及特性表征是海洋測繪、海洋地質和海洋工程領域的重要研究內容,為各種海洋應用提供必要的海洋環(huán)境信息[1-2]。單波束、多波束測深聲吶等走航式聲吶設備,可以快速提供大范圍的海底地形、地貌及含沉積層信息的海底回波數據,具有快速、高效、節(jié)省成本的優(yōu)勢。
多波束測深聲吶的反向散射強度是海底底質分類中常用的物理量。目前利用多波束反向散射數據進行海底底質分類的分類方法較多,但最佳分類器選擇問題仍未有定論[2-3]。根據數據分析過程中是否應用海底底質標簽信息,可將各方法劃分為監(jiān)督學習[1,3-8]及無監(jiān)督學習方法[9-11]。監(jiān)督式機器學習的思路是通過大量數據訓練和底質類型標簽建立其預測性分類模型,包括決策樹[12]、隨機森林[8,13-14]、隨機決策樹[6]、支持向量機[1,4,15]以及神經網絡[16]等。
由于監(jiān)督學習方法需要對數據及標簽信息進行學習訓練,因此監(jiān)督式分類算法的性能受限于可用的代表性訓練樣本的數量及質量[17]。實際中,海底的真實底質信息通過采樣獲得,通常為點狀采樣,難以獲得大面積的底質類型信息,存在底質標簽信息采集不足的問題,且耗費大量人力財力。該問題限制了監(jiān)督分類方法的效率與應用。無監(jiān)督分類方法無法直接給出不同沉積層的確切類型預測,需結合具體的海底底質采樣信息,才可將聚類結果與沉積物類型結合起來。
針對上述問題,有學者開始研究單純利用輔助任務從大量無標簽數據中挖掘監(jiān)督信息、學習到對下游任務有價值表征的自監(jiān)督學習[18-21],以及利用無標簽數據與有標簽數據的半監(jiān)督學習方法[22-27]。將兩大類傳統(tǒng)的機器學習算法結合起來,即使在有標簽樣本較少情況下,也可獲得較好的分類性能和預測結果。目前半監(jiān)督分類方法在圖像、心電步態(tài)數據分類及聲學領域均取得了一些成效。顏延[28]利用可以進行無監(jiān)督預訓練的深度自編碼器及深度信息網絡,以人體心電信號及步態(tài)信息的傳感數據為研究對象,從有效特征提取及小樣本學習等角度進行了無監(jiān)督學習等方面的研究。在聲學領域,Xe‐naki等[29]利用變分自動編碼器對合成孔徑聲吶平臺運動未有標簽數據中進行無監(jiān)督表示學習,在包含少量有標簽數據情況下進一步提高了平臺運動估計的準確性。Bianco等[30-31]提出了混響環(huán)境下基于帶有變分自動編碼器的深度生成建模的半監(jiān)督定位方法,在標簽受限的情況下該方法性能優(yōu)于傳統(tǒng)方法和卷積神經網絡方法。
本文利用多波束聲吶的反向散射數據,研究了海底底質分類的半監(jiān)督學習(Semi-supervised learn‐ing,SSL)算法。利用黃海海域兩次實驗獲得的多波束反向散射角度響應曲線,采用基于自動編碼器(Auto Encoder,AE)預訓練以及偽標簽(Pseudo Label‐ling,PL)自訓練的半監(jiān)督學習分類算法(分別稱為SSL-AE 及SSL-PL),進行少量有標簽樣本下的海底底質分類研究。分類準確度與僅利用有標簽樣本的支持向量機(Support Vector Machine,SVM)、隨機森林(Random Forest,RF)、反向傳播神經網絡(Back Propagation Neural Network,BPNN)等方法進行對比。數據處理結果表明,本主文所提方法在可利用底質標簽信息盡可能少的情況下實現(xiàn)較準確的底質分類。
實現(xiàn)半監(jiān)督學習算法的其中一種思想是數據的無監(jiān)督預訓練。半監(jiān)督學習算法基于遷移學習的思想,首先利用自動編碼器和受限玻爾茲曼機(Restricted Boltzmann Machines,RBM)等無監(jiān)督式的神經網絡結構進行數據的無監(jiān)督預訓練[32-33]。然后在實際任務中重用網絡的底層結構,通過有標簽的小量數據進行網絡微調。最后利用少量有標簽的數據樣本和大量無標簽的數據樣本,以期望達到較好的分類效果。
AE 網絡能夠在無標簽情況下對輸入數據表征學習[33-34],其結構框架如圖1 所示。全連接(Full Connection,FC)的結構與多層感知機(Multilayer Perceptron,MLP)結構類似,不同的是,AE的輸入層神經元個數與輸出層個數相同,這與其原理與功能有關。自動編碼器的編碼器從輸入數據中強制學習重要的數據功能,實現(xiàn)數據的內部表示;解碼器則負責利用學習到的表征與規(guī)則重建輸入,利用成本函數計算重建損失并對模型實施懲罰[33,35]。自動編碼器在試圖復現(xiàn)原始輸入的非線性學習過程中,逐漸捕捉到類似于主成分分析(Prin‐ciple Component Analysis,PCA)方法中最能有效代表原信息的主成分,最終實現(xiàn)無監(jiān)督數據的有效表達與學習。
圖1 自動編碼器結構圖Fig.1 Structure of Auto-Encoder
將上述自動編碼器神經網絡結構以逐層的方式堆疊,即為棧式自編碼結構(Stacked Auto Encoder,SAE)。在多層的棧式自編碼網絡中,數據由輸入層輸入,在網絡結構中每一層的輸入即為前一層的激活函數的輸出。每次僅訓練其中一層的參數,其余已經訓練層的參數固定不變。
基于自動編碼器的半監(jiān)督分類算法首先通過大量無監(jiān)督的數據訓練神經網絡,讓神經網絡學習并提取特征,這一過程稱為無監(jiān)督的預訓練;再結合少量標簽通過監(jiān)督訓練的方式微調網絡參數與模型;最后將訓練好的網絡模型應用到相似實際任務中新的數據集上。其算法步驟如圖2所示,具體步驟如下:
圖2 自動編碼器預訓練的半監(jiān)督分類方法的算法步驟Fig.2 Procedure of the semi-supervised classification based on auto encoder pre-training
(1) 給定數據集1 的全部無標簽數據,利用自動編碼器逐層訓練,非監(jiān)督地學習特征,得到預訓練模型。
(2) 選擇數據集1的部分少量有標簽數據樣本,通過標準多層神經網絡監(jiān)督訓練方法(梯度下降)微調整個網絡系統(tǒng)參數,為實際任務創(chuàng)建一個新的神經網絡。此時為了實現(xiàn)分類功能,需要在預訓練好的最頂層的編碼器上方加一個分類器(這里選擇softmax分類層)。
(3) 將訓練好的網絡模型應用到實際任務中新的數據集上進行測試。
實現(xiàn)半監(jiān)督學習算法的另外一種思想是數據的偽標簽自訓練。半監(jiān)督學習的核心思想是通過借助無標簽的數據來提升有監(jiān)督過程中的模型性能。對于無標簽數據的利用,除了第1節(jié)所提無監(jiān)督預訓練的方式,還可以嘗試利用已標注數據所訓練的模型在未標注的數據上進行預測,預測的結果通常被稱為偽標簽。利用偽標簽進行自訓練的半監(jiān)督學習分類方法的步驟如圖3 所示。算法的具體步驟如下:
圖3 偽標簽自訓練的半監(jiān)督分類方法(SSL-PL)的算法步驟Fig.3 Procedure of the semi-supervised classification based on pseudo label self-training (SSL-PL)
(1) 使用有標簽數據訓練有監(jiān)督模型M;
(2) 使用有監(jiān)督模型M對無標簽數據進行預測,得出預測概率P;
(3) 通過預測概率P篩選高置信度樣本,確定偽標簽;
(4) 使用有標簽數據以及偽標簽數據訓練新模型M’;
(5) 利用新模型M’對測試集數據進行預測。
2018年8月及2019年8月,分別在黃海海域進行了沉積層底質特性綜合測量的海上實驗。兩次實驗均使用同款多波束測深儀走航聲吶設備。多波束測深儀被固定安裝在船體左側。兩次走航測量實驗的海域位置及航線軌跡如圖4(a)~4(b)所示。在圖4(a)中,2019年的實驗航線為“三角”形狀,從E1開始,先后經過E2、E3,最后回到E1,行航線全長約300 km。2018 年的實驗航線由A點出發(fā),行駛至B點,與2019年實驗中E1E2段航線接近平行,總長約為120 km。
圖4 兩次多波束聲吶數據采集實驗概況Fig.4 Overviews of twice multi-beam sonar data acquisition experiments
由于海況等原因,兩次實驗沒有實時采得海底底質樣本。但根據圖4(b)所示的沉積物歷史采樣分布結果,可以觀察到,2018年AB航線主要經過了黏土質粉砂(clayey silt)、砂質粉砂(sandy silt)及粉砂質砂(silty sand)三類海底底質類型,2019年航線主要經過了黏土質粉砂、砂質粉砂、粉砂質砂以及砂(sand)四種底質類型。
該實驗海域水深約30~50 m。圖4(c)~4(d)分別給出了兩次實驗航線上的海水深度。2018年實驗航線上,海深略有起伏,前80 km存在坡度較緩的海底斜坡,后40 km內海深有約4~5 m的起伏。2019年實驗航線上,海底地形不平坦,存在較大的海深起伏,50 km 處海水深度起伏約4~5 m,180 km 后存在坡度較大的海底斜坡。
多波束測深聲吶設備為NORBIT 公司生產的WBMS Bathy 200系統(tǒng),使用QINSY采集軟件采集水深及反向散射數據。兩次實驗中,多波束聲吶發(fā)射中心頻率為200 kHz的調頻信號,聲吶系統(tǒng)其他參數,如頻率帶寬、脈沖寬度、系統(tǒng)開角、波束角個數,以及可設置的系統(tǒng)增益G0、時變增益(Time Varied Gain,TVG)補償有關的參數等如表1 所示。系統(tǒng)會自動采集每一幀(Ping)里各個波束角下的海底反向散射回波數據。
表1 NORBIT WBMS BATHY 200 聲吶設備的設置參數Table 1 Parameter setting of NORBIT WBMS BATHY 200 used in two experiments
FMGeocoder Toolbox (FMGT)[36]是一款專門讀取、處理分析及可視化多波束聲吶反向散射數據的軟件。針對聲波傳輸過程中海洋環(huán)境和聲吶系統(tǒng)參數等因素帶來的影響,F(xiàn)MGT可以應用適用于特定聲吶的所有輻射校正算法,對多波束聲吶采集的反向散射數據進行處理[36]。處理后的多波束聲吶反向散射數據可對應創(chuàng)建海底反向散射圖像,也可以形成隨入射角度變化的角度響應曲線(Angle Response Curves,ARC),以分析不同沉積物類型。
對于系統(tǒng)校準良好的聲吶系統(tǒng),F(xiàn)MGT還可利用絕對數值的ARC 曲線進行角度與距離分析,通過建模并擬合的方式反演獲取沉積層特性參數。對于Norbit WBMS Bathy 200 等未校準聲吶,F(xiàn)MGT可以將原始記錄的聲壓數據轉換為dB 形式的反向散射強度值,但即使經軟件處理,未校準聲吶所采集記錄的反向散射強度數值范圍仍無法達到校準聲吶的標準范圍[36],因此仍是相對意義上的反向散射強度,而非絕對數值。即便如此,相對意義的回波強度數據也記錄了不同海底底質類型間的差異,因此仍然可以采用分析ARC 曲線間的相對差異的經驗方法進行海底底質分類研究[37-40]。
經FMGT進行數據處理后,可從軟件中直接導出包括每一Ping每個波束角下經度、緯度、海水深度、真正波束入射角、原始記錄的反向散射強度值、改正處理后的反向散射強度值,以及Ping時間和聲吶工作頻率在內的數據文件,進而根據數據文件生成ARC曲線。
2018 年及2019 年實驗數據中均存在不同程度的部分波束角數據缺失情況,為方便對比分析及驗證,選取統(tǒng)一波束入射角度的反向散射強度數據。首先舍棄波束角缺失嚴重的部分數據,然后取波束入射角范圍為3° 40°,并對每個角度的反向散射數據進行數據平均。為避免瞬時接收反向散射強度的隨機起伏對海底底質分類結果的影響,對每50 Ping 數據(重疊30 Ping,距離跨度約20~43 m)進行平均處理。由于2018年AB航線及2019年E1E2航線的實驗軌跡基本平行,且底質類型分布基本相同,均貫穿了黏土質粉砂、砂質粉砂及粉砂質砂三類海底底質類型,因此以兩條航線數據為本文研究對象,進行海底底質分類研究。數據預處理后,2018年AB航線及2019年E1E2航線上可用多波束反向散射樣本數分別為4 567和2 667個。
圖5給出了兩條航線上三類底質類型下的多波束平均ARC 曲線,誤差棒為數據標準差,每7°顯示一次。如圖所示,不同底質類型下,海底反向散射強度隨入射角變化呈現(xiàn)不同的變化規(guī)律,體現(xiàn)在強度、斜率及形狀上[41],因此可以通過ARC 曲線間相對差異以區(qū)分不同海底類型。兩次實驗中部分聲吶系統(tǒng)參數設置不同,導致FMGT處理后的多波束相對反向散射強度值具有不同的區(qū)間范圍。兩次實驗航線上,三種海底底質類型的相對變化趨勢較為一致,存在略微差異。當被分析的海底區(qū)域不均勻或位于不同底質類型的邊界區(qū)域時,ARC 曲線會較為相似[41],會導致一定的分類結果誤判。
圖5 兩次實驗中多波束反向散射強度隨波束角度的變化曲線Fig.5 Variation curves of the multiple beam backscattering intensity with the beam angle in the two experiments
為驗證本文提出的方法在海底底質分類中的有效性,本節(jié)利用兩次實驗獲得的多波束反向散射ARC曲線,比較了兩種半監(jiān)督學習分類算法(SSLAE,SSL-PL)與BPNN反向傳播神經網絡、支持向量機SVM、隨機森林RF等監(jiān)督學習算法的分類性能。對2018年AB航線及2019年E1E2航線數據進行交叉引用,分別將兩次航線數據樣本用作訓練數據集,另一實驗航線數據樣本作為測試數據集。對ARC 曲線各角度的強度數據進行標準差標準化處理(減去均值再除以數據標準差)[42]。為測試各種分類算法在有標簽樣本數量較少時的分類效果,樣本數在30~300 范圍內分別取不同數量的有標簽樣本用于各分類器訓練。其中三類海底底質的數據樣本量均等,每類底質中有標簽樣本的數量為1~100。為避免隨機選擇的有標簽樣本對訓練結果產生的影響,訓練過程重復100次,并取平均值進行分析。
混淆矩陣是估計分類器性能的常用辦法[33,43]。二維混淆矩陣的一維索引是各樣本的真實類別,另一維索引是各分類器預測的樣本類別。通過統(tǒng)計每個真實類別的數據樣本被預測為各類別的個數,可計算得到多個性能指標以評價分類結果,主要包括預測精度、召回率以及F1分數等[33,43]。
以BPNN方法中,用2018年AB航線全部數據樣本訓練,并用2019 年E1E2航線數據樣本測試的結果為例,生成混淆矩陣,并解釋說明各評價指標。如圖6所示,主對角線中的樣本數分別表示各類底質正確預測的觀測樣本數,稱為真正類樣本(True Positive,TP)。圖6中第1行、第4列中的數值為83.8%,表示在全部預測為黏土質粉砂的樣本中,實際確為黏土質粉砂的樣本比例,其計算方式為1 146/(1 146+222)×100%≈83.8%。此指標,從分類器的預測結果出發(fā),表示預測為正的樣本中預測準確的比例,稱為精度(Precision),體現(xiàn)分類器的查準率。以此為例,可類推第4列中三類底質的精度指標。與之對應的,圖6 中第4 行第1 列的數值為99%,表示在全部實際類別為黏土質粉砂的樣本中,分類器預測為黏土質粉砂的樣本比例,其計算方式為1 146/(1 146+11)×100%≈99.0%。此指標,從實際數據樣本出發(fā),表示正樣本中預測準確的概率,稱為召回率(Recall),體現(xiàn)分類器的查全率。以此為例,可類推第4行中三類底質的召回率。
圖6 海底底質三分類問題的混淆矩陣Fig.6 Confusion matrix chart for tri-classification problem of seafloor sediment
以Cij表示圖6混淆矩陣中第i行、第j列,即真實類別為第j類、預測類別為第i類的數據樣本,圖7給出了混淆矩陣中各類別數據的TP類樣本及對應誤判樣本的ARC 曲線。圖7 中紅色、藍色及黑色ARC曲線分別為黏土質粉砂(C11)、砂質粉砂(C22)及粉砂質砂(C33)三類底質的TP 類樣本,玫紅色ARC曲線為“1”“2”類底質(即黏土質粉砂和砂質粉砂)間的誤判樣本(C12),綠色ARC曲線為“2”“3”類底質(即砂質粉砂和粉砂質砂)間的誤判樣本(C23)。可以看出,誤判樣本均位于兩類底質ARC 曲線的中間區(qū)域,分別與兩類底質的TP類ARC曲線存在一定的重合或相似。相似的ARC 曲線,會導致一定的分類誤判,這與海底區(qū)域不均勻或處于不同底質類型的邊界區(qū)域有關。
圖7 混淆矩陣中各類別數據的TP類樣本及對應誤判樣本的角度響應曲線Fig.7 ARC of the TP class samples and the corresponding misjudgment samples of each category data in the confusion matrix
由于精度和召回率的數值結果常存在一定差異,將精度和召回率組合計算的諧波平均值F1 分數SF1,可以綜合衡量分類器的查準率與查全率。由于諧波平均給精度和召回率較低的值更高的權重,因此只有當精度和召回都很高的時候,分類器才能得到較高的F1分數[33,43]。對類別數據不平衡且所有類別同樣重要的多分類問題,宏觀F1 分數SF1-macr可按式(1)計算[44],式中N為類別數。本文將采用F1分數對各分類算法進行性能分析。
圖8 和圖9 分別給出了以2018 年航線數據、2019 年航線數據作為訓練數據集時,SSL-PL 及SSL-AE兩種半監(jiān)督學習分類方法隨有標簽樣本數量變化的F1分數。在圖8與圖9所示兩種訓練數據集下,隨著參與數據訓練有標簽樣本數量增加,利用偽標簽的SSL-PL 方法性能均逐漸提升,而利用自動編碼器無監(jiān)督預訓練的SSL-AE方法性能均相對穩(wěn)定一致。
圖8 以2018年數據集作為訓練數據集時兩種半監(jiān)督學習分類算法的F1分數對比Fig.8 Comparison of the F1 scores for SSL-PL and SSL-AE algorithms when the 2018 experimental data is used as training data set
圖9 以2019年數據集作為訓練數據集時兩種半監(jiān)督學習分類算法的F1分數對比Fig.9 Comparison of the F1 scores for SSL-PL and SSL-AE algorithms when the 2019 experimental data is used as training data set
在SSL-AE方法中,第一步即利用全部可用的無標簽數據,利用自動編碼器逐層學習數據特征,得到預訓練模型,在第二步中有標簽樣本僅用來將預訓練模型中各數據特征與實際分類類別聯(lián)系起來。因此,在標簽正確的情況下,用于數據訓練的有標簽樣本數量對SSL-AE方法性能影響較小。
對于SSL-PL 方法,用于數據訓練的有標簽樣本數量不同,對SSL-PL 方法性能影響較大。這與產生偽標簽的準確度有關。當有標簽訓練數據較少時,由少量有標簽數據訓練可能導致過擬合,因此預測得到的偽標簽未必正確,即使篩選出概率較高的數據樣本,其結果仍未必可靠。將此類偽標簽數據加入網絡二次訓練,網絡預測性能仍較差。此時SSL-PL方法性能比SSL-AE方法性能差。當有標簽訓練數據多時,網絡訓練后預測出來的偽標簽可信度更高,將類別估計準確的數據點繼續(xù)用于訓練,將提升網絡預測性能。SSL-PL 方法性能是否優(yōu)于SSL-AE方法,與采用航段的訓練數據情況有關。
圖10 給出了以2018 年航線數據中不同數量的有標簽樣本用于數據訓練時,各分類算法的F1 分數。圖11 為以2019 年航線數據作為訓練數據的對應結果。整體觀察圖10 與圖11,以不同航次實驗數據作為訓練數據集時,各算法的分類性能存在部分較一致的現(xiàn)象。首先,當用于訓練的有標簽樣本數量較少(如樣本數小于120)時,各分類算法的分類結果差異明顯。當有標簽樣本數量極少時,自動編碼器預訓練的SSL-AE方法分類效果最好,其次是支持向量機SVM。當總訓練有標簽樣本數小于18個(即每類底質的訓練樣本數量小于6個)時,隨機森林RF方法不能正確地進行分類。其次,當有標簽樣本數量增加時,各分類算法的分類結果趨于穩(wěn)定,差異減小。隨著有標簽樣本數量增加,BPNN和RF方法性能逐漸提升。
圖10 以2018年數據集作為訓練數據集時各分類算法的F1分數對比Fig.10 Comparison of the F1 scores for different classification algorithms when the 2018 experimental data is used as training data set
圖11 以2019年數據集作為訓練數據集時各分類算法的F1分數對比Fig.11 Comparison of the F1 scores for different classification algorithms when the 2019 experimental data is used as training data set
圖10和圖11中,偽標簽自訓練的SSL-PL方法和RF方法性能趨勢存在差異。以2018年實驗航線數據做訓練集,且有標簽樣本數量較多時,SSLPL 方法與RF 方法分類效果略高于其他方法。以2019 年實驗航線數據做訓練集時,SSL-PL 方法分類性能低于其他方法,RF 方法分類性能逐漸逼近其他方法。以上結果表明,部分分類器預測性能受不同訓練數據、測試數據影響,預測性能并不完全穩(wěn)定。另一方面,兩次實驗航線數據存在一定差異,如圖5的ARC曲線所示。此外,底質標簽的準確性,也會影響各分類算法的預測性能。
本文針對監(jiān)督分類算法依賴海底底質標簽而底質標簽采集數量可能不足的問題,提出了海底底質半監(jiān)督學習分類算法。采用自動編碼器預訓練以及偽標簽自訓練的兩種半監(jiān)督學習分類方法,將有標簽訓練樣本與無標簽訓練樣本結合使用。利用黃海海域兩次實驗獲得的多波束反向散射角度響應曲線,對提出的SSL-AE 和SSL-PL 方法進行了分類準確度研究。實驗結果表明,相比僅利用有標簽數據的監(jiān)督分類算法,提出的半監(jiān)督學習分類算法可以在利用較少的海底底質標簽樣本情況下實現(xiàn)更準確的分類。自動編碼器預訓練的半監(jiān)督學習分類SSL-AE方法在有標簽樣本數量極少時的準確率仍高于75%。
除底質標簽數量不足的問題外,當底質標簽不準確、質量不高時,如何保證或提高分類模型預測準確度,也是未來值得繼續(xù)研究的問題。