スライド 1 - CS17 Ariki Laboratory, Kobe

第12回音声言語シンポジウム
基底の反復生成と教師ありNMFを用いた信号解析
34
○中鹿亘,滝口哲也,有木康雄 (神戸大)
はじめに
[1] P. Smaragdis, 2003
非負値行列因子分解(NMF)による楽音解析[1]
 現在最も主流になっている楽音解析手法
 音楽音響信号のスペクトログラムをNMFによって分解
研究背景
 音楽信号処理の高い関心
 近年,音楽コンテンツが爆発的に増加している
 NMF…非負行列Xを,2つの非負行列W,Hの積に分解するアルゴリズム
 自動採譜技術の期待
 音楽アプリケーションなど,様々なアプリケーションへ応用可能
H
楽音解析
X
 ≒自動採譜
 音響信号(wav)から楽譜信号(midi)への変換
 複数の音が混ざり合う信号から,個別の音を推定する逆問題
・この行列が未知
⇒教師なしNMF
W
・この行列が既知
⇒教師ありNMF
 この分解アルゴリズムを音楽信号に適用
アクティビティ行列
発音時刻などの情報を含む
観測スペクトル
 録音物(wavデータ)から楽譜(midiデータ)へ,自動的に変換する
基底行列
基本周波数の情報を含む
従来手法の問題点
提案手法
1. 教師なしNMFによる楽音解析の問題点
研究の動機
 教師なしNMFの問題点:意図しない基底が現れてしまう
 教師ありNMFの問題点:全ての基底を用意するのは非現実的
⇒ 確率的な生成モデルから,カテゴリ内の基底を全て生成できないか?
楽器や音素など
Eyc, f
スペクトルが倍音成分のみ
⇒音高が求まる
あらゆる音高の
スペクトル
分散と平均で表されるスペクトル包絡
⇒ 本研究では確率スペクトル包絡 (PSE) と呼ぶ
教師なしNMFでは、機械的に分解しているので
意図しない基底が現れてしまう
スペクトルが混在している
⇒音高が求まらない
PSE
ある音高の
微小に変動するスペクトル
提案手法の流れ
 学習ステージと解析ステージに分かれる
2. 教師ありNMFによる楽音解析の問題点
予め基底を学習させる
確率スペクトル包
絡からランダムに
スペクトルを生成
Learning signals
Test signals
STFT
STFT
楽器ごとの学習
用スペクトルを
求める
アクティビティ行列
Basis vectors
generation
unsupervised
NMF
supervised
NMF
教師ありNMFに
よって曲を解析
Distance
Calculation
観測スペクト
ログラムとの
距離を計算
既知
観測スペクトル
確率スペクトル
包絡の学習
基底行列
Gaussian
Process
Iteration
比較的精度は高いが,
全ての基底を用意するのは
現実的ではない
全ての楽器,全ての音高について基底を用意すると
PSEs
データの数が膨大
Separated sources
学習ステージ
解析ステージ
[2] E. Snelson and Z. Ghahramani, 2006
学習ステージ
3.確率スペクトル包絡の学習
1.教師なしNMFにより基底行列を計算
ガウシアンプロセス(GP)で
確率的なスペクトル包絡を近似
( c2 f , c2 f )
( c3 f , c3 f )
学習信号のスペクトログラムを教師なしNMFで分解
10
8
6
ガウス分布に従った確率過程
任意の関数曲線を分散込みで近似できる
データベース
カテゴリごとに学習信号を用意する
学習信号は単旋律


K  k ( f i , f j ) i j , i, j  1,2,n
K*  k ( f* , fi )1i , i  1,2,n
カテゴリ c
us-NMF
Amplitude
( c1 f , c1 f )
通常のGPとSPGP+HSの違い
GP
2
K(x,x’)は
RBFカーネル
0
-2
任意の周波数 f* における予測値 y* は
スペクトルピークの集合Dを用いて計算される
アクティビティ行列
4
0
5
10
15
20
25
Frequency [Hz]
30
35
40
45
50
10
8
学習データ
6
スペクトログラム
基底行列
y
平均曲線  f
分散曲線  f
GP
p ( y* | f* , y, D )  N (  f ,  f )
 f  K* K y
1
 f  k ( f* , f* )  K * K 1 K *T
2.基底行列からスペクトルピークを抽出
Amplitude
ピーク抽出
求めたいもの
4
2
0
-2
倍音とその強度のペア(f,y)を全て抽出
f
スペクトルピーク集合
D  {( fi , yi ) | i  1,..,n}
SPGP
+HS
0
500
1000
1500
2000
2500
Frequency [Hz]
3000
3500
4000
4500
本研究では,分散曲線を精度よく近似するため
ガウシアンプロセスを拡張したSPGP (sparse pseudo-input Gaussian process) +HS [2] を用いる
2010 Toru Nakashika, Ariki Laboratory, Kobe University.
解析ステージ
2.調波フィルタを掛けてスペクトルを生成
3.テストデータに対し教師ありNMFを実行
 調波フィルタはスペクトルの基本周波数を決める
 音高の異なる複数の調波フィルタを掛ける
 テストデータのスペクトログラムをNMFの入力とする
 擬似逆行列より,アクティビティ行列を直接求める
 確率スペクトル包絡から生成された基底行列を使用
調波フィルタは,任意の音高 f 0 について,
混合ガウシアンコンポーネントで計算される
1.確率スペクトル包絡から
ランダムにスペクトル包絡を生成
擬似逆行列を用いた教師ありNMFによる
アクティビティ行列を算出するまでの流れ
テストデータ
 ガウシアンプロセスの予測値 ( f , f ) を用いる
 カテゴリごとに確率スペクトル包絡が存在
 非負擬似正規分布に基づいてランダム生成
 ( f  f0  l )2 
  exp 

2

l
0


H f,f0
1. 擬似逆行列を計算
3. 正規化
H W X
H j ,k
 2  H j ,k
|| H ||
W   (W T W ) 1W T
調波フィルタ H f , f 0
1.2
2. 非負空間へ射影
1
正規分布を基準軸で折り返した確率密度関数
0.8
 N ( y;  ,  )  N ( y; ,  ) ( y  0)
M ( y;  ,  )  
0
( y  0)

H  H  R
スペクトログラム X
0.6
R  {x, x [0, )}
0.4
0.2
0
0
1000
2000
3000
4000
5000
6000
7000
8000
9000
10000
ピッチ付与
1
1
アクティビティ行列
0.9
0.9
0.8
カテゴリC1
H(p)
0.8
ランダム生成
0.7

0.6
0.5
0.4
0.7
0.6
0.5
0.4
0.3
0.3
0.2
0.2
0.1
0.1
0
0
0
500
1000
1500
2000
2500
3000
3500
s-NMF
H
0
500
1000
1500
2000
2500
3000
3500
4000
4500
5000
0.9
0.8
0.7
0.6
0.5
確率スペクトル包絡 E
生成されたスペクトル包絡 e
c1
y, f
Eyc1, f  M ( y;  cf1 , cf1 )
生成された基底スペクトル
c1
y, f
0.4
0.3
0.2
0.1
q
c1
f , f0
0
ecy1, f ~ Eyc1, f
0
2000
4000
6000
8000
10000
12000
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
( f ,  f )
c1
0
c1
0
1000
2000
3000
4000
5000
6000
0.16
0.14
非負擬似正規分布は,非負値をとるスペクトルの生成に相応しい
( c2 f , c2 f )
0.12
0.1
0.08
0.06
0.04
0.02
0
0
1000
2000
3000
4000
5000
1.~3.へ
6000
…
( c3 f , c3 f )
データベース
ランダム基底行列 W
1
p
1
0.9
0.9
解析結果
0.8
0.8
0.7
0.7

0.6
0.5
0.4
カテゴリC2
0.5
0.4
0.3
0.3
0.2
0.2
0.1
0.1
0
c2
0.6
0
0
500
1000
1500
2000
2500
3000
3500
確率スペクトル包絡 Ey, f
c
生成されたスペクトル包絡 e y2, f


0
500
1000
1500
2000
2500
3000
3500
4000
4500
4.選択的アルゴリズムによる最適解探索
5000
 観測スペクトログラムと,WHの距離を計算
 1.~3.を繰り返し,
距離が最も最小となる(W,H)を解析結果とする
c
生成された基底スペクトル q f 2, f0

(Wˆ , Hˆ )  arg min D( X ,W ( p ) H ( p ) )
p
評価実験
 ①piano1で演奏した解析結果の例
 各手法による自動採譜の正解率
正解データ
N  ( N ins  N del )
acc [%] 
100
N
Time
提案手法
80
75
実験1:未学習データへの予測精度をみる実験




Note Number
解析結果
実験結果
70
65
N :全音符数 Nins :挿入誤り数
提案手法により,12秒程度の曲を解析
学習,テスト共にMIDIデータを演奏し,録音
単一楽器(piano1)のみを用いてPSEを学習
様々な環境下で録音された曲を解析し,
提案手法の頑健性をみる
Ndel :削除誤り数
60
55
50
45
40
0
2
4
6
8
10
12
2
4
6
8
10
12
80
80
75
75
①piano1で演奏
②piano2で演奏
③piano3で演奏
70
④残響レベル40で演奏
⑤残響レベル100で演奏
70
65
 比較手法
65
60
60
55
55
50
50
45
45
40
40
0
①教師ありNMF1(piano1のみ学習)
②教師なしNMF
(参考)教師ありNMF2(それぞれの環境で録音した基底を学習)
2
6
8
10
12
0
教師なしNMF
提案手法では,他の手法に比べて頑
健性があることが分かる
実験2:複数の楽器を含む音楽信号を解析する実験
4
教師ありNMF
提案手法では,教師ありNMFとほぼ同じ結果が得られた
確率スペクトル包絡の学習結果
 ピアノとヴァイオリンの2種類の楽器を用いて曲を解析
 比較手法 …教師ありNMF(ピアノとヴァイオリンを予め学習)
使用したデータ:RWCデータベースより
RWC-MDB-C-2001
No. 43: Sicilienne op.78 / Faure, Gabriel
ヴァイオリン
10
10
8
8
6
6
Amplitude
Amplitude
ピアノ
4
2
0
0
0
1000
2000
3000
4000
Frequency [Hz]
5000
6000
7000
8000
⇒楽器カテゴリの特
徴を確率スペクトル
包絡によって捉える
ことが可能
4
2
-2
カテゴリによって確
率スペクトルが異
なっている
-2
0
1000
2000
3000
4000
Frequency [Hz]
5000
6000
7000
8000
正解データのピアノロール
Note Number
解析結果
確率スペクトル包絡から生成されたスペクトルの例
Time
ピアノ(C4)
100
ヴァイオリン(E4)
100
バイオリン
90
90
80
80
70
オリジナル
70
0.1
0.1
0.09
0.09
0.08
0.08
0.07
0.07
0.06
0.06
0.05
0.05
0.04
0.04
0.03
0.03
0.02
0.02
0.01
0.01
60
60
50
50
0
0
0
1000
2000
3000
4000
5000
2
4
6
8
提案手法
10
12
0
2000
3000
4000
5000
1
40
0
1000
ピアノ
0.9
40
0
2
4
6
教師ありNMF
8
10
12
生成された
スペクトル
⇒教師ありNMF
と同程度以上の
性能を持つ
1
0.8
0.9
0.7
0.8
0.6
0.7
0.6
0.5
オリジナルと似
たスペクトルを生
成できている
0.5
0.4
0.4
0.3
0.3
0.2
0.2
0.1
0.1
0
0
1000
2000
3000
4000
5000
0
0
1000
2000
3000
4000
5000
教師ありNMFと近い結果が得られた
2010 Toru Nakashika, Ariki Laboratory, Kobe University.