今回は複素NMFと、複合自己回帰系という2つの手法に基づいた音源分離の話を紹介して頂きました。音源分離はその名前の通り、観測された音声・音響信号を少ない数の音源に分離する技術で、音楽の録音を楽器の音色ごとに分離したり、会議の録音を話者ごとに分離したりするなど様々な応用があります。
NMF (Nonnegative Matrix Factorization; 非負行列分解)は音源分離に頻繁に用いられる手法で、数学的には与えられた非負の要素からなる行列(非負行列)を2つの非負行列の積に分解するというふうに定式化されます。そもそもどうして非負の要素からなる行列を考えるかと言うと、音響信号のフーリエ変換の振幅は負の値を取らないからです。実際の音声信号の振幅スペクトログラムを図1右上に示します。振幅スペクトログラムは縦の長さがフーリエ変換の周波数の数、横の長さが音響信号の長さ(時間)の非負行列です。この図からわかるように、現実の音声信号は異なる周波数の音がばらばらに鳴っているのではなく、かなり規則的にそろって発生しています。このことから、「どの周波数の信号をどれだけ含んでいるか」という情報と「どのタイミングで音が鳴ったか」という情報のペアをひとつの音源とみなし、現実の音声信号を複数の音源の重ね合わせとして表現しようというのが、NMFを用いる動機です。多くの既存研究では振幅スペクトログラムに対してNMFを適用しています(図1右上)。NMFでは前者の「それぞれの音源はどの周波数の信号をどれだけ含んでいるか」という情報を行列Hで、後者の「それぞれの音源はどのタイミングでどの強さで鳴るか」という情報を行列Uで表現します(図1右下)。
既存のNMFは振幅スペクトログラムを対象としているため、観測信号が複数の音源が線形に混ざったものであったとしても、振幅スペクトルの上では線形な混合にならないという問題点がありました。亀岡先生はこの点に注目し、混合の線形性が成り立つ複素スペクトルの上でNMFを定式化することに成功しました[1]。振幅スペクトルの代わりに複素スペクトルを対象にするためには信号の位相を考える必要があります。複素NMFは上述のペアがすべての時間点、周波数において位相の任意性を持っていると考え、これを含めて最適な信号の分解を計算するアルゴリズムになっています。複素NMFでは位相の情報も最適化の中で陽に扱っているので、従来の振幅スペクトログラムに基づくNMFの場合のように後処理で位相を求める必要がありません。
このアルゴリズムを使うと分解した1つ1つの音声信号の成分に対して、音量をコントロールしたりピッチを変更したりすることができます。これらは亀岡先生が作成された MusicFactorizer というツールのデモページで聞くことができます。
後半のお話は、複数の人間が同時に話しているような状況での(複数のマイクの)録音から個々の話者の音声を分離する、いわゆるカクテルパーティー問題が対象です。
ここでの音源とは人間の発する音声ですので、どのような周波数でも好きに組み合わせられるわけではありません。このような音声をモデル化するための有名な手法のひとつとして「自己回帰系」があります。P次の自己回帰系は、白色雑音を入力として、過去P次点前までの出力に依存して現在の出力が決まるような、時系列モデルです。従来の自己回帰系では、入力が白色雑音に限定されているため、P個の自己回帰フィルタ係数で音源の周波数特性を表現する必要がありました。一方、亀岡先生の提案している「複合自己回帰系」モデルは複数の白色とは限らないパワースペクトル密度と、複数の自己回帰フィルタを用意し、その組み合わせで音源を表現します。つまり、あらかじめ多くのパワースペクトル密度と多くの自己回帰フィルタを用意しておけばその組み合わせで各フレームの音源を簡単に表現することができるというわけです。その上、従来はフレームと呼ばれる信号の単位ごとに自己回帰フィルタを計算していたのですが、「複合自己回帰系」では用意しておくパワースペクトル密度や自己回帰フィルタを信号全体で最適化し、フレームをまたいで再利用することができるので無駄がない、というメリットもあります。
ここでの音源とは人間の発する音声ですので、どのような周波数でも好きに組み合わせられるわけではありません。このような音声をモデル化するための有名な手法のひとつとして「自己回帰系」があります。P次の自己回帰系は、白色雑音を入力として、過去P次点前までの出力に依存して現在の出力が決まるような、時系列モデルです。従来の自己回帰系では、入力が白色雑音に限定されているため、P個の自己回帰フィルタ係数で音源の周波数特性を表現する必要がありました。一方、亀岡先生の提案している「複合自己回帰系」モデルは複数の白色とは限らないパワースペクトル密度と、複数の自己回帰フィルタを用意し、その組み合わせで音源を表現します。つまり、あらかじめ多くのパワースペクトル密度と多くの自己回帰フィルタを用意しておけばその組み合わせで各フレームの音源を簡単に表現することができるというわけです。その上、従来はフレームと呼ばれる信号の単位ごとに自己回帰フィルタを計算していたのですが、「複合自己回帰系」では用意しておくパワースペクトル密度や自己回帰フィルタを信号全体で最適化し、フレームをまたいで再利用することができるので無駄がない、というメリットもあります。
このような信号源のモデルに残響のモデルを組み合わせることにより、現実的な環境で従来の方法よりうまく話者を分離できることが分かりました[2]。音声信号処理の伝統的な方法である自己回帰モデルと、少ない数の基底を組みあせて使うという行列分解モデルの考え方がうまく組み合わさって高い性能を出せるという点が非常に興味深いと感じました。
数理6研助教 冨岡亮太
数理6研助教 冨岡亮太
[1] 亀岡弘和, 小野順貴, 柏野邦夫, 嵯峨山茂樹 (2008) 複素NMF: 新しいスパース信号分解表現と基底系学習アルゴリズム. 日本音響学会論文集.
[2] 濱村真理子, 亀岡弘和, 吉岡拓也, ルルージョナトン, 柏野邦夫 (2010) 複合自己回帰系による音声パワースペクトル密度モデルを用いたブラインド音源分離と残響除去. 日本音響学会講演論文集.
[2] 濱村真理子, 亀岡弘和, 吉岡拓也, ルルージョナトン, 柏野邦夫 (2010) 複合自己回帰系による音声パワースペクトル密度モデルを用いたブラインド音源分離と残響除去. 日本音響学会講演論文集.
0 件のコメント:
コメントを投稿