热门问题
时间线
聊天
视角
盲信號分離
来自维基百科,自由的百科全书
Remove ads
盲信號分離(信號分離,盲信號源分離)指的是從多個觀測到的混合信號中分析出沒有觀測的原始信號。通常觀測到的混合信號來自多個傳感器的輸出,並且傳感器的輸出信號獨立(線性不相關)。盲信號的「盲」字強調了兩點:1)原始信號並不知道;2)對於信號混合的方法也不知道[1]。最常用在的領域是在訊號處理[2],且牽涉到對混合訊號的分析。盲信號分離最主要的目標就是將原始的信號還原出原始單一的訊號。[1]一個經典的例子是雞尾酒會效應,當許多人一起在同一個空間裡說話的時候,聽者可以專注於某一個人說的話上,人類的大腦可以即時處理這類的語音訊號分離問題,但是在數位語音處理裡,這個問題還是一個困難的問題。[3]
盲信號分離在早期時集中於研究時間訊號,像是聲音,然而,盲信號分離目前已經可以應用在多維度的資料上,例如圖片和張量這類不含時間維度的數據。[4]
這個問題到目前為止還沒有很好的解決方案,但是在一些特定的情況下,有一些很有用的解決方式。例如,當時間沒有延遲的時候,我們可以採用主成分分析或獨立成分分析。儘管這個問題已經有許多解決方式,科學家們仍然在持續對其進行研究。[5]
Remove ads
問題基本描述
如果可以對信號混合的方式直接建模,當然是最好的方法。但是,在盲信號分離中我們並不知道,信號混合的方式,所以,只能採用統計的方法。算法做出了如下的假定:
具有 個獨立的信號源 和 個獨立的觀察量 ,觀察量和信號源具有如下的關係
其中 , , 是一個 的係數矩陣,原問題變成了已知 和 的獨立性,求對 的估計問題。
假定有如下公式
其中 是對 的估計, 是一個 係數矩陣,問題變成了如何有效的對矩陣 做出估計。[1]
Remove ads
問題基本假設
Remove ads
自然梯度解法
自然梯度法的計算公式為:
其中為我們需要估計的矩陣。為步長,是一個非線性變換,比如
實際計算時y為一個矩陣,m為原始信號個數,k為採樣點個數
1)初始化W(0)為單位矩陣
2)循環執行如下的步驟,直到W(n+1)與W(n)差異小於規定值(計算矩陣差異的方法可以人為規定),有時候也人為規定迭代次數
3)利用公式,(其中)
4)利用公式[1]
Remove ads
深度學習解法
有一部分的論文是用非線性回歸的技術來找出,而說到經典的作法,就要提到 Hershey, John R.的論文[6],要解決的是盲信號分離,作法是將時頻譜的抽樣時刻和頻率,利用神經網路和集群來分成不同群,每一群代表的是哪一個講話者在那個抽樣裡佔了最大的比例,這種方法稱為"deep clustering",有許多論文都是在這上面做延伸[7]。
然而利用時頻譜來作為訊號的特徵有幾項缺點:
- 短時距傅立葉變換是一個通用的訊號轉換,然而在訊號分離的任務上,未必是最佳的訊號特徵。
- 在反短時距傅立葉變換時,需要重建原始訊號的相位(phase),即使可以分離出跟原始信號一樣的時頻譜,然而具有偏差的估計會影響到重建訊號的準確度。
- 利用時頻譜來做訊號分離是需要混和訊號高解析度的頻率分解,要用橫跨較長時間的窗函數來做短時距傅立葉變換,這個會增加系統的延遲,不利於即時的語音處理任務,像是在電信設備中的應用。[8]
這些問題都發生在用時頻譜來做訊號分離,而最直覺的解決方式就是直接在時域上做,這樣就可以避免將聲音的大小聲和相位做分離。其中表現的最好的就是Conv-Tasnet[9]這個方法,Conv-Tasnet可分為三個區塊,編碼器(encoder)、分離器(separator)和解碼器(decoder),編碼器將一小段的混和訊換轉換為在特徵空間(feature space)上的特徵向量,藉由這個特徵向量,分離器要找出一個相對應的遮罩(mask),將特徵向量和遮罩做相乘後,再用解碼器將其轉換為原始訊號源所發出的單一訊號。
Remove ads
歷史
盲信號分離最早由Herault和Jutten在1985年提出,發表在一篇法文雜誌上[10]。隨後他們相繼發表文章對盲信號問題做出分析,提出了一種自適應的方法[11]。其他一些學者對他們的方法進行了分析[12],分析了他們提出的方法的穩定性,在他們工作的基礎上[13],引入了神經網絡的方法對盲信號進行分離,並對其穩定性進行了分析。
參考文獻
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads