研究成果デモンストレーション

独立低ランク行列分析(ILRMA)に基づく多チャネルブラインド音源分離

独立成分分析(independent component analysis: ICA)は,録音する際のマイクロホンや音源の位置,部屋の形状等の情報(混合系)が未知の状況でも音源を分離することができる統計的信号処理アルゴリズムです.混合系が未知という条件から,ブラインド信号源分離(blind source separation: BSS)やブラインド音源分離(blind audio source separation: BASS)等と呼ばれます.ICAは「混合前の音源が互いに統計的に独立である(互いになんら関係ない信号源である)」という仮定を活用して,未知の混合系(図中の行列A)に対する逆行列の分離系(図中の行列W)を推定します.

BSSAとICAの図

無響室での録音のように,全く残響のない環境で音源が混合した場合(瞬時混合)は,ICAによるBASSが可能です.しかし,実際の環境では残響が生じ,音源の混合は瞬時混合ではなく畳み込み混合になります.畳み込み混合系の逆系を推定することは通常困難であるため,畳み込み混合を積和混合に変換するために短時間フーリエ変換(short-time Fourier transform: STFT)を用いて時間周波数領域でICAを適用する手法が提案されています.これは周波数領域ICA(frequency-domain ICA: FDICA)と呼ばれます.

FDICAでは,周波数×時間×マイクロホンという3階テンソルにおいて,各周波数で独立にICAを適用し,周波数毎の分離行列を推定することで分離信号を得ます.但し,フーリエ変換された領域なので,複素変数を扱うICAとなり,統計的独立性を仮定するための音源の分布も複素分布となります.

FDICAの図

ICAはそもそも分離信号の順番を決めることができません.ヴァイオリンとピアノの混合信号に対してICAを適用したとき,「分離信号1」と「分離信号2」がそれぞれ「ヴァイオリン」と「ピアノ」と出てくる場合もあれば,順番が逆になる場合もあります.この現象は,FDICAにおいて大きな問題を引き起こします.

FDICAは周波数毎に独立なICAが適用され,結果として得られる分離信号の順番が周波数に対してバラバラになってしまいます.これはパーミュテーション問題と呼ばれ,このまま逆STFTで時間領域に戻しても,正しい分離信号が得られません.そこで,何らかの手法で信号の順番を周波数間でそろえるパーミュテーション解決が必要となります.

パーミュテーション問題の図

上記の問題を解決するために,「音源間の統計的独立性」だけでなく,他の仮定をFDICAに導入することで,分離中にパーミュテーション問題がなるべく起こらない(順番をそろえながら分離する)ようにすることができます.有名な手法は独立ベクトル分析(independent vector analysis: IVA)であり,「同一音源の周波数成分は同時に生起しがちである」という音源に関する仮定が導入されています.

IVAの図

より詳細な音源に関する仮定として,我々は「音源の時間周波数構造は低ランクで精度よく近似できる」という仮定を導入した独立低ランク行列分析(independent low-rank matrix: ILRMA)を提案しています.これは,FDICAとNMFを融合した手法であり,分離信号の時間周波数構造をNMFで低ランク近似することでパーミュテーション問題を回避しながら,独立性により音源を分離するアルゴリズムです.IVAよりも詳細な音源構造を仮定しているため,多くの場合で高い分離精度が得られます.また,ICAやIVAに対する高速な収束性保証付き最適化アルゴリズムとして提案されている反復射影法(iterative projection: IP)を,ILRMAの分離行列の最適化に取り入れることで,計算時間の観点からも実用性の高いBSSとなっています.

ILRMAの図

下記のデモンストレーションでは,音楽信号にインパルス応答を畳み込むことで,実際に残響を含む環境で録音した場合のシミュレーションによる混合信号を生成し,それを分離した結果を示しています.また,NMFを多次元信号用に拡張した有名な音源分離手法である多チャネルNMF(multichannel NMF: MNMF)の結果とも比較しています.

信号は全てRWCPデータベース収録のE2Aインパルス応答(残響時間 300 ms)を畳み込んで作成しました.計算時間はMATLAB 8.3(64-bit)環境でIntel Core i7-4790(3.60 GHz)のCPUで各手法の反復計算式を200回反復更新した場合の例です.実用面では,IVAは30回,ILRMAは100回程度の反復計算で十分な分離性能が得られます.一方,Multichannel NMFは200回の反復でも不十分な場合が多く,最適化の収束が非常に遅い問題があります.

このデモに用いる音楽信号は全てSiSECから学術的研究を目的として拝借いたしました.


2マイクロホンアレーで録音された2音源の分離


入力信号 "bearlin/roads"

入力信号 (Guitar, Vocals)

IVAの分離信号 (計算: 42.2秒)

分離信号 1 (Guitar)

分離信号 2 (Vocals)

MNMFの分離信号 (計算: 312.4秒)

分離信号 1 (Guitar)

分離信号 2 (Vocals)

ILRMAの分離信号 (計算: 56.3秒)

分離信号 1 (Guitar)

分離信号 2 (Vocals)

入力信号 "tamy/que pena tanto faz"

入力信号 (Guitar, Vocals)

IVAの分離信号 (計算: 39.8秒)

分離信号 1 (Guitar)

分離信号 2 (Vocals)

MNMFの分離信号 (計算: 296.2秒)

分離信号 1 (Guitar)

分離信号 2 (Vocals)

ILRMAの分離信号 (計算: 54.7秒)

分離信号 1 (Guitar)

分離信号 2 (Vocals)

入力信号 "another dreamer/the ones we love"

入力信号 (Guitar, Vocals)

IVAの分離信号 (計算: 50.3秒)

分離信号 1 (Guitar)

分離信号 2 (Vocals)

MNMFの分離信号 (計算: 459.8秒)

分離信号 1 (Guitar)

分離信号 2 (Vocals)

ILRMAの分離信号 (計算: 76.5秒)

分離信号 1 (Guitar)

分離信号 2 (Vocals)

入力信号 "fort minor/remember the name"

入力信号 (Violin_synth, Vocals)

IVAの分離信号 (計算: 46.3秒)

分離信号 1 (Violin_synth)

分離信号 2 (Vocals)

MNMFの分離信号 (計算: 411.4秒)

分離信号 1 (Violin_synth)

分離信号 2 (Vocals)

ILRMAの分離信号 (計算: 67.3秒)

分離信号 1 (Violin_synth)

分離信号 2 (Vocals)

入力信号 "ultimate nz tour"

入力信号 (Guitar, Synth)

IVAの分離信号 (計算: 51.7秒)

分離信号 1 (Guitar)

分離信号 2 (Synth)

MNMFの分離信号 (計算: 478.8秒)

分離信号 1 (Guitar)

分離信号 2 (Synth)

ILRMAの分離信号 (計算: 78.5秒)

分離信号 1 (Guitar)

分離信号 2 (Synth)

3マイクロホンアレーで録音された3音源の分離


入力信号 "bearlin/roads"

入力信号 (Guitar, Bass, Vocals)

IVAの分離信号 (計算: 91.6秒)

分離信号 1 (Guitar)

分離信号 2 (Bass)

分離信号 3 (Vocals)

MNMFの分離信号 (計算: 4498.4秒)

分離信号 1 (Guitar)

分離信号 2 (Bass)

分離信号 3 (Vocals)

ILRMAの分離信号 (計算: 121.0秒)

分離信号 1 (Guitar)

分離信号 2 (Bass)

分離信号 3 (Vocals)

入力信号 "another dreamer/the ones we love"

入力信号 (Drums, Guitar, Vocals)

IVAの分離信号 (計算: 106.0秒)

分離信号 1 (Drums)

分離信号 2 (Guitar)

分離信号 3 (Vocals)

MNMFの分離信号 (計算: 8181.2秒)

分離信号 1 (Drums)

分離信号 2 (Guitar)

分離信号 3 (Vocals)

ILRMAの分離信号 (計算: 148.3秒)

分離信号 1 (Drums)

分離信号 2 (Guitar)

分離信号 3 (Vocals)

入力信号 "another dreamer/the ones we love"

入力信号 (Drums, Violin_synth, Vocals)

IVAの分離信号 (計算: 104.3秒)

分離信号 1 (Drums)

分離信号 2 (Violin_synth)

分離信号 3 (Vocals)

MNMFの分離信号 (計算: 7909.7秒)

分離信号 1 (Drums)

分離信号 2 (Violin_synth?)

分離信号 3 (Vocals?)

ILRMAの分離信号 (計算: 147.6秒)

分離信号 1 (Drums)

分離信号 2 (Violin_synth)

分離信号 3 (Vocals)

入力信号 "ultimate nz tour"

入力信号 (Guitar, Synth, Vocals)

IVAの分離信号 (計算: 92.5秒)

分離信号 1 (Guitar)

分離信号 2 (Synth)

分離信号 3 (Vocals)

MNMFの分離信号 (計算: 5927.3秒)

分離信号 1 (Guitar)

分離信号 2 (Synth)

分離信号 3 (Vocals)

ILRMAの分離信号 (計算: 127.1秒)

分離信号 1 (Guitar)

分離信号 2 (Synth)

分離信号 3 (Vocals)

4マイクロホンアレーで録音された4音源の分離


入力信号 "fort minor/remember the name"

入力信号 (Claps, Drums, Violin_synth, Vocals)

IVAの分離信号 (計算: 147.6秒)

分離信号 1 (Claps)

分離信号 1 (Drums)

分離信号 2 (Violin_synth)

分離信号 3 (Vocals)

MNMFの分離信号 (計算: 10051.1秒)

分離信号 1 (Claps)

分離信号 1 (Drums)

分離信号 2 (Violin_synth)

分離信号 3 (Vocals)

ILRMAの分離信号 (計算: 203.8秒)

分離信号 1 (Claps)

分離信号 1 (Drums)

分離信号 2 (Violin_synth)

分離信号 3 (Vocals)

入力信号 "ultimate nz tour"

入力信号 (Bass, Drums, Guitar, Vocals)

IVAの分離信号 (計算: 131.6秒)

分離信号 1 (Bass)

分離信号 1 (Drums)

分離信号 2 (Guitar)

分離信号 3 (Vocals)

MNMFの分離信号 (計算: 7618.6秒)

分離信号 1 (Bass?)

分離信号 1 (Drums)

分離信号 2 (Guitar?)

分離信号 3 (Vocals)

ILRMAの分離信号 (計算: 174.1秒)

分離信号 1 (Bass)

分離信号 1 (Drums)

分離信号 2 (Guitar)

分離信号 3 (Vocals)

ソースコード

参考文献

ICA
  • P. Comon, "Independent component analysis, a new concept?" Signal Process., vol. 36, no. 3, pp. 287–314, 1994.
FDICA
  • P. Smaragdis, "Blind separation of convolved mixtures in the frequency domain," Neurocomputing, vol. 22, pp. 21–34, 1998.
IVA
  • T. Kim, T. Eltoft, and T.-W. Lee, "Independent vector analysis: An extension of ICA to multivariate components," in Proc. Int. Conf. Independent Compon. Anal. Blind Source Separation, pp. 165–172, 2006.
  • A. Hiroe, "Solution of permutation problem in frequency domain ICA using multivariate probability density functions," in Proc. Int. Conf. Independent Compon. Anal. Blind Source Separation, pp. 601–608, 2006.
  • T. Kim, H. T. Attias, S.-Y. Lee, and T.-W. Lee, "Blind source separation exploiting higher-order frequency dependencies," IEEE Trans. Audio, Speech, Lang. Process., vol. 15, no. 1, pp. 70–79, 2007.
ICA・IVAにおけるIP
  • N. Ono and S. Miyabe, "Auxiliary-function-based independent component analysis for super-Gaussian sources," in Proc. Int. Conf. Latent Variable Anal. and Signal Separation, pp. 165–172, 2010.
  • N. Ono, "Stable and fast update rules for independent vector analysis based on auxiliary function technique," in Proc. IEEE Workshop on App. of Signal Process. to Audio and Acoust., pp. 189–192, 2011.
MNMF
  • H. Sawada,H.Kameoka, S.Araki, and N. Ueda, "Multichannel extensions of non-negative matrix factorization with complex-valued data," IEEE Trans. Audio, Speech, Lang. Process., vol. 21, no. 5, pp. 971–982, 2013.
ILRMA
  • D. Kitamura, N. Ono, H. Sawada, H. Kameoka, and H. Saruwatari, "Efficient multichannel nonnegative matrix factorization exploiting rank-1 spatial model," in Proc. IEEE Int. Conf. Acoust., Speech, Signal Process., pp. 276–280, 2015.
  • D. Kitamura, N. Ono, H. Sawada, H. Kameoka, and H. Saruwatari, "Determined blind source separation unifying independent vector analysis and nonnegative matrix factorization," IEEE/ACM Trans. Audio, Speech, and Lang. Process., vol. 24, no. 9, pp. 1626–1641, 2016.
  • D. Kitamura, N. Ono, H. Sawada, H. Kameoka, and H. Saruwatari, "Determined blind source separation with independent low-rank matrix analysis," Audio Source Separation, S. Makino, Ed. (Springer, Cham, 2018), pp. 125–155.