肖景芬,夏斌
(上海海事大學(xué) 信息工程學(xué)院,,上海 201306)
摘要:由于身體原因?qū)е聼o法進(jìn)行語音交流的群體越來越受到大家的關(guān)注,,為了這部分群體能重新使用語音交流,科研工作者們進(jìn)行了各種嘗試性研究,。以前的研究主要圍繞著肌電信號與語音信號間的映射關(guān)系,,而本文是通過深度神經(jīng)網(wǎng)絡(luò)建立語音信號與腦電信號間的映射關(guān)系。將從語音中提取的特征作為前饋神經(jīng)網(wǎng)絡(luò)的輸入,,將腦電信號的特征作為輸出目標(biāo)建立模型,。對回歸預(yù)測的模型使用R-square進(jìn)行評估,R-square的值達(dá)到了0.75,。
關(guān)鍵詞:語音信號,;腦電信號;回歸預(yù)測,;深度神經(jīng)網(wǎng)絡(luò)
0引言
語音是人類最方便,、最自然的交流方式。但是對于那些失語,,不方便直接進(jìn)行語音交流的特殊人群,,這種交流方式就變得十分困難了。不少科研人員對此進(jìn)行了研究,。JOHNER C等人[1]利用獲取的肌電信號訓(xùn)練模型,,從而判斷正常的語音中句子的正誤,并且區(qū)分語音中正常的詞語和強(qiáng)調(diào)的詞語。而在參考文獻(xiàn)[2]中,,JANKE M等人使用深度神經(jīng)網(wǎng)絡(luò)建立從臉部的肌電信號到語音信號的轉(zhuǎn)換關(guān)系,。此文具有很大的參考意義。文中提出了直接從肌電信號到語音信號的映射方法,,從多個肌電信號通道中提取特征,,通過前饋神經(jīng)網(wǎng)絡(luò)[3],,實現(xiàn)了輸入肌電信號輸出語音。文中還對輸出的語音信號進(jìn)行了兩種方式的評價:MelCepstral Distortion[4] 得分和人為聽語音評分[5],。參考文獻(xiàn)[6]中使用了電磁關(guān)節(jié)造影術(shù)采集數(shù)據(jù),,提取特征合成語音信號。
上述研究中主要從肌電信號出發(fā),,研究語音信號和肌電信號之間的關(guān)系,。而本文從另外一個角度——腦電信號數(shù)據(jù)出發(fā),研究語音信號和腦電信號(EEG signals)之間的關(guān)系,。本文分別對語音信號和腦電信號提取特征,,建立語音信號與腦電信號特征間的映射關(guān)系,最后使用R-square方法評估此回歸映射模型效果,。
1方法概述
深度神經(jīng)網(wǎng)絡(luò)是一種多層判別模式模型,,每層都是由多個神經(jīng)元組成的。模型的底層是可見的輸入層h0,,接下來是L層的隱藏層h1,h2,…,hL,,最后一層是輸出層hL+1。此處考慮的是全連接的前饋深度神經(jīng)網(wǎng)絡(luò):前一層中每個神經(jīng)元都和下一層的神經(jīng)元連接著,,同一層的神經(jīng)元間沒有連接,。在訓(xùn)練過程中,模型學(xué)習(xí)到連接權(quán)重矩陣,,通常是使用后向傳播(BP)算法,。w(l)i,j表示l-1層的神經(jīng)元i連接l層神經(jīng)元j的權(quán)重值。對比簡單的神經(jīng)網(wǎng)絡(luò),,深度神經(jīng)網(wǎng)絡(luò)具有多于2層的隱藏層,。
對于每一層的每個神經(jīng)元i,除了輸入層都有一個激活函數(shù)σ和一個偏置量bi,神經(jīng)元和權(quán)重相乘后,,將其結(jié)果作為激活函數(shù)的輸入得到的就是神經(jīng)元的輸出結(jié)果,。對于l層神經(jīng)元i的輸出等式為:
其中nl-1是hl-1層的神經(jīng)元數(shù)目。
使用深度神經(jīng)網(wǎng)絡(luò)處理回歸預(yù)測問題時,,它的輸入神經(jīng)元是輸入數(shù)據(jù)的值,,通過訓(xùn)練整個模型,讓輸出層的輸出值擬合輸出數(shù)據(jù)值,。具體細(xì)節(jié)可以查看參考文獻(xiàn)[7],。
深度神經(jīng)網(wǎng)絡(luò)(DNN)訓(xùn)練通常是復(fù)雜的難題,因為如果初始化權(quán)重較大的話通常會導(dǎo)致較差的局部最優(yōu)值,,而較小的初始化權(quán)重得到的梯度較小,,這樣在訓(xùn)練多個隱藏層時行不通[8]。通常使用BP算法來訓(xùn)練整個網(wǎng)絡(luò),,一般選擇連續(xù)添加各層網(wǎng)絡(luò),。首先,,網(wǎng)絡(luò)只由輸入層 h0,、第一個隱藏層h1,,最后是輸出層hL+1組成。初始網(wǎng)絡(luò)模型是隨機(jī)初始化,,使用BP算法進(jìn)行精調(diào),。然后,加入下一層,,這樣新的網(wǎng)絡(luò)模型有輸入層h0,,接著是兩個隱藏層h1、h2,最后是輸出層hL+1,。從輸入層h0到第一個隱藏層h1的連接權(quán)重矩陣就是剛才訓(xùn)練得到的權(quán)重矩陣,,其他的權(quán)重仍然是隨機(jī)初始化得到的。然后利用BP算法進(jìn)行網(wǎng)絡(luò)模型的精調(diào),。整個處理過程一直重復(fù),,直到所有的隱藏層都被添加進(jìn)網(wǎng)絡(luò)模型中。輸入和輸出數(shù)據(jù)在加入網(wǎng)絡(luò)模型前進(jìn)行了zscores歸一化處理,。
在每一步中權(quán)重都是使用均值為0.000 1,、方差為1的標(biāo)準(zhǔn)高斯分布進(jìn)行隨機(jī)初始化。預(yù)測值和實際值間使用均方誤差(MSE)作為誤差標(biāo)準(zhǔn),。
圖1顯示了使用的五層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),,用于建立語音信號特征與腦電信號特征間的映射關(guān)系。
訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型建立腦電信號特征和語音信號特征映射關(guān)系,,即如果G(xi)表示映射,,則映射的誤差為:
此處,w(n)和b(n)分別表示隱藏層和輸出層的權(quán)重矩陣和偏置矩陣,。ReLu[9]表示Rectified Linear Units激活函數(shù),,ReLu(x)=max(0,x)。
2實驗數(shù)據(jù)及其處理
本文用到的數(shù)據(jù)集是圖賓根大學(xué)采集的受試母語為意大利語的語音和腦電信號,。實驗過程中一邊播放語音信號,,一邊采集受試者的腦電信號。腦電信號有12個通道的數(shù)據(jù),,信號的采樣率為200 Hz,。每段語音信號的長度都不一樣。在播放的句子中有正確的和錯誤的,,本研究中取的是正確的句子,。對于每個語音信號都取出對應(yīng)的腦電信號。
對于每個語音和腦電信號樣本都作光滑處理,,語音信號和腦電信號處理方法一樣,。以語音信號處理方法為例,,為了處理語音信號,需要對語音信號進(jìn)行加窗,,也就是一次僅處理一個窗中的數(shù)據(jù),。因為實際的語音信號比較長,不能也不必對非常長的數(shù)據(jù)進(jìn)行一次性處理,。實際解決方法就是每次取一段數(shù)據(jù)進(jìn)行分析,,然后再取下一段數(shù)據(jù)進(jìn)行分析。本文中選用的是漢明窗進(jìn)行數(shù)據(jù)截取,。它主要部分的形狀類似于sin(x)函數(shù)在0~π區(qū)間的形狀,,而其他部分都是0。這樣的函數(shù)乘上其他任何一個函數(shù)f,,f只有一部分有非零值,。因為會對漢明窗中的數(shù)據(jù)進(jìn)行FFT處理,假設(shè)一個窗內(nèi)的信號代表一個周期的信號,,這樣窗的左端和右端應(yīng)該大致能連在一起,。而通常一小段音頻數(shù)據(jù)沒有明顯的周期性,加上漢明窗后,,數(shù)據(jù)形狀就有周期感,。但是加上漢明窗后,只有中間的數(shù)據(jù)體現(xiàn)出來,,而造成兩邊的數(shù)據(jù)信息丟失,,所以移窗的時候,只會移窗口部分?jǐn)?shù)據(jù),,這樣被前一幀或兩幀丟失的數(shù)據(jù)又重新得到體現(xiàn),。
本文中語音信號和腦電信號取0.2 s的數(shù)據(jù)作為一個小樣本,滑動窗口為0.01 s,。這樣一段語音信號中就包含了多個小樣本,。同樣的一段腦電信號中也包含了多個小的腦電信號樣本。由于腦電信號和語音信號采樣率相差過大,,每段語音信號及對應(yīng)腦電信號在滑動窗口后劃分的小樣本數(shù)有時會相差1(由于采樣率乘以窗口時長不是一個完整的樣本,,因此舍去),最終語音信號和腦電信號的樣本數(shù)不相等,。在每段語音信號和對應(yīng)的腦電信號劃分的小樣本過程中,,都取樣本數(shù)中的最小值處理。比如某段語音信號有33個小樣本,,而腦電信號只有32個小樣本,,就取語音信號的前32個樣本和腦電信號的前32個樣本。經(jīng)過上述處理后,,整個數(shù)據(jù)集樣本數(shù)為6 601,。對于語音信號和腦電信號樣本都進(jìn)行短時傅里葉變換預(yù)處理,。數(shù)據(jù)預(yù)處理后語音數(shù)據(jù)集維度為6 601×4 411,腦電信號數(shù)據(jù)集維度為6 601×252,。將數(shù)據(jù)集進(jìn)行28分后,,使用前饋深度神經(jīng)網(wǎng)絡(luò)進(jìn)行建模。輸入為語音特征數(shù)據(jù),,腦電特征數(shù)據(jù)作為輸出,。神經(jīng)網(wǎng)絡(luò)的隱藏層結(jié)構(gòu)為800,、500,、300,學(xué)習(xí)率為0.001,,迭代次數(shù)為300,。
3實驗結(jié)果
回歸預(yù)測結(jié)果評估方法[10]有SSE(誤差平方和)、MSE(均方差),、RMSE(均方根誤差),、Rsquare(確定系數(shù))。SSE計算的是預(yù)測數(shù)據(jù)和原始數(shù)據(jù)對應(yīng)點的誤差平方和,;MSE計算的是預(yù)測數(shù)據(jù)和原始數(shù)據(jù)對應(yīng)點誤差平方和的均值,,即MSE=SSE/n;RMSE即回歸系統(tǒng)的擬合標(biāo)準(zhǔn)差,,是MSE的平方根;SSR為預(yù)測數(shù)據(jù)與原始數(shù)據(jù)均值之差的平方和;SST為原始數(shù)據(jù)與原始數(shù)據(jù)均值之差的平方和,。它們之間的關(guān)系為:SST=SSE+SSR,Rsquare=SSR/SST,。
Rsquare可以直接表示擬合的模型是否描述數(shù)據(jù),。而SSE、MSE,、RMSE則必須和數(shù)據(jù)本身進(jìn)行對比之后才有價值,。因為如果數(shù)據(jù)值本來就很小,SSE,、MSE,、RMSE的值也會很小,這樣就失去了原本用來評估回歸模型的意義,。而Rsquare是通過數(shù)據(jù)的變化來表征一個擬合的好壞,,不會受數(shù)據(jù)值大小影響。由上面的表達(dá)式可以知道Rsquare的取值越接近1,,表明方程的變量對因變量的解釋能力越強(qiáng),,訓(xùn)練模型對數(shù)據(jù)擬合得也較好。所以在本文中使用Rsquare評估訓(xùn)練模型,,前饋深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練模型的Rsquare值為0.750 732 868 52,。圖2,、圖3分別展示了腦電信號特征的預(yù)測值和實際值。
圖2和圖3為分別對腦電信號特征的預(yù)測值和實際值做處理后的結(jié)果,。由于所做的回歸預(yù)測是高維數(shù)據(jù)的回歸預(yù)測,,如果直接畫圖的話,數(shù)據(jù)都堆在一起無法展示出效果,,因此把1 320×252維的預(yù)測腦電信號特征數(shù)據(jù)整理成332 640×1維的數(shù)據(jù),,即把所有列的數(shù)據(jù)展開。從圖中可以明顯看出腦電信號特征預(yù)測值和實際值的相似性,。
4結(jié)論
本文的語音到腦電信號特征的轉(zhuǎn)換回歸預(yù)測實驗得出了比較好的結(jié)果,。盡管不能直接看到回歸預(yù)測得到的語音信號,但是結(jié)果表明腦電和語音之間確實有著一定的關(guān)聯(lián),,這對于失語病人或直接語音交流不方便但思想正常的病人來說,,以后重新通過語音交流不再是夢想。接下來的工作是通過更好地處理實驗數(shù)據(jù)以及進(jìn)一步地將腦電特征直接轉(zhuǎn)換為語音信號,,實現(xiàn)直接的腦電信號轉(zhuǎn)換為語音信號輸出,。
參考文獻(xiàn)
[1] JOHNER C, JANKE M, WAND M, et al. Inferring prosody from facial cues for EMG-based synthesis of silent speech[C]. Proceedings of 4th International Conference on Applied Human Factors and Ergonomics, 2012:5317 5326.
?。?] JANKE M, SCHULTZ T. Direct conversion from facial myoelectric signals to speech using deep neural networks[C]. International Joint Conference on Neural Networks, 2014:1 7.
?。?] BEBIS G, GEORGIOPOULOS M. Feed forward neural networks: why network size is so important[J]. IEEE Potentials, 1994(4):27 31.
?。?] KUBICHEK R F. Mel cepstral distance measure for objective speech quality assessment[C]. IEEE Pacific Rim Conference on Communication Computers and Signal Processing, 1993:125 128.
?。?] KRAFT S, ZLZER U. BeaqleJS: HTML5 and JavaScript based framework for the subjective evaluation of audio quality[C]. Linux Audio Conference, 2014.
[6] BOCQUELET F, HUEBER T, BADIN P, et al. Robust articulatory speech synthesis using deep neural networks for BCI applications[C]. Interspeech 2014,, 15th Annual Conference of the International Speech Communication Association, Singapour, 2014.
?。?] LAROCHELLE H, BENGIO Y, LOURADOUR J, et al. Exploring strategies for training deep neural networks[J]. Journal of Machine Learning Research, 2009:10(10):1 40.
[8] HINTON G E,, SALAKHUTDINOV R R. Reducing the dimensionality of data with neural networks[J]. Science, 2006,313(5786):504 507.
?。?] GLOROT X, BORDES A, BENGIO Y. Deep sparse rectifier neural networks[C]. 14th International Conference on Artificial Intelligence and Statistics, 2011:315 323.
[10] HYNDMAN R J, KOEHLER A B. Another look at measures of forecast accuracy[J]. International Journal of Forecasting,,2006,,22(4):679 688.