国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于機器學(xué)習的單聲源定位算法

2020-12-31 09:32張金亮李東平周靖
關(guān)鍵詞:聲源結(jié)點麥克風

張金亮,李東平,周靖

(湖北汽車工業(yè)學(xué)院 電氣與信息工程學(xué)院,湖北 十堰442002)

被動聲源定位是一種運用聲學(xué)原理、使用電子設(shè)備接收和處理聲學(xué)信號以檢測鎖定目標的技術(shù)。被動聲源定位技術(shù)發(fā)展至今已有100多年,最早以1906 年的聲吶系統(tǒng)為世人所知,隨著技術(shù)的發(fā)展,利用聲源的振動、頻率、聲壓級、傳播等特性,可以較好地實現(xiàn)聲源定位并用于系統(tǒng)異常情況的識別和診斷[1],也為深海探測、水下通訊、偵測敵軍等提供了可能。隨著電磁干擾、隱身技術(shù)、反輻射材料相關(guān)技術(shù)的發(fā)展,傳統(tǒng)的主動探測面臨巨大的挑戰(zhàn)。基于麥克風陣列探測的主動探測技術(shù)憑借其隱蔽性好、成本低、定位精度高等獨特的優(yōu)勢,受到許多研究人員的青睞,隨著現(xiàn)代科技的不斷突破,該技術(shù)在軍事領(lǐng)域、工業(yè)工程、環(huán)境監(jiān)測以及日常民用領(lǐng)域都有著廣泛的應(yīng)用[2]。Brandstein等人于1996年首次將麥克風陣列信號應(yīng)用于人的聲音定位和追蹤,基于一系列的研究,傳統(tǒng)聲源定位方法分為基于時延估計的聲源定位算法[3-4]、基于高分辨率譜估計的聲源定位算法[5]、基于可控波束形成的聲源定位算法[6]。傳統(tǒng)的聲源定位盡管部分算法易于實現(xiàn),計算量小,但其在復(fù)雜噪聲環(huán)境或多聲源場景下效果較差,魯棒性也有待進一步提高[7-8]。機器學(xué)習從已有案例中學(xué)習知識和經(jīng)驗,針對各種情況建立起不同的模型,并用來推斷實際問題。與常規(guī)的解決策略相比,這種學(xué)習算法的新穎之處在于它特別重視樣本數(shù)據(jù),即使用數(shù)據(jù)驅(qū)動。傳統(tǒng)聲源定位方法并不使用預(yù)先獲得的先驗信息,某些情況下會局限于預(yù)定的區(qū)域內(nèi),機器學(xué)習算法利用分類識別以及其高度泛化能力對聲源進行定位,可以較好地解決傳統(tǒng)方法存在的一些問題,不僅有更強的魯棒性,而且能夠在麥克風無法收到直達聲時依舊有效。近年來,基于支持向量機、神經(jīng)網(wǎng)絡(luò)等機器學(xué)習的聲源定位算法得到廣泛關(guān)注。文中旨在繼續(xù)對聲源定位模型中機器學(xué)習應(yīng)用展開研究,采用基于麥克風陣列進行聲源測量和數(shù)據(jù)采集,并對數(shù)據(jù)集進行篩選和處理,重點對機器學(xué)習中線性回歸、決策樹、多層感知機、集成學(xué)習4 種算法進行分析,并應(yīng)用于聲源定位中,使用Python 機器學(xué)習工具箱sklearn 對4 種不同的算法進行實現(xiàn),并對不同算法的性能和特點進行分析。

1 聲源接收模型及數(shù)據(jù)集

1.1 聲源定位模型

結(jié)合實際應(yīng)用場景,考慮點聲源的情形,由聲音傳播模型可知,點聲源的波陣面為球面,聲波在某點處的聲壓與該點至聲源中心的距離成反比,在被動聲源定位系統(tǒng)中,往往需采用3個或者3個以上接收設(shè)備測量聲源相關(guān)的信息[9-10]。在理想環(huán)境中,麥克風陣列接收的信號視為直達聲音信號。在聲源發(fā)出聲波之后,麥克風陣列的每個陣列元件接收聲學(xué)信號用于后續(xù)處理。圖1展示了由3個麥克風構(gòu)成的理想模型示意圖。若以3 個接收端為圓心,當接收到的聲波傳遞時間、聲壓級一定時,有且僅有1個交點,即聲源點。因此可通過機器學(xué)習方法去“學(xué)習”這一規(guī)律,達到預(yù)測新輸入的目的。

圖1 聲源定位模型示意圖

1.2 聲源測量與數(shù)據(jù)采集

基于上述三點麥克風接收模型,按照圖2所示的方案選擇100 m×100 m的空曠場地,分別在預(yù)定的位置放置3個麥克風及聲級計,其位置構(gòu)成三角形,從圖標記位置出發(fā),先橫向后縱向,每隔5 m移動聲源依次采樣,通過不斷改變聲源位置來構(gòu)造數(shù)據(jù)集,聲源的聲壓設(shè)置為固定值100 dB,便于后續(xù)數(shù)據(jù)整理;同時還需要測量溫度、空氣濕度等一些影響聲音傳播的環(huán)境因素。在每個位置點進行10組試驗后,將3 個接收端的數(shù)據(jù)記錄下來,經(jīng)整理后存入Excel中,以備進一步使用。

圖2 聲源測量及數(shù)據(jù)采集方案示意圖

數(shù)據(jù)集的好壞在一定程度上影響機器學(xué)習的效果和最終數(shù)據(jù)分析的質(zhì)量,因此對上述方案中每個位置點采集到的10組數(shù)據(jù)剔除最大值和最小值后,再進行均值處理,以排除測量誤差的影響。此外,為了降低計算復(fù)雜度、減少噪聲干擾和提高識別精度,對數(shù)據(jù)降維。

點聲源傳播過程中隨著距離衰減,理想情況下的衰減公式為

式中:r1為參考點到聲源的距離;r2為實際點到聲源的距離。圖3為聲源隨距離衰減的波形圖。由圖3可見,篩選后的數(shù)據(jù)能較好地反映實際的場景,由于噪聲干擾及地面反射等因素,實際聲場中聲波聲壓級幅值會有較小的波動,反映出的函數(shù)關(guān)系和理想曲面十分接近,因此所采集的樣本數(shù)據(jù)是有效的,可用于后續(xù)的訓(xùn)練和學(xué)習。

圖3 聲源隨距離衰減的波形圖

2 基于機器學(xué)習的定位算法

2.1 線性回歸

損失函數(shù)可以用來評定一個模型的泛化能力,

式中:α為學(xué)習率,在式(5)中每次更新時乘以學(xué)習率可控制更新參數(shù)的快慢。當α值太小,訓(xùn)練得很慢;但是α值比較大的話,訓(xùn)練加快,卻容易過擬合,在實驗過程中需要根據(jù)實際情況調(diào)整。

2.2 決策樹

回歸決策樹一般使用CART(classification and regression tree)算法,由若干個二叉樹組合,若用于分類,每個結(jié)點表示“是”或“否”;若用于回歸,每個結(jié)點反映為數(shù)值。對于不同的特征,回歸樹將某屬性劃分為多個范圍,每個范圍對應(yīng)著1 個固定輸出。通過判別條件,將樣本分到相應(yīng)的葉子結(jié)點中。由于每個結(jié)點服從二項分布,故其劃分邊界與坐標軸平行。按照上述規(guī)則,將測試數(shù)據(jù)歸納到指定結(jié)點中,預(yù)測結(jié)果時可以使用平均值作為輸出。決策樹劃分的過程也就是建立樹的過程,每劃分1次,隨即確定劃分單元對應(yīng)的輸出,也就多了1 個結(jié)點。當根據(jù)停止條件劃分終止的時候,每個單元的輸出也就確定了,也就是葉結(jié)點。

假設(shè)X和Y分別為輸入和輸出變量,并且Y是連續(xù)變量,給定訓(xùn)練數(shù)據(jù)集為

式中:c1和c2為劃分后2個區(qū)域內(nèi)固定的輸出值,方括號內(nèi)的2 個min 表示使用的是最優(yōu)值,即各自區(qū)域內(nèi)平方誤差最小的值,易知這2個最優(yōu)的輸出值是各自對應(yīng)區(qū)域內(nèi)y的均值,所以式(8)可寫為

找到使損失最小的(j,s)后,對每個特征的取值依次遍歷,首先劃分出2 個初始區(qū)域,按上述過程依次構(gòu)造二叉樹,直到劃分完所有的訓(xùn)練集或達到某預(yù)設(shè)條件。此方法切分的樹稱為最小二乘回歸樹。

2.3 多層感知機

多層感知機(MLP,Multilayer Perceptron)也叫人工神經(jīng)網(wǎng)絡(luò),從網(wǎng)絡(luò)結(jié)構(gòu)上看是一種前饋神經(jīng)網(wǎng)絡(luò),最簡單的MLP只有3層,即輸入層、輸出層以及1 個隱層。隨著隱層數(shù)量的增加,其結(jié)構(gòu)越復(fù)雜,處理能力也越強。多層感知機每層神經(jīng)元之間是全連接的,通過訓(xùn)練網(wǎng)絡(luò)中的權(quán)值連接,可以使感知機對1組輸入加權(quán)處理,實現(xiàn)目標輸出[12]。

BP神經(jīng)網(wǎng)絡(luò)(back propagation network)是一種應(yīng)用廣泛的權(quán)值調(diào)整算法,基本方法是隨機梯度下降,目的是使實際輸出值與期望值的均方誤差最小。BP算法分為信號的前向傳播和誤差的反向傳播。也就是說,當計算輸出時,信號經(jīng)由每層神經(jīng)網(wǎng)絡(luò)依次從左至右傳遞;而更新權(quán)重時,則從右至左反向傳遞,減小系統(tǒng)誤差。示意圖如圖4 所示。正向傳播時,輸入信號由隱層加權(quán)處理后作用于輸出結(jié)點,若該結(jié)點上的輸出值與期望值不符,則進行誤差反向傳播。誤差的反向傳播是將輸出層誤差向輸入層逐層反饋,并將誤差分攤給各層所有單元,以此作為調(diào)整各單元權(quán)值的依據(jù)。權(quán)值的修正是沿著代價函數(shù)梯度的反方向進行的,通過調(diào)整輸入結(jié)點與隱層結(jié)點的聯(lián)結(jié)強度和隱層結(jié)點與輸出結(jié)點的聯(lián)結(jié)強度以及閾值,使誤差沿梯度方向下降,經(jīng)過反復(fù)學(xué)習訓(xùn)練,確定與最小誤差對應(yīng)的權(quán)值和閾值,此時停止訓(xùn)練。

圖4 BP神經(jīng)網(wǎng)絡(luò)節(jié)點關(guān)系示意圖

2.4 集成學(xué)習

集成學(xué)習可通過多個基學(xué)習器來完成學(xué)習任務(wù)。按照個體學(xué)習器之間是否存在依賴關(guān)系,采用基于裝袋(bagging)的集成學(xué)習方法。裝袋是自助抽樣的投票方法。設(shè)1個訓(xùn)練數(shù)據(jù)集為M,樣本數(shù)量為N,先從M中隨機抽取1個樣本,放入集合Ms,然后再將該樣本放回到M中。重復(fù)上述過程N次,集合Ms中得到了N個樣本的采樣數(shù)據(jù)。由于采樣是有放回的過程,服從二項分布,那么1 個樣本沒

隨機森林(Random,RF)是一種典型的Bagging算法,在Bagging的基礎(chǔ)上做出了相應(yīng)的改進,基本思想是集成多棵決策樹用于數(shù)據(jù)分類和回歸。在構(gòu)建RF的過程中,假設(shè)樣本具有D個不同的特征,從D個特征中隨機選取E個特征,保持E不變,且E小于D,然后隨機選擇每個機會節(jié)點中的特征。每個學(xué)習器相互獨立且是隨機的,從而構(gòu)建了RF[12]。在進行數(shù)據(jù)在線預(yù)測時,學(xué)習器都會產(chǎn)生各自的預(yù)測結(jié)果,最終通過投票決策綜合分析得出輸出結(jié)果,通常取平均數(shù),算法示意圖如圖5所示。

圖5 集成學(xué)習—隨機森林算法示意圖

1)抽樣產(chǎn)生訓(xùn)練數(shù)據(jù)集RF采用Bagging抽樣技術(shù),從原始的訓(xùn)練數(shù)據(jù)集中重復(fù)抽樣K次,產(chǎn)生K個訓(xùn)練子集(假設(shè)需隨機生成K棵決策樹)。訓(xùn)練子集中的樣本存在一定的重復(fù),主要是為了在訓(xùn)練模型時,每棵決策樹的輸入樣本都不是全部的樣本,使森林中的決策樹不至于產(chǎn)生局部最優(yōu)解。

2)構(gòu)建K個學(xué)習器(決策樹)每個訓(xùn)練集得到1個最優(yōu)模型,K個訓(xùn)練集得到K個最優(yōu)模型,每個最優(yōu)模型產(chǎn)生1棵決策樹,從而產(chǎn)生K棵決策樹形成森林,每棵樹不需要剪枝處理。

3)生成隨機森林,使用投票決策輸出結(jié)果 根據(jù)決策樹對測試樣本進行綜合分析,以平均值作為預(yù)測結(jié)果。若是分類問題,需要對K個模型進行投票處理,何種結(jié)果出現(xiàn)次數(shù)多就分為哪一類;若是回歸問題,則需要對K個模型的預(yù)測結(jié)果求平均。

2.5 定位方法

圖6 基于機器學(xué)習聲源定位方法

基于4種機器學(xué)習的定位流程和方法如圖6所示?;谇笆稣鹿?jié)中的固定場景下,3個麥克風分別接收預(yù)定位置聲源信號,通過采集的信息可得到聲源到各麥克風的傳播時間和聲壓級,進一步計算每2 個麥克風之間接收信號的到達時間差(timedifferences-of-arrival,TDOA),并將其和聲壓級共同作為特征向量,分別基于不同的機器學(xué)習算法,對特征向量和分類器的權(quán)重系數(shù)進行調(diào)整和更新,從而得到分類模型,完成樣本的訓(xùn)練。在定位測試時,同樣通過3個麥克風分別接收某個測試位置的聲源信號,提取TDOA 和聲壓級特征向量后,根據(jù)訓(xùn)練的分類模型提取輸出定位結(jié)果。

3 算法仿真與分析

針對4種算法,使用Python下機器學(xué)習工具箱sklearn 對其進行仿真和對比分析。在具體實現(xiàn)過程中,參數(shù)調(diào)整好后,使用regr.fit(X,y)來訓(xùn)練數(shù)據(jù),使用某一特定比例的訓(xùn)練集,均勻選取樣本總數(shù)的70%作為測試集,X對應(yīng)于訓(xùn)練樣本中的輸入,即聲源分別到每個麥克風的傳播時間和接收到的聲壓級,y對應(yīng)于訓(xùn)練樣本中的輸出,即聲源的二維坐標和聲源聲壓級。剩下30%數(shù)據(jù)集用來檢測模型擬合的優(yōu)劣程度,利用regr.predict(X_test)預(yù)測輸出,將預(yù)測出來的結(jié)果與真實情況比較,以此來評判模型及算法準確性。

選取部分測試集的數(shù)據(jù)進行展示,所有測試集及對應(yīng)的預(yù)測結(jié)果(樣本總數(shù)的30%)用三維曲面表示,結(jié)果如圖7 所示:神經(jīng)網(wǎng)絡(luò)和隨機森林算法相對于線性回歸和決策樹算法的預(yù)測數(shù)據(jù)覆蓋更全面,分布也相對比較平坦、均勻。

為進一步驗證不同算法特征,對其具體性能進行分析。對于每個軸方向上4 種算法預(yù)測數(shù)據(jù)最大誤差統(tǒng)計結(jié)果如表1 所示,4 種算法的X向距離偏差較Y向距離和聲壓級的偏差更大一些。

圖7 三維曲面預(yù)測結(jié)果

表1 各軸向最大誤差統(tǒng)計

對于多元線性回歸模型而言,其主要優(yōu)勢在于建模簡便、易于理解,適用于數(shù)據(jù)量不大的情況,訓(xùn)練時間短,但是當訓(xùn)練樣本中有噪聲時,會產(chǎn)生較大誤差。某些情況可能會忽略交互效應(yīng)和非線性的因果關(guān)系,可能出現(xiàn)欠擬合現(xiàn)象,導(dǎo)致不能取得最好的預(yù)測效果。該模型在處理聲源定位的問題上得分較高,較好地擬合了測試集,這是由于樣本數(shù)據(jù)有比較好的線性關(guān)系,且噪聲點較少。

回歸決策樹擬合略差,其均方差為27.89,CART對噪聲敏感,易在訓(xùn)練中造成過擬合。優(yōu)點是計算量小,對缺失數(shù)據(jù)不敏感,采用自頂向下遞歸方式構(gòu)造決策樹,每次劃分都使當前誤差最小,訓(xùn)練時間復(fù)雜度小、效率高,只用構(gòu)建1次決策樹,每次預(yù)測的最大計算次數(shù)不超過決策樹的深度。

多層感知機有很強的魯棒性和泛化能力,人工神經(jīng)網(wǎng)絡(luò)由許多個簡單的處理單元并聯(lián)組合而成,其分布式處理的方式能夠運算大規(guī)模數(shù)據(jù)。每個神經(jīng)元接受大量其他神經(jīng)元的輸入,通過非線性的輸入、輸出關(guān)系,進而影響其他神經(jīng)元。該算法最明顯的缺點是在隱層數(shù)量和神經(jīng)元個數(shù)的選取上徘徊不定,至今沒有明確的理論依據(jù),只能憑經(jīng)驗去摸索。由于神經(jīng)網(wǎng)絡(luò)收斂速度很慢,訓(xùn)練過程會耗費大量時間,另外在使用梯度下降法優(yōu)化權(quán)值的過程中容易陷入局部最小值。

集成學(xué)習明顯優(yōu)于弱學(xué)習器(決策樹)。Bagging 對回歸結(jié)果采用簡單平均的方法,性能穩(wěn)定,泛化能力較強,可有效降低模型的方差。訓(xùn)練過程并行且互不干擾,對大規(guī)模樣本的處理具有優(yōu)勢。相比CART決策樹,其魯棒性有很大程度的提高。

4 結(jié)語

文中研究的是多輸入多輸出的回歸問題,將機器學(xué)習中線性回歸、決策樹、多層感知機、集成學(xué)習4種算法應(yīng)用于聲源的定位中,使用sklearn工具箱對算法進行仿真,分析不同算法模型的預(yù)測結(jié)果和性能指標,為不同應(yīng)用環(huán)境和場合下聲源定位算法的選擇提供一定參考。然而,在實際應(yīng)用算法移植的可行性來看,需考慮硬件平臺及處理器算力的限制,后續(xù)將展開進一步的研究。

猜你喜歡
聲源結(jié)點麥克風
虛擬聲源定位的等效源近場聲全息算法
LEACH 算法應(yīng)用于礦井無線通信的路由算法研究
基于八數(shù)碼問題的搜索算法的研究
汽車內(nèi)麥克風陣列布放位置優(yōu)化方法研究*
基于GCC-nearest時延估計的室內(nèi)聲源定位
麥克風的藝術(shù)
訊飛輸入法也能離線語音輸入
智能自動避障與追蹤聲源小車的設(shè)計
麥克風
力-聲互易在水下聲源強度測量中的應(yīng)用