NLP中關於語音的部分,其中重要的一點是語音信號從背景噪音中分離。好比在一個辦公室場景中,有白天的底噪-相似於白噪音的噪音、空調的聲音、鍵盤的啪啪聲、左手邊45度7米元的地方同事討論的聲音、右手邊1.5米遠處同事討論的聲音、打印機的聲音。各類聲音混雜在一塊兒,從天然人的角度來分別,很容易作到區分各類聲音。html
以天然人的觀點來看,不自覺的感知中使用了空間傳播模型和聲音模式識別,具體的機理暫時沒能搞清楚。以通常人的能力看來,區分特定的人的聲音是簡單從容的,通常只要記得曾經聽過便可。且能夠在嘈雜的環境中持續的聽清楚這我的的說話聲。前端
在嘈雜的環境中,人們很是善於把注意力集中在某個特定的人身上,在心理上"屏蔽"全部其餘語音和聲音。這種能力被稱爲雞尾酒會效應,它是咱們人類與生俱來的本領。然而,儘管關於自動語音分離(將音頻信號分離爲單獨的語音源)的研究已經很是深刻,這個課題還是計算機領域的一項重大挑戰。算法
從聲音到語義,以此通過音素分析、單詞識別、句子識別、語義理解過程。框架
鎖相環-信號跟蹤工具
模式識別從另外一個方面來源於自動化技術,主要研究控制系統的自動化仍爲廣泛的模式識別科學不少的啓示。
post
信號分離是一種模式識別方案,鎖相環是一個反饋控制系統,本應該不相交。不過語音信號分離能夠看作一種語音信號的鎖定和跟蹤技術。 參考: 鎖相環的基本組成和工做原理 。
學習
鎖相環路是一種反饋控制電路,簡稱鎖相環(PLL)。鎖相環的特色是:利用外部輸入的參考信號控制環路內部振盪信號的頻率和相位。優化
因鎖相環能夠實現輸出信號頻率對輸入信號頻率的自動跟蹤,因此鎖相環一般用於閉環跟蹤電路。鎖相環在工做的過程當中,當輸出信號的頻率與輸入信號的頻率相等時,輸出電壓與輸入電壓保持固定的相位差值,即輸出電壓與輸入電壓的相位被鎖住,這就是鎖相環名稱的由來。google
鎖相環一般由鑑相器(PD)、環路濾波器(LF)和壓控振盪器(VCO)三部分組成,鎖相環組成的原理框圖如圖8-4-1所示。url
鎖相環中的鑑相器又稱爲相位比較器,它的做用是檢測輸入信號和輸出信號的相位差,並將檢測出的相位差信號轉換成uD(t)電壓信號輸出,該信號經低通濾波器濾波後造成壓控振盪器的控制電壓uC(t),對振盪器輸出信號的頻率實施控制。
鎖相環的應用:應用集中在如下三個方面:第一 信號的調製和解調;第二 信號的調頻和解調;第三信號頻率合成電路。
信號分離基礎
信號分離的模式識別基礎認知爲模式分解的方法,通常能夠把信號分解爲更小尺度的基信號,經過基信號的組合模式進行模式識別。經過識別不一樣的模式來進行信號分離。
參考:信號分離研究內容基礎1、;信號分離研究內容基礎、2;講解的通俗易懂。
到目前爲止,咱們將現有的信號分析方法分爲6大類方法:
一、最大後驗機率的方法MAP(Maximal aposterior probability)
二、基於稀疏性的表示方法 Sparsity based method:based onsparse representation(根源於小波的表示)
三、基於新的範數(度量)的方法,Norm based method:based on newnorm
四、經驗的方法,Empirical method:EMD etc(告訴你怎麼算,可是不知道怎麼辦)
五、變分框架分解方法,VMD
六、基於一些數學工具,Other method:basis,frame,ICA(小波基,框架,ICA)
(6)現有數學手段
基於數學工具的方法是你們用的最多,可是經常忘記的方法,如降維方法中的PCA,SVD方法,盲分離方法ICA,FastICA方法等等。幾乎全部的降維算法都能用於信號分離,如流行學習的算法。同時包括一些框架的算法,這些方法就是傳統數學理論的運用,這裏就很少講了。
最後總結下現有信號處理方法的現狀和進展,如下我的觀點,請辯證的閱讀,若有錯誤,做者本人不承擔任何責任。
基於深度學習的語音分離
對於採樣頻率通常固定的聲音採樣,固定模式的聲音所以是變長的,RNN的循環結構能夠用於處理變長模型,基於保留殘差改進爲LSTM模型。
參考:搜狗研究員講解基於深度學習的語音分離技術 。文章很長,慢慢地看。
技術詞彙:頻譜映射 方法
根據干擾的不一樣,語音分離任務能夠分爲三類:
當干擾爲噪聲信號時,能夠稱爲 「語音加強」(Speech Enhancement)
當干擾爲其餘說話人時,能夠稱爲 「多說話人分離」(Speaker Separation)
當干擾爲目標說話人本身聲音的反射波時,能夠稱爲 「解混響」(De-reverberation)
因爲麥克風採集到的聲音中可能包括噪聲、其餘人說話的聲音、混響等干擾,不作語音分離、直接進行識別的話,會影響到識別的準確率。所以在語音識別的前端加上語音分離技術,把目標說話人的聲音和其它干擾分開就能夠提升語音識別系統的魯棒性,這從而也成爲現代語音識別系統中不可或缺的一環。
基於深度學習的語音分離,主要是用基於深度學習的方法,從訓練數據中學習語音、說話人和噪音的特徵,從而實現語音分離的目標。
練目標包括兩類,一類是基於 Mask 的方法,另外一類是基於頻譜映射的方法。
..............
若是使用頻譜映射,分離問題就成爲了一個迴歸問題。
頻譜映射可使用幅度譜、功率譜、梅爾譜以及 Gammatone 功率譜。Gammatone 是模擬人耳耳蝸濾波後的特徵。爲了壓縮參數的動態範圍以及考慮人耳的聽覺效應,一般還會加上對數操做,好比對數功率譜。
基於頻譜映射的方法,是讓模型經過有監督學習,本身學習有干擾的頻譜到無干擾的頻譜(乾淨語音)之間的映射關係;模型能夠是 DNN、CNN、LSTM 甚至 GAN。
.......................
最後,文仕學給你們留了兩個思考題,歡迎你們在評論區給出本身的看法。
第一個問題是語音分離任務中,是按傳統思路先變換到頻域,而後在頻域上進行處理,仍是直接在時域上處理比較好?後者的好處是端到端訓練,不用考慮頻域方法作傅立葉反變換時相位的問題。
第二個問題是對於語音加強任務,應該使用真實噪聲加噪仍是使用人工仿真生成的噪聲進行降噪?
語音分離-噪聲中分離
參考一箇中文簡介:語音分離-從噪聲中分離,沒有仔細看。
單聲道語音分離,通常用到兩種技術:語音加強,和計算聽覺場景分析。
語音加強經過分析語音和噪聲的通常統計量,從帶噪語音中估計噪聲,進而從帶噪語音中減去噪聲估計,獲得目標語音。其中最簡單的也是使用最普遍的技術是譜減,它估計噪聲的功率譜,從帶噪語音中減去噪聲獲得目標語音。
計算聽覺場景分析模擬了人類聽覺系統的場景分析過程,它將聽覺場景分析分紅分段(segmentation)和組織(grouping)兩個步驟,首先利用時間連續性及諧波特性等信息,將語音信號分解成獨立的來自於單個聲源的片斷,再根據語音基音(pitch)以及語音開始(onset)和結束位置(offset)等線索,將語音片斷組織鏈接起來。這些鏈接起來的語音就是分離獲得的目標語音。
GitHub上的開源代碼:
使用其餘感知進行輔助
1.MIT提出像素級聲源定位系統PixelPlayer:無監督地分離視頻中的目標聲源:
論文連接:https://arxiv.org/pdf/1804.03160.pdf
項目地址:http://sound-of-pixels.csail.mit.edu/
2. GoogleAI技術:google 指哪兒看哪兒,多重信號分離
論文地址:https://arxiv.org/pdf/1804.03619.pdf