>100 Views
November 25, 24
スライド概要
日本大学 文理学部 情報科学科 北原研究室。 「Technology Makes Music More Fun」を合言葉に、音楽をはじめとするエンターテインメントの高度化に資する技術の研究開発を行っています。
ギター音源からベース音源の生 成:NMFを用いた改善の検討 日本大学大学院 香西智雄、小口純矢、北原鉄朗
研究背景 ギターリストの中にはギターで作曲を楽しむ人が居る。 だが、編曲するとなると、音楽知識を要する。 知識いらずで自動バンド編曲してくれるシステムがあれば より音楽を楽しむ幅を広げられる。 その初歩として、入力のギター音源に対応するベース音源 を生成するシステムを作る。 予測 入力 出力
入力想定するギター音源と 期待する出力ベース音源の品質 ギター、ベース共に大きく分けて、3レベルに定義する。 ギター ベース レベル1 スローテンポ コード進行がシンプル 繰り返しが多い スローテンポ コード進行がシンプル ルート弾きが多い レベル2 ハイテンポ 動きの少ないリフがある アルペジオがある ハイテンポ 多様なフレーズ レベル3 変拍子 短いスパンで転調を繰り返す スラップ等の技術が入ってい る 本研究では、ギター、ベース共にレベル2までを目標とし て取り組む。
今までの取り組み ギターのクロマグラムからベースのスペクトログラムを推測さ せるCNNを作成して行っていた。 結果として、単調なベースラインの生成しかできなかった。 実際の音源 入力: mix: ベース音のスペクトログラムを直接CNNで学習させたことが要因の 一つだと考えられる。 そこで、スペクトログラムに混在する演奏情報を分解するアル ゴリズムである非負値因子行列分解(NMF)を適用し、演奏内容 を抽出させて学習させることで、ギターの演奏内容を踏まえた ベース音源の生成ができると考えた。
今までの取り組み CNN 学習データ フィルター 層 クロマグラム 変換 逆フィル ター層 特徴量 圧縮 復元 特徴量抽出 正解データ この部分にNMFを適用 フーリエ 変換 予測結果 一致するよう学習する
非負値因子行列分解(NMF) NMFとは、スペクトログラムを二つの行列に分解する手法。 基底行列:各音の音色を表す アクティベーション行列:各音の発音時刻・強さを表す 主に音源分離で使われることが多い。 基底行列 NMF アクティベー ション行列
提案システム ギ タ | 音 源 クロマ グラム 特徴量 抽出 発音 強度 予測 アクティベーション 行列 VAE ベースの 全音域を含む 基底行列 振幅 スペクトル 行列 位相 復元 ベース 音源
ベースの全音域を含む基底行列の作成 本来、NMFは一つの楽曲に適用し、その楽曲に特化した基底 行列・アクティベーション行列を作成する。 そのため、それぞれ別の楽曲から取った基底行列・アクティ ベーション行列を掛け合わせても、音源は復元できない。 楽曲1 NMF 基底行列 楽曲2 NMF アクティ ベーション行列 そこで、ベースの全音域を含む基底行列を作成し、その基底 行列を用いて、半教師有りNMFでアクティベーション行列を 作成する。
ベースの全音域を含む基底行列の作成 ベースの全音域を含む楽曲を作成した。 作成ソフト pretty_midiライブラリ 音域 B0~C5 使用したベースの音色 エレキベースの指弾き・ ピック弾き 作成した音源に対して、NMFを適用し、ベースの全音域を 含む基底行列を作成する。 音源が複数ある場合は、音源の振幅スペクトルを結合させて、一つ の音源として扱う。
VAE VAE デコーダ部 全結合 層 エンコーダ部 学習データ クロマ グラム 畳み込み層 発音 強度 畳み込み層 Concate nate 逆畳み込み層 正解データ ベースの 全音域を含む 基底行列 半教師有り NMF 潜在 変数 リシェイプ 層 アクティベー ション行列
データセット ヤマハミュージックデータショップで売られているThe Bealtesの演奏楽器用のMIDIデータ26曲からベース、ギター 音源をwav音源に変換したものを扱った。 学習データ数 14曲 検証データ数 12曲 BPM 120 wav変換時に使用したライブラリ FluidSynthライブラリ soundfont FluidR3_GM.sf2
実験 以下の条件でモデルの精度を検証した。 1. 学習データにローパスフィルタを適用した音源と、さらにローパ スフィルタ+低周波数を強調した音源 2. 学習データにハイパスフィルタを適用した音源と、さらにハイパ スフィルタ+高周波数を強調した音源 3. 検証データ 実験条件1・2は、学習データに対してどれだけ変化を加えたら、 モデルの予測結果に影響が出るのかを検証する。 実験条件1・2に関しては、学習データ内の三つの音源に対して、 フィルタを適用した。
評価指標 以下の評価指標で生成されたベース音源を評価した。 1. 生成されたベース音源のリズムが合っているかどうか(リズム一致 率) 音源のピーク検出を行い、検出されたピークがビートグリッド(8分音符間 隔)と一致している割合で評価した。 2. 入力のギターコードの構成音を含んだベース音を生成できているか ギターのクロマグラムからエネルギーが強い上位三つの音高に、ベースの クロマグラムのエネルギーが最も強い音高が含まれているかの全体の割合 で評価した。(クロマ一致率) 実験条件1・2に関しては、予測アクティベーション行列と正解アクティ ベーション行列との一致率で評価した。(アクティベーション一致率)
実験結果:実験条件1 生成音源の30秒~38秒間の発音強度 ローパスフィルタのみ 入力: mix: リズム一致率 96% アクティベーション一致率 87% 赤点線:ビートグリッド、青線:発音強度 元音源のクロマ分布(期待値) 生成音源のクロマ分布
実験結果:実験条件2 楽曲の30秒~38秒間の発音強度 ハイパスフィルタのみ 入力: mix: リズム一致率 95% アクティベーション一致率 82% 赤点線:ビートグリッド、青線:発音強度 元音源のクロマ分布(期待値) 生成音源のクロマ分布
実験結果:実験条件3 入力: mix: リズム一致率 74% クロマ一致率 59% 楽曲の30秒~38秒間の発音強度 赤点線:ビートグリッド、青線:発音強度 元音源のクロマ分布(期待値) 生成音源のクロマ分布 入力音源(ギター)の8~12秒間のクロマグラム 生成音源の8~12秒間のクロマグラム
実験結果:実験条件3 入力: mix: リズム一致率 63% クロマ一致率 78% 楽曲の30秒~38秒間の発音強度 赤点線:ビートグリッド、青線:発音強度 元音源のクロマ分布(期待値) 生成音源のクロマ分布 入力音源(ギター)の8~12秒間のクロマグラム 生成音源の8~12秒間のクロマグラム
結論 NMFによる、ギター音源からベース音源を生成する手法の 改善を行った。 学習データに対してフィルタをかけた結果は多少の劣化は 生じるがベースライン自体の生成は出来ていた。 検証データに対する結果は、完全にギターの演奏内容を踏 まえたベースラインが生成できていたとは言えない結果と なった。 今後はLSTMの導入、NMFの分解精度の向上などをやってい きたい。