亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于BP 神經(jīng)網(wǎng)絡(luò)的聲源定位研究

        2021-04-23 05:50:24佘霖琳趙祎彤李嘉雪宋雲(yún)龍
        軟件導(dǎo)刊 2021年4期
        關(guān)鍵詞:數(shù)據(jù)量聲源個數(shù)

        佘霖琳,孫 紅,趙祎彤,李嘉雪,宋雲(yún)龍

        (上海理工大學(xué)光電信息與計算機工程學(xué)院,上海 200093)

        0 引言

        21 世紀以來,人工智能的興起使得基于語音、文字、圖像等模式識別的人機交互成為研究熱點。要實現(xiàn)機器與機器以及人與機器之間的交流互動,能夠精確定位發(fā)出聲源的人或機器位置是極其重要的[1-2]。目前,聲源定位在視頻會議、助聽器、智能降噪[3]、車載電話、鳴笛抓拍等領(lǐng)域有著廣闊的應(yīng)用前景。

        傳統(tǒng)聲源定位算法大體可分3 類:基于到達時延估計(Time Difference of Arrival,TDOA)的聲源定位算法[4]、基于最大輸出功率的可控波束形成聲源定位算法[5]、基于高分辨率譜估計的聲源定位算法[6]。其中,第一類算法根據(jù)聲源信號到達不同位置麥克風(fēng)的時間差確定聲源位置;第二類算法利用波束形成技術(shù),但需基于背景噪聲和聲源信號先驗知識,因此限制了算法應(yīng)用;第三類算法來源于高分辨率譜估計技術(shù),其定位性能好,但計算復(fù)雜度高,難以達到應(yīng)用場景要求的實時性。在3 類方法中,TDOA 算法因其計算復(fù)雜度與硬件實現(xiàn)成本較低而受到較多關(guān)注。其發(fā)展主要分為兩個階段:第一階段為傳統(tǒng)的時延估計方法,以相關(guān)分析、相位譜、參數(shù)估計為基礎(chǔ),以數(shù)據(jù)收集作為手段進行聲源定位,其中應(yīng)用最廣泛的為孫洋等[7]提出的基于相關(guān)分析的廣義互相關(guān)函數(shù)法(Generialized Cross-Correlation,GCC)和Haykin[8]提出的基于自適應(yīng)濾波器的最小均方自適應(yīng)濾波法(Least Mean Square,LMS)。但GCC 算法需要對信號和噪聲譜估計其加權(quán)函數(shù),從而增加了算法復(fù)雜度。LMS 算法穩(wěn)定性較差,若迭代步長過大,會出現(xiàn)不收斂的情況;若迭代步長過小,則會導(dǎo)致不平穩(wěn)信號還未實現(xiàn)尋優(yōu)便又引入新的誤差。第二階段出現(xiàn)了機器學(xué)習(xí)聲源定位方法,目前應(yīng)用較多的為焦琛等[9]提出的基于相位加權(quán)廣義互相關(guān)函數(shù)的卷積神經(jīng)網(wǎng)絡(luò)算法(Convolutional Neural Networks,CNN)。

        使用機器學(xué)習(xí)算法相較于傳統(tǒng)算法能避免繁重的計算、具有較高準確度,并且可通過改變少量參數(shù)以適應(yīng)更多不同的復(fù)雜應(yīng)用場景。但對于如何選取其算法模型參數(shù),目前尚無明確的理論研究,大多通過反復(fù)實驗、參考類似經(jīng)驗得到。本文運用機器學(xué)習(xí)中的BP 神經(jīng)網(wǎng)絡(luò)算法對聲源定位進行研究,探討適合本研究場景的最佳模型參數(shù),以期為聲源定位技術(shù)的深入發(fā)展及應(yīng)用提供參考[10]。

        1 BP 算法基礎(chǔ)理論與相關(guān)技術(shù)

        1.1 BP 神經(jīng)網(wǎng)絡(luò)簡介

        BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)是一種有監(jiān)督的神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法,其利用誤差的反向傳播原理,改變傳統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu),引入新的分層與邏輯。學(xué)習(xí)過程由正向傳播和反向傳播兩部分組成,在正向傳播過程中,輸入模式從輸入層經(jīng)過隱含層神經(jīng)元處理后傳向輸出層,每一層神經(jīng)元狀態(tài)只影響下一層神經(jīng)元狀態(tài)。如果在輸出層得不到期望的輸出,則轉(zhuǎn)入反向傳播,此時誤差信號從輸出層向輸入層傳播,并沿途調(diào)整各層間連接權(quán)值和閾值。該過程反復(fù)交替進行,直至網(wǎng)絡(luò)的全局誤差趨向給定的極小值。在反復(fù)訓(xùn)練過程中,其采用梯度下降法使得權(quán)值沿著誤差函數(shù)的負梯度方向改變,并收斂于最小點。BP 算法主要步驟如下:

        (1)正向傳播過程。在輸入層中,單元i的輸出值oi等于其輸入值xi的加權(quán)和:

        輸出值為:

        式中,f若為sigmod函數(shù),則:

        在輸出層中,因為輸出層單元的作用函數(shù)為線性,故輸出值為輸入值的加權(quán)和。對于第k 個輸出單元,輸出值yk為:

        (2)反向傳播過程。首先定義誤差函數(shù)Ep為:

        BP 學(xué)習(xí)算法采用梯度下降法調(diào)整權(quán)值,每次調(diào)整量為:

        式中,η 為學(xué)習(xí)率,0<η<1,由此式可得到權(quán)值修正量公式。對于輸出層與隱含層之間的權(quán)值v:

        其中,有:

        對于隱含層與輸入層之間的權(quán)值w:

        1.2 BP 神經(jīng)網(wǎng)絡(luò)神經(jīng)元個數(shù)與隱藏層層數(shù)選擇

        在神經(jīng)網(wǎng)絡(luò)中,單層神經(jīng)網(wǎng)絡(luò)只用于表示線性分離函數(shù)[11],而當數(shù)據(jù)非線性分離時需要增加隱藏層[12]。對于簡單的數(shù)據(jù)集,通常包含1~2 個隱藏層的神經(jīng)網(wǎng)絡(luò)即可得到最優(yōu)結(jié)果。而對于涉及時間序列或計算機視覺等內(nèi)容的復(fù)雜數(shù)據(jù)集,則需要額外增加隱藏層層數(shù)。

        當沒有隱藏層時,僅能表示線性可分函數(shù)或決策;當隱藏層數(shù)為1 時,可以擬合任何包含從一個有限空間到另一個有限空間的連續(xù)映射函數(shù);當隱藏層數(shù)為2 時,搭配適當?shù)募せ詈瘮?shù)可表示任意精度的任意決策邊界,并且可擬合任意精度的任何平滑映射;當隱藏層數(shù)>2 時,多出來的隱藏層可學(xué)習(xí)更為復(fù)雜的描述。

        層數(shù)越深,理論上擬合函數(shù)的能力增強,效果越好,但實際上更深的層數(shù)可能帶來過擬合問題,同時也會增加訓(xùn)練難度,使模型難以收斂。因此,在使用BP 神經(jīng)網(wǎng)絡(luò)時,較可取的方法是參照已有的表現(xiàn)優(yōu)異的模型。而當缺少可參考模型時,從一或兩個隱藏層開始嘗試不失為探究最佳層數(shù)較為合適的方法。

        在確定隱藏層的神經(jīng)元個數(shù)方面,若神經(jīng)元太少將導(dǎo)致欠擬合[13],網(wǎng)絡(luò)不能有效地學(xué)習(xí),需要大量增加訓(xùn)練次數(shù),并且嚴重影響訓(xùn)練精度;而神經(jīng)元過多可能導(dǎo)致過擬合,訓(xùn)練集中包含的有限信息量不足以訓(xùn)練隱藏層中的所有神經(jīng)元。即使訓(xùn)練數(shù)據(jù)包含的信息量足夠,隱藏層中過多的神經(jīng)元也會增加訓(xùn)練時間,導(dǎo)致難以達到預(yù)期效果。顯然,選擇一個合適的隱藏層神經(jīng)元數(shù)量是至關(guān)重要的。

        在確定神經(jīng)元個數(shù)方面,首先應(yīng)該考慮此前提:隱含層節(jié)點數(shù)必須小于N-1(N 是訓(xùn)練樣本數(shù)),否則網(wǎng)絡(luò)模型的系統(tǒng)誤差與訓(xùn)練樣本的特性無關(guān)而趨于0,即建立的網(wǎng)絡(luò)模型缺乏泛化能力,也無任何使用價值。而除此之外,當前并沒有一種科學(xué)的確定神經(jīng)元個數(shù)的方法,最佳數(shù)量需要通過不斷的實驗獲得。

        對于如何確定神經(jīng)元數(shù)量和隱藏層層數(shù),本研究通過不斷實驗的方法,從1 個神經(jīng)元、1 層隱藏層開始遞增,如果欠擬合則增加層數(shù)和神經(jīng)元,如果過擬合則減小層數(shù)和神經(jīng)元。

        1.3 BP 神經(jīng)網(wǎng)絡(luò)的不足與反向傳播函數(shù)選取

        在BP 神經(jīng)網(wǎng)絡(luò)的標準算法中,其反向傳播過程是基于梯度下降法,通過調(diào)整權(quán)值和閾值使輸出期望值與神經(jīng)網(wǎng)絡(luò)實際輸出值的均方誤差梯度趨于最小而實現(xiàn)的。雖然標準訓(xùn)練算法下的BP 網(wǎng)絡(luò)得到了廣泛應(yīng)用,但其自身也存在一些不足,主要包括以下4 個方面:

        (1)由于學(xué)習(xí)速率是固定的,因此網(wǎng)絡(luò)收斂速度慢,訓(xùn)練需要較長時間。如果問題復(fù)雜,BP 算法需要的訓(xùn)練時間可能會非常長,無法滿足應(yīng)用要求。針對這一點,可采用變化的學(xué)習(xí)速率或自適應(yīng)學(xué)習(xí)速率加以改進,如利用學(xué)習(xí)速率自適應(yīng)的BP 算法。

        (2)BP 算法可使權(quán)值收斂到某個值,但并不保證其為誤差平面的全局最小值,這是因為采用梯度下降法可能會產(chǎn)生一個局部最小值。對于該問題可采用附加動量法來解決,如動量因子BP 算法[14]。

        (3)對于網(wǎng)絡(luò)隱含層層數(shù)與神經(jīng)單元個數(shù)選擇尚無理論上的指導(dǎo),一般是根據(jù)經(jīng)驗或者反復(fù)實驗確定。因此,網(wǎng)絡(luò)模型各項參數(shù)的可移植性差,并且網(wǎng)絡(luò)往往存在很大的冗余性,在一定程度上增加了網(wǎng)絡(luò)的學(xué)習(xí)負擔。

        (4)網(wǎng)絡(luò)學(xué)習(xí)和記憶具有不穩(wěn)定性,在增加了學(xué)習(xí)樣本的情況下,訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)需要從頭開始重新訓(xùn)練,對于以前的權(quán)值和閾值并無記憶。

        由于BP 標準算法有很多不足,因此在不同的實際應(yīng)用情況下,需要將其與改進的BP 算法函數(shù)相結(jié)合??紤]到本研究模型屬于中型網(wǎng)絡(luò),以下介紹適合中型網(wǎng)絡(luò)的改進算法及其相應(yīng)特點:①traingdx:帶有動量項的自適應(yīng)學(xué)習(xí)算法,訓(xùn)練速度較快;②trainrp:彈性BP 算法,收斂速度快,占用內(nèi)存小;③traincgf:Fletcher-Reeves 共軛梯度法[15],是對存儲量要求最小的共軛梯度法;④trainscg:歸一化共軛梯度法,唯一一種不需要線性搜索的共軛梯度法;⑤trainlm:Levenberg-Marquardt 算法,是介于牛頓法與梯度下降法之間的一種非線性優(yōu)化方法,對于過參數(shù)化問題不敏感,能有效處理冗余參數(shù)問題,大大減小了代價函數(shù)陷入局部極小值的機會[16]。

        2 采樣原理與仿真模型

        在建立神經(jīng)網(wǎng)絡(luò)之前,需要先設(shè)計出采樣模型,獲得輸入數(shù)據(jù)與輸出數(shù)據(jù)的形式,再設(shè)計神經(jīng)網(wǎng)絡(luò)。采樣模型如圖1 所示(彩圖掃OSID 碼可見,下同)。

        Fig.1 Sampling model圖1 采樣模型

        如圖1 所示,把地面劃分為n 個小區(qū)域后,每一次測試時分別在某一個小區(qū)域的中心坐標處用發(fā)聲裝置發(fā)聲。4個麥克風(fēng)兩兩一組,形成AB、BC、CD 3 組,分別記錄3 組內(nèi)兩個麥克風(fēng)收到聲音的時間差,具體如下:

        由此可得到n 組對應(yīng)的數(shù)據(jù),分別為3 組時間差以及一對二維坐標值,其中xi為橫坐標值,yi為縱坐標值,則第i組數(shù)據(jù)為:

        本研究將聲源定位場景簡化為在一個占地面積為100m2的房間里對聲源進行水平面上二維坐標定位的模型。假設(shè)房間是一個標準的長方體,房間長為10m,寬為10m,高為5m。在麥克風(fēng)陣列位置選取方面,選定4 個麥克風(fēng)的位置分別為A(4.9,4.9,1.0)、B(4.9,5.1,1.0)、C(5.1,5.1,1.0)、D(5.0,5.0,2.0),使其在空間構(gòu)成一個四面體[17]。

        對于神經(jīng)網(wǎng)絡(luò)輸入、輸出數(shù)據(jù)的獲取,本研究根據(jù)基于時延的聲源定位基本原理,由聲源位置坐標計算各組麥克風(fēng)接收來自同一聲源聲音的時間差作為測試集的輸入數(shù)據(jù),將聲源實際位置坐標作為輸出數(shù)據(jù),之后利用BP 神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練、驗證、測試后,則可得到用于聲源定位的模型。

        在分析比較神經(jīng)網(wǎng)絡(luò)隱藏層神經(jīng)元個數(shù)、隱藏層層數(shù)對算法精確性影響的實驗中,訓(xùn)練集、驗證集都采用400 個數(shù)據(jù)量,測試集采用50 個數(shù)據(jù)量。而在比較不同數(shù)據(jù)量下不同算法精確性的實驗中,訓(xùn)練集、驗證集采用的數(shù)據(jù)量從400 開始遞增,測試集仍采用50 個數(shù)據(jù)量。

        3 實驗與結(jié)果分析

        為了專注探究算法的精確性,排除環(huán)境干擾,在一個100 m2房間里實現(xiàn)對聲源的二維空間定位,本研究借助MATLAB 進行仿真實驗[18]。運用其中的rand 函數(shù)隨機生成點坐標數(shù)據(jù)集用于神經(jīng)網(wǎng)絡(luò)的訓(xùn)練、驗證與測試。由于數(shù)據(jù)集是隨機生成的,為了保證實驗結(jié)果的有效性,本研究對同一參數(shù)下的神經(jīng)網(wǎng)絡(luò)都進行了50 次測試,最后取50次結(jié)果的平均值作為對比分析的實驗數(shù)據(jù)。運用構(gòu)建神經(jīng)網(wǎng)絡(luò)的函數(shù),通過設(shè)置隱藏層神經(jīng)元個數(shù)、隱藏層層數(shù)以及反向傳播函數(shù)對應(yīng)的函數(shù)參數(shù),構(gòu)建本研究所需的不同結(jié)構(gòu)的BP 神經(jīng)網(wǎng)絡(luò)。

        對比、分析3 類因素對聲源定位精確性的影響后,將得到適合構(gòu)建此模型的最佳網(wǎng)絡(luò)模型,并且得出一定條件下該算法能達到的最佳定位效果??紤]到本研究要解決的是回歸預(yù)測問題,故選取R 值(Regression)、MSE(Mean Squared Error)作為算法精確性評價標準。

        3.1 仿真函數(shù)與參數(shù)設(shè)置

        (1)mapminmax[19]。[Y,PS]=mapminmax(X,YMIN,YMAX),將歸一化的信息保存到結(jié)構(gòu)體PS 中,自定義MIN、MAX 的范圍。

        Y=mapminmax(‘a(chǎn)pply’,X,PS),用已知的歸一化規(guī)則PS 歸一化其他信息。

        X=mapminmax(‘reverse’,Y,PS),用于反歸一化。

        (2)newff。net=newff(P,T,[S1S2…S(N-l)],{TF1 TF2…TFNl},BTF,BLF,PF,IPF,OPF,DDF),用于創(chuàng)建前向型神經(jīng)網(wǎng)絡(luò)。

        (3)train。[net,tr,Y,E,Pf,Af]=train(net,P,T,Pi,Ai),用于訓(xùn)練神經(jīng)網(wǎng)絡(luò)。

        (4)sim[20]。[Y,Pf,Af,E,perf]=sim(net,P,Pi,Ai,T),用于模擬預(yù)測,Y 即最終預(yù)測的輸出。

        本研究在使用‘newfff’函數(shù)構(gòu)建神經(jīng)網(wǎng)絡(luò)時,設(shè)置隱含層輸出函數(shù)為‘tansig’,輸出層輸出函數(shù)為‘purelin’,設(shè)置訓(xùn)練參數(shù)依次為:Leaning_rate(學(xué)習(xí)率)=0.1、初始max_epoch(最大迭代次數(shù))=5 000、初始goal(目標誤差)=4e-6、max_fail(最大失敗次數(shù))=10 000。其中,最大迭代次數(shù)與目標誤差需要根據(jù)每次具體實驗效果加以調(diào)整,以確保在神經(jīng)網(wǎng)絡(luò)達到相對穩(wěn)定的狀態(tài)下記錄實驗數(shù)據(jù)。

        3.2 神經(jīng)網(wǎng)絡(luò)神經(jīng)元個數(shù)對算法精確性的影響

        本實驗采用LM(LevenBerg-Marquardt)[21]反向傳播函數(shù)下、隱藏層層數(shù)為1 的BP 神經(jīng)網(wǎng)絡(luò)[22]對神經(jīng)網(wǎng)絡(luò)的神經(jīng)元個數(shù)進行探究。

        對于神經(jīng)元個數(shù)選擇,本實驗從1 開始進行測試。通過實驗發(fā)現(xiàn),當神經(jīng)元個數(shù)取1~4 時,所需迭代次數(shù)遠大于最大迭代次數(shù)的初始值(5 000),嘗試調(diào)整目標誤差,使其增大至4e-3,之后得到網(wǎng)絡(luò)穩(wěn)定時的最終MSE 與R 值結(jié)果;當神經(jīng)元個數(shù)取5~6 時,出現(xiàn)達到最大迭代次數(shù)而結(jié)果曲線未達到穩(wěn)定狀態(tài)的情況,故嘗試將最大迭代次數(shù)設(shè)置為8 000;當神經(jīng)元個數(shù)取7~9 時,在實驗初始設(shè)置的參數(shù)值下,已可獲得網(wǎng)絡(luò)的穩(wěn)定狀態(tài);當神經(jīng)元個數(shù)取10 及以上時,達到原目標誤差后曲線未趨于平穩(wěn),故將目標誤差設(shè)置為4e-9。由實驗結(jié)果可得,當神經(jīng)元個數(shù)增加到10 之后,數(shù)據(jù)結(jié)果的穩(wěn)定性較差且越來越差,故本實驗對神經(jīng)元個數(shù)的研究止于49。實驗所得不同神經(jīng)元個數(shù)下的MSE 值與R 值變化情況如圖2、圖3 所示。

        Fig.2 Change of MSE value of the different numbers of neurons圖2 不同神經(jīng)元個數(shù)下的MSE值變化情況

        Fig.3 Change of R value of the different numbers of neurons圖3 不同神經(jīng)元個數(shù)下的R 值變化情況

        分析圖2、圖3 可知,隨著神經(jīng)元個數(shù)的增加,MSE 值整體呈遞減趨勢,R 值呈遞增趨勢。為了得到更準確的實驗結(jié)果,本實驗進行局部探測,選取實驗結(jié)果較佳的神經(jīng)元個數(shù)為5~9 時的BP 神經(jīng)網(wǎng)絡(luò)進行研究,如圖4、圖5 所示。

        Fig.4 Change of MSE value of the different numbers of neurons from 5 to 9圖4 5~9 個神經(jīng)元個數(shù)下的MSE 值變化情況

        Fig.5 Change of R value of the different numbers of neurons from 5 to 9圖5 5~9 個神經(jīng)元個數(shù)下的R 值變化情況

        由圖可知,神經(jīng)元個數(shù)為7 時的BP 神經(jīng)網(wǎng)絡(luò)在整體趨勢中表現(xiàn)最好,接下來依次是個數(shù)為8、9、6、5 的BP 神經(jīng)網(wǎng)絡(luò)。相對于后4 種BP 神經(jīng)網(wǎng)絡(luò),神經(jīng)元個數(shù)為7 的BP 神經(jīng)網(wǎng)絡(luò)均方差MSE 值最小,R 值最大,網(wǎng)絡(luò)收斂速度更快,網(wǎng)絡(luò)穩(wěn)定性更強。故得到當隱藏層神經(jīng)元個數(shù)取7 時,BP 神經(jīng)網(wǎng)絡(luò)算法的預(yù)測結(jié)果最佳,該神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)[23]如圖6 所示,并且為得到較理想的實驗效果,以下實驗中神經(jīng)元個數(shù)都取7 進行研究。

        3.3 神經(jīng)網(wǎng)絡(luò)隱藏層層數(shù)對算法精確性的影響

        本實驗采用LM 反向傳播函數(shù)下神經(jīng)元個數(shù)為7 的BP神經(jīng)網(wǎng)絡(luò)對神經(jīng)網(wǎng)絡(luò)的隱藏層層數(shù)進行探究。

        每層隱藏層都取7 個神經(jīng)元,從1 開始遞增隱藏層層數(shù)進行實驗。對于1~2 層神經(jīng)網(wǎng)絡(luò),在未達到最大迭代次數(shù)時,此神經(jīng)網(wǎng)絡(luò)誤差即可減小到初始目標誤差以下,而后觀察MSE 隨迭代次數(shù)遞增的變化曲線可知,MSE 穩(wěn)定在e-9 數(shù)量級。通過增加隱藏層重復(fù)上述操作,實驗發(fā)現(xiàn),當隱藏層為3~13 層時,達到原目標誤差后曲線未趨于穩(wěn)定,有繼續(xù)下降趨勢,表明精確性有望繼續(xù)提高,故實驗需要減小目標誤差,直到得到每一種隱藏層層數(shù)下網(wǎng)絡(luò)模型的最小穩(wěn)定誤差。而當層數(shù)取13 以上時,相對應(yīng)的穩(wěn)定最小誤差已無法達到原先設(shè)定的目標誤差,且相差甚遠,則增大目標誤差后繼續(xù)觀察。鑒于當隱藏層為13~16 層時,在相同參數(shù)下每次測試的數(shù)據(jù)變化過大,且平均誤差過大,表明其實際應(yīng)用價值較低,因此不再遞增層數(shù)繼續(xù)實驗。

        Fig.6 Neural network structure圖6 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)

        取1~16 層數(shù)據(jù)進行研究分析,1~16 層隱藏層層數(shù)下BP 神經(jīng)網(wǎng)絡(luò)誤差MSE 值如圖7 所示,對應(yīng)的R 值如圖8 所示。觀察兩圖可以看出,13~16 層下神經(jīng)網(wǎng)絡(luò)誤差較大,1~12 層下誤差較?。?~11 層下神經(jīng)網(wǎng)絡(luò)擬合度較好,R 值都為1,12~16 層下R 值小于1,且層數(shù)達到14 層以上時,R 值急劇下降。由此可得出結(jié)論:BP 神經(jīng)網(wǎng)絡(luò)隱藏層層數(shù)的遞增與算法性能的提升并不呈正相關(guān)。

        Fig.7 Change of MSE value of the different numbers of hidden layers圖7 不同隱藏層層數(shù)下的MSE值變化情況

        Fig.8 Change of R value of the different numbers of hidden layers圖8 不同隱藏層層數(shù)下的R 值變化情況

        此外,實驗發(fā)現(xiàn),層數(shù)分別取13~16 層時的神經(jīng)網(wǎng)絡(luò)每次測試得到的MSE 值數(shù)量級變化范圍為e-3~e-8。由此可得,雖然此最小誤差與1~12 層時的誤差同級,但平均誤差過大,此時的網(wǎng)絡(luò)穩(wěn)定性差、有過擬合傾向,并且13 層以上的神經(jīng)網(wǎng)絡(luò)訓(xùn)練時間過長,應(yīng)用價值較低。

        為了進一步探究1~12 層范圍內(nèi)的最佳層數(shù),本實驗對圖7 中1~12 層的MSE 值數(shù)據(jù)單獨進行繪制。觀察得到1 層下的MSE 值數(shù)量級為e-6,遠大于2~12 層下的MSE 值數(shù)量級。為了更直觀、清晰地分析最佳層數(shù),取2~12 層數(shù)據(jù),得到如圖9 所示的曲線圖。由圖可以得出,當隱藏層取3、4、8、9 層時,該神經(jīng)網(wǎng)絡(luò)達到最佳預(yù)測精度。由于8、9 層神經(jīng)網(wǎng)絡(luò)訓(xùn)練時間長于3、4 層,可見當隱藏層取3、4 時,該BP 神經(jīng)網(wǎng)絡(luò)預(yù)測結(jié)果達到最佳。為得到較理想的實驗效果,以下實驗中隱藏層層數(shù)都取3 進行研究。

        Fig.9 Change of MSE value of the different numbers of hidden layers from 2 to 12圖9 2~12 不同隱藏層層數(shù)下的MSE 值變化情況

        3.4 不同反向傳播算法在不同數(shù)據(jù)量下的精確性對比

        本實驗采用神經(jīng)元個數(shù)為7、隱藏層層數(shù)為3 的BP 神經(jīng)網(wǎng)絡(luò)對反向傳播算法進行探究。分別針對不同數(shù)據(jù)量,選擇不同的反向傳播算法對神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,旨在探究不同算法在不同數(shù)據(jù)量下的適應(yīng)性與精確性,并驗證基于LM 算法的BP 神經(jīng)網(wǎng)絡(luò)適用于本研究采用的中型網(wǎng)絡(luò)聲源定位模型。

        對于反向傳播函數(shù)[24],本實驗選用trainlm(LevenBerg-Marquard 算法)、trainbr(貝葉斯正則化算法)、trainrp(彈性BP 算法)、trainscg(歸一化共軛梯度法)以及traincgf(Fletcher-Reeves 共軛梯度法)。

        通過實驗發(fā)現(xiàn),對于trainlm 算法,當數(shù)據(jù)量取400~2 800 時,在初始最大迭代次數(shù)(5 000)、目標誤差(4e-6)下,網(wǎng)絡(luò)未達到穩(wěn)定狀態(tài)。調(diào)整目標誤差為4e-7 時,觀察MSE 隨迭代次數(shù)遞增的變化曲線可知,MSE 值穩(wěn)定在1e-6數(shù)量級。通過增加數(shù)據(jù)量,發(fā)現(xiàn)該算法訓(xùn)練達到最大迭代次數(shù)后,其MSE 值在1e-4 數(shù)量級。調(diào)整最大迭代次數(shù)為8 000 后,實驗發(fā)現(xiàn)該網(wǎng)絡(luò)訓(xùn)練過程緩慢,且出現(xiàn)過擬合現(xiàn)象,則適度增大目標誤差、減少迭代次數(shù)??紤]到繼續(xù)增加數(shù)據(jù)量后算法訓(xùn)練時間過長,且誤差并未降低,故本實驗對數(shù)據(jù)量的討論止于4 000。對于其他4 種算法,采取與上述相同的思路進行實驗,得到不同算法在不同數(shù)據(jù)量下的MSE 值與R 值變化情況如圖10、圖11 所示。

        分析圖10、圖11 可知,總體來看,在采用的5 種算法中,trainlm 算法的MSE 值最低,R 值最高。其中,trainbr 算法訓(xùn)練結(jié)果與trainlm 算法較為接近,但由50 次采用相同參數(shù)和數(shù)據(jù)量的測試結(jié)果可得,trainbr 算法的誤差波動較大,沒有trainlm 算法穩(wěn)定。而其余3 種算法trainrp、trainscg、traincgf 與前兩種算法相比,均方誤差均高出兩個數(shù)量級,且R 值都偏小。

        Fig.10 Change of MSE value of different algorithms under different data volumes圖10 不同算法在不同數(shù)據(jù)量下的MSE 值變化情況

        Fig.11 Change of R value of different algorithms under different data volumes圖11 不同算法在不同數(shù)據(jù)量下的R 值變化情況

        此外,通過實驗發(fā)現(xiàn),隨著數(shù)據(jù)量的增加,trainlm 算法和trainbr 算法的MSE 值與R 值在數(shù)據(jù)量約大于2 800 時有輕微振蕩,MSE 值趨于增大,R 值趨于減小。同時,trainrp算法和trainscg 算法的MSE 值趨于減小,R 值趨于增大。由此得出,trainlm 算法和trainbr 算法更適合處理數(shù)據(jù)量較小的數(shù)據(jù)集,而其余3 種算法更適合處理數(shù)據(jù)量較大的數(shù)據(jù)集。

        本仿真實驗構(gòu)建的神經(jīng)網(wǎng)絡(luò)輸入數(shù)據(jù)數(shù)量為3,輸出數(shù)據(jù)數(shù)量為2,神經(jīng)元數(shù)量為7,隱藏層層數(shù)為3,該神經(jīng)網(wǎng)絡(luò)屬于中型網(wǎng)絡(luò)。由此可得,trainrp、trainscg 算法明顯不適用于本實驗的神經(jīng)網(wǎng)絡(luò),而較適用于大型網(wǎng)絡(luò)。traincgf 算法的預(yù)測效果相比這兩者有所提高,但也未達到較高的精確度。相比之下,trainlm、trainbr 算法更適合于本實驗的神經(jīng)網(wǎng)絡(luò),且適合處理數(shù)據(jù)量較小的數(shù)據(jù)集。通過進一步比較,trainlm 算法相比trainbr 算法速度更快且精確度更高,對中型網(wǎng)絡(luò)而言是速度最快的一種訓(xùn)練算法,在訓(xùn)練時間和訓(xùn)練精度上都較適合本研究。

        4 結(jié)語

        在本研究中,使用BP 神經(jīng)網(wǎng)絡(luò)進行聲源定位的準確度已可達到較高水平,R 值可達到1,MSE 值在e-11 數(shù)量級下,位置誤差在毫米范圍內(nèi)。含有3 個隱藏層、每層含7 個神經(jīng)元、反向傳播函數(shù)取LM 的神經(jīng)網(wǎng)絡(luò)是目前適用于此聲源定位場景的最佳網(wǎng)絡(luò)模型。然而,占用內(nèi)存過大是LM算法的缺點,并且若要進一步提高算法精度、提升魯棒性,仍有以下幾方面值得作進一步改進和深入研究:

        (1)本研究是在MATLAB 環(huán)境下進行的仿真實驗,若在實際情況下進行實驗,麥克風(fēng)所接受到的聲音信號除聲源信號外,還包括四周墻壁的反射信號、環(huán)境的噪音信號等。在這種情況下,對聲源位置的預(yù)測將受多方因素干擾,如何結(jié)合去噪算法[25]提取主要聲源特征、建立模型以及維持原聲源定位算法的有效性需要作進一步研究。

        (2)在當前模型下,LM 為較適合的反向傳播函數(shù),而若在更寬闊的場景以及更復(fù)雜的大型網(wǎng)絡(luò)模型情況下,結(jié)合降噪算法,可考慮對反向傳播函數(shù)進行靈活變換,在每一層隱藏層中選取不同的反向傳播函數(shù),將有望提高不同模型下算法的精確性與穩(wěn)定性。

        (3)本研究驗證了LM 算法對中型網(wǎng)絡(luò)的適用性與有效性。在大型網(wǎng)絡(luò)下,LM 算法可考慮通過設(shè)置其內(nèi)部mem-reduc 參數(shù)為大于1 的整數(shù),以將Jacobian 矩陣[26]分為多個子矩陣。而為了降低其占用的內(nèi)存,該方法中的系統(tǒng)開銷與Jacobian 各子矩陣的關(guān)系有待進一步探究。

        猜你喜歡
        數(shù)據(jù)量聲源個數(shù)
        虛擬聲源定位的等效源近場聲全息算法
        怎樣數(shù)出小正方體的個數(shù)
        基于大數(shù)據(jù)量的初至層析成像算法優(yōu)化
        計算Lyapunov指數(shù)的模糊C均值聚類小數(shù)據(jù)量法
        高刷新率不容易顯示器需求與接口標準帶寬
        寬帶信號采集與大數(shù)據(jù)量傳輸系統(tǒng)設(shè)計與研究
        電子制作(2019年13期)2020-01-14 03:15:18
        等腰三角形個數(shù)探索
        怎樣數(shù)出小木塊的個數(shù)
        基于GCC-nearest時延估計的室內(nèi)聲源定位
        電子制作(2019年23期)2019-02-23 13:21:12
        怎樣數(shù)出小正方體的個數(shù)
        亚洲人av毛片一区二区| 娜娜麻豆国产电影| 欧美黑人xxxx又粗又长| 红杏亚洲影院一区二区三区| 精品国产1区2区3区AV| 美女被搞在线观看一区二区三区| 日本五十路人妻在线一区二区| 日本丰满熟妇videossexhd| 亚洲av综合久久九九| 国产免费久久精品99re丫y| av网址大全在线播放| 海外华人在线免费观看| 成人国成人国产suv| 国产精品沙发午睡系列990531| 中文字幕久久久久久精| 91精品国产乱码久久久| 日本最新视频一区二区| 色欲网天天无码av| 青青草原综合久久大伊人| 国内视频偷拍一区,二区,三区| 国内偷拍第一视频第一视频区| 一区二区国产av网站| 日本乱偷人妻中文字幕| 少妇高潮惨叫久久久久久| 中日无码精品一区二区三区| 国产自拍av在线观看| 成熟了的熟妇毛茸茸| 中文字幕无码日韩专区免费 | 日本少妇被黑人xxxxx| 国产精品福利片免费看 | 欧美日韩亚洲精品瑜伽裤| 开心激情站开心激情网六月婷婷| 精品人妻在线一区二区三区在线| 免费人成小说在线观看网站| 亚洲av综合久久九九| 亚洲日本在线va中文字幕| 日本一区二区偷拍视频| 丰满人妻熟妇乱又仑精品| 狠狠色噜噜狠狠狠888米奇视频 | 国产午夜免费高清久久影院| 人妻丝袜无码国产一区|