505 Views
March 25, 25
スライド概要
Generative Ai Study Group Master
MIDI-likeトークンを用いた seq2seqモデルによる自動鼻歌採譜 慶應義塾大学 情報工学科 斎藤博昭研究室 4年 八木 颯斗 1
背景(1/3) 鼻歌採譜の現状: 〜 〜 〜 誰もが気軽に鼻歌で 作曲できたらいいのに… ◼ 鼻歌採譜の研究はかなり少ない 1. 歌声の特性 … 人間の声は,表現の多様性があり,ピッチも不安定 2. データセット不足 … 鼻歌にフォーカスしたデータセットがほとんどない ➢ 実用性のある鼻歌採譜モデルが存在しない 2
背景(2/3) [1] Shansong Liu, Xu Li, Dian Li, Ying Shan,: “Humtrans: A Novel Open-Source Dataset for Humming Melody Transcription and Beyond,” International Conference on Acoustics, Speech, and Signal Processing (ICASSP), 2024. ◼ 鼻歌データセット データセット 時間 楽譜 公開年 MTG-QBH[9] 0.88 2012 AudioSet Humming[8] 1.20 2017 MIR-QBSH[7] 9.85 2009 MLEnd Hums and Whistles[10] 29.77 2022 Humtrans[1] 56.22 2024 ➢ 最近(2024年),世界最大規模のオープンソースの鼻歌データセット である「Humtrans」が公開 3
背景(3/3) Humtrans: ✓ 500種類の異なるジャンルと言語の楽曲から構成 ✓ 音楽専攻の学生や楽器に精通した10人の大学生によって録音 ✓ 「TA-TA-TA」と歌うように指示(※本研究ではこれを鼻歌と呼ぶ) ✓ Webベースのインターフェースを通じて録音 公開されたばかりのため,Humtransデータセットを用いた研究は現状2つ ① [1] Shansong Liu, Xu Li, Dian Li, Ying Shan,: “Humtrans: A Novel Open-Source Dataset for Humming Melody Transcription and Beyond,” International Conference on Acoustics, Speech, and Signal Processing (ICASSP), 2024. ② [2] Shubham Gupta, Isaac Neri Gomez-Sarmiento, Faez Amjed Mezdari, Mirco Ravanelli , Cem Subakan,: “Dynamic HumTrans: Humming Transcription Using CNNs and Dynamic Programming,” IAPR Workshop on Artificial Neural Networks in Pattern Recognition, pp. 269-280, 2024. 4
目的 1. 「Humtrans」データセットを活用した数少ない鼻歌採譜モデル を構築 2. 既存の鼻歌採譜モデルやボーカル採譜モデルを上回る結果 を達成 5
前提知識 ◼ WAV 振幅(音の強さ) をサンプリングレート(例えば 44.1kHz なら 1秒あたり 44,100 点)で表した 1次元の時系列データ 拡大すると波の形を確認可能 6
前提知識 ◼ スペクトログラム … 時間(横軸)ごとの周波数成分(縦軸)を可視化したもの. 音の強さは色の濃淡で表現 形状: 時間 × 周波数 の2次元データ 7
前提知識 ◼ CQTスペクトログラム … 音声信号を周波数ごとに分解し、 音の成分を時間(横軸)ごとの 音程(縦軸)で可視化したもの ➢ 通常の フーリエ変換(FFT) とは異なり、音楽的な周波数(ピッチ)に基づ いた解析 を行うため、音楽情報処理に特化した表現 形状: (周波数ビン数, フレーム数) … 周波数ビンは12音階×オクターブ数 ➢ WAVだと,どの音程が含まれているのか分かりにくい → CQTにより,音程に特化した特徴量を抽出しやすくなる 8
前提知識 ◼ MIDI … 演奏データを数値情報として扱うためのフォーマット 例) 「ドの音(C4)を1秒間鳴らす」「音量を50%にする」といった指示が含まれる メリット: MIDIは音の録音データではなく、 演奏情報を数値で表現する形式 → 様々な楽器音に変換可能 ピアノロール 9
提案手法 ◆ テキスト変換モデルであるT5を鼻歌採譜に応用 • 入力音声から楽譜に復元可能なMIDI-like トークンを生成する Seq2Seqモデル • 音声時系列データの文脈情報を効果的にモデリング T5 鼻歌音声 MIDI-like トークン列 MIDI 10
提案手法 ◆ テキスト変換モデルであるT5を鼻歌採譜に応用 • 入力音声から楽譜に復元可能なMIDI-like トークンを生成する Seq2Seqモデル • 音声時系列データの文脈情報を効果的にモデリング T5 鼻歌音声 MIDI-like トークン列 MIDI 11
関連研究(1/4) [5] Colin Raffel, Noam Shazeer, Adam Roberts, Katherine Lee, Sharan Narang, Michael Matena, Yanqi Zhou, Wei Li , Peter J. Liu,: “Exploring the Limits of Transfer Learning with a Unified Text-to- Text Transformer, ” Journal of Machine Learning Research 21 , pp. 1-67, 2020. ◼ T5(Text-to-Text Transfer Transformer)[5] ➢ Encoder-Decoder型のTransformerモデル ➢ 様々なタスクを「テキスト入力をテキスト出力に変換する問題」として 統一的に扱う → fine-tuningによって様々な分野に応用可能 12
関連研究(2/4) [4] Josh Gardner, Ian Simon, Ethan Manilow, Curtis Hawthorne , Jesse Engel,: “MT3: Multi-Task Multitrack Music Transcription,” International Conference on Learning Representations (ICLR), 2022. ◼ MT3(Multi-Task Multitrack Music Transcription)[4] ➢ T5を基盤として設計された,マルチトラック対応の楽器採譜モデル ➢ 音声信号を入力として与え,楽譜情報(MIDI-like トークン)をテキストと して生成 本研究では,MT3を参考にしてT5を鼻歌採譜に応用 13
提案手法 ◆ テキスト変換モデルであるT5を鼻歌採譜に応用 • 入力音声から楽譜に復元可能なMIDI-like トークンを生成する Seq2Seqモデル • 音声時系列データの文脈情報を効果的にモデリング T5 鼻歌音声 MIDI-like トークン列 MIDI 14
関連研究(3/4) [3] Sageev Oore, Ian Simon, Sander Dieleman, Douglas Eck , Karen Simonyan,: “This time with feeling: learning expressive musical performance,” Deep learning for music and audio, vol.32, pp. 955-967, 2020. ◼ MIDI-like トークン[3]とは? MIDI-likeトークン 楽譜情報を1次元の時系列表現するためのトークン系列 →T5を用いたseq2seq変換の実装が可能に! <例> トークン定義: 今回の場合は, <time>, <on/off>, <note> のみで定義 例: MT3 [4]の場合 <楽器ID>を追加 →マルチトラック採譜 15
関連研究(4/4) [2] Shubham Gupta, Isaac Neri Gomez-Sarmiento, Faez Amjed Mezdari, Mirco Ravanelli , Cem Subakan,: “Dynamic HumTrans: Humming Transcription Using CNNs and Dynamic Programming,” IAPR Workshop on Artificial Neural Networks in Pattern Recognition, pp. 269-280, 2024. ◼ Dynamic Humtrans[2] Humtransを用いた数少ない研究の1つ CNNと動的計画法を組み合わせて設計された鼻歌採譜モデル →従来の鼻歌採譜手法と比べて大きく精度が向上 ピアノなどの楽器採譜と比べると精度はイマイチ ◼ Humtransデータセットの問題点 正解データとして提供されている オンセットとオフセットのタイミングが正確に一致していない →データの約50%が改善 → 本研究でもこれを使用 16
提案手法 セグメント分割 RMS T5 MIDI-like トークン 鼻歌音声 CQT(Constant-Q Transform ) Cross-Entropy Loss トークン化 正解 MIDI-like トークン 正解 MIDI 17
自動評価指標 [16] Colin Raffel, Brian McFee, Eric J. Humphrey, Justin Salamon, Oriol Nieto, Dawen Liang , Daniel P . W. Ellis,: “mir_eval: A Transparent Implementation of Common MIR Metric,” International Conference on Music Information Retrieval, 2014. mir_eval ライブラリ[16]に実装されている,自動採譜評価関数 ルール: 推定された音符と正解音符のノートオンのタイミングのズレが 50ms以内に収まっている場合、推定結果は正しいと見なす このルールに従って, ノートオンとピッチを考慮したF値とピッチのみを考慮したF値 をそれぞれ計算 18
実験結果 [2] Shubham Gupta, Isaac Neri Gomez-Sarmiento, Faez Amjed Mezdari, Mirco Ravanelli , Cem Subakan,: “Dynamic HumTrans: Humming Transcription Using CNNs and Dynamic Programming,” IAPR Workshop on Artificial Neural Networks in Pattern Recognition, pp. 269-280, 2024. ※ 提案手法以外の結果は[2]から引用 Method 提案手法 Dynamic Humtrans[2] VOCANO[11] JDC-STP[12] SheetSage[13] MIR-ST500[14] basic-pitch[15] Note + Onsets P R F1 0.771 0.772 0.772 0.649 0.653 0.651 0.334 0.340 0.341 0.297 0.279 0.286 0.161 0.160 0.161 0.360 0.363 0.361 0.243 0.304 0.268 Notes Only P R F1 0.951 0.953 0.952 0.814 0.820 0.817 0.446 0.443 0.444 0.463 0.442 0.450 0.434 0.430 0.444 0.486 0.491 0.488 0.388 0.498 0.432 • 提案手法は鼻歌採譜において,従来手法の精度を上回った • オンセットとピッチの両方において高い精度を示す 19
従来手法との比較 提案手法 Dynamic Humtrans データセット 修正版Humtrans 修正版Humtrans モデル T5基盤のSeq2Seq CNN 前処理 RMS ノイズリダクション 入力 CQT CQT 出力 MIDI-likeトークン列 音符のオンセット,ピッチ 後処理 なし 動的計画法 訓練手法 CrossEntropy Loss MIDI-likeトークンを予測する言語モデルと して学習 CrossEntropy Loss ピッチ,オンセットを直接推定するCNNの 学習 • Dynamic Humtransはフレーム単位で推定 → 後処理が必要 • 一方,提案手法は音楽イベント単位の出力 → フレーズを直接学習 ➢ 文脈を考慮できる 20
出力例 ※ https://www.apple.com/jp/logic-pro/ ※DAW 変換 ギター音 鼻歌音声 • 概ね正しく変換できている MIDI MIDI変換さえできれば,誰でも気軽に鼻歌を楽器音に変換可能! 21
エラー分析 例1) 短時間の同音 ※赤が修正した正解ノート 例2) 音高差が激しい速いフレーズ 22
エラー分析の詳細 ① 短い同音が連続する場合 オンセット・オフセットの境界が曖昧になる 出力するオンセットまたはオフセットのどちらかが欠けた場合 MIDI-likeトークンの文法的にMIDIに反映されない仕様になっている <time 0.20s> <time ¼> 対策: • トークン定義の工夫 23
エラー分析の詳細 ② 音高差が激しく速いフレーズ 音高の変化が細かく,モデルが正確に捉えきれない ◼ 音響特徴量の解像度の限界 → パラメータの調整 ◼ 元の鼻歌音声データの制約 … 歌う側にとっても再現が難しい → 鼻歌音声を元に正解MIDIを再修正 → 修正が困難なデータは,データセットから排除 24
まとめ ◼ 最大規模の鼻歌データセット「Humtrans」を活用することで 数少ない鼻歌採譜モデルを構築 ◼ 提案手法は,既存のソロボーカル採譜モデルや鼻歌採譜 モデルを上回る結果を達成 25
今後の展望 ◼オンセット識別精度の改善 <time 0.20s> <time ¼> • トークン定義の工夫 → timeトークンを拍単位に変換 • セグメント分割を秒単位から小節単位に変更 ◼他分野への拡張 <part 1 (Soprano)>, <part 2 (Bass)> • アンサンブル採譜への応用 • 鼻歌から楽器音合成までを一貫して行うモデルの構築 誰もが鼻歌で気軽に作曲を楽しめる環境作りを目指す 26
参考文献(1/3) [1] Shansong Liu, Xu Li, Dian Li, Ying Shan,: “Humtrans: A Novel Open-Source Dataset for Humming Melody Transcription and Beyond,” International Conference on Acoustics, Speech, and Signal Processing (ICASSP), 2024. [2] Shubham Gupta, Isaac Neri Gomez-Sarmiento, Faez Amjed Mezdari, Mirco Ravanelli , Cem Subakan,: “Dynamic HumTrans: Humming Transcription Using CNNs and Dynamic Programming,” IAPR Workshop on Artificial Neural Networks in Pattern Recognition, pp. 269-280, 2024. [3] Sageev Oore, Ian Simon, Sander Dieleman, Douglas Eck , Karen Simonyan,: “This time with feeling: learning expressive musical performance,” Deep learning for music and audio, vol.32, pp. 955-967, 2020. [4] Josh Gardner, Ian Simon, Ethan Manilow, Curtis Hawthorne , Jesse Engel,: “MT3: Multi-Task Multitrack Music Transcription,” International Conference on Learning Representations (ICLR), 2022. [5] Colin Raffel, Noam Shazeer, Adam Roberts, Katherine Lee, Sharan Narang, Michael Matena, Yanqi Zhou, Wei Li , Peter J. Liu,: “Exploring the Limits of Transfer Learning with a Unified Text-to- Text Transformer, ” Journal of Machine Learning Research 21 , pp. 1-67, 2020. [6] Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomes, Łukasz Kaiser , Illia Polosukhin,: “Attention is All you Need,” Neural Information Processing Systems(NIPS), 2017. 27
参考文献(2/3) [7] Trisiladevi C. Nagavi , Nagappa U. Bhajantri,: “An Extensive Analysis of Query by Singing/Humming System Through Query Proportion,” arXiv, 2013. [8] Jort F. Gemmeke, Daniel P . W. Ellis , Dylan Freedman, Aren Jansen, Wade Lawrence, R. Channig Moore,: “Audio Set: An ontology and human-labeled dataset for audio events,” IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), 2017. [9] Salamon Justin, Serra Joan , Gomez Emilia,: “Tonal Rep- resentations for Music Retrieval: from Version Identification to Query-by-Humming,” International Journal of Multimedia Information Retrieval , vol 2, pp. 45-58, 2013. [10] R. Jesus , B. Nikesh,: “MLEnd Hums and Whistles,” [オンライン]. Available: https://www.kaggle.com/datasets/jesusrequena/mlend- hums-and-whistles. [11] Jui-Yang Hsu , Li Su,: VOCANO: A note transcrip- tion framework for singing voice in polyphonic music, International Society of Music Information Retrieval Conference (ISMIR), 2021. [12] Sangeun Kum, Jongpil Lee, Keunhyoung Luke Kim, Taehyoung Kim, Juhan Nam,: Pseudo-label trans- fer from frame-level to note-level in a teacher-student framework for singing transcription from polyphonic music, IEEE International Con- ference on Acoustics, Speech and Signal Processing (ICASSP), 2022. 28
参考文献(3/3) [13] Chris Donahue, John Thickstun , Percy Liang,: Melody transcription via generative pre-training, ISMIR, 2022. [14] Jun-You Wang , Jyh-Shing Roger Jang,: “On the preparation and validation of a large-scale dataset of singing transcription,” ICASSP 2021-2021 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), pp. 276-280, 2021. [15] Rachel M. Bittner, Juan Jose Bosch, David Rubinstein, Gabriel Meseguer-Brocal , Sebastian Ewert,: IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP), 2022. [16] Colin Raffel, Brian McFee, Eric J. Humphrey, Justin Salamon, Oriol Nieto, Dawen Liang , Daniel P . W. Ellis,: “mir_eval: A Transparent Implementation of Common MIR Metric,” International Conference on Music Information Retrieval, 2014. 29
補足資料 30
マルチトラック採譜 [4] Josh Gardner, Ian Simon, Ethan Manilow, Curtis Hawthorne , Jesse Engel,: “MT3: Multi-Task Multitrack Music Transcription,” International Conference on Learning Representations (ICLR), 2022. 例) MT3 [4]: • progトークンで楽器を識別 → マルチトラックの採譜 • 複数の音が同時にあっても対応可能 31
CQT (Constant-Q Transform) CQT ... 音楽信号の解析に特化した時間周波数変換手法 短時間フーリエ変換 CQT 全ての周波数を等間隔の窓幅を使用 どの周波数でも含まれる周期数が 同じになるように窓幅を変更 周波数ビンが線形スケール 周波数ビンが対数スケール 角ビンが線形スケールの等間隔 に対応 → 音楽の対数的なピッチ構造に 適合しない 各ビンがピッチの半音間隔に対応 →音楽解析に有利 32
提案手法 Humtransデータセット オンセット・オフセット修正 2秒セグメント分割 / Padding RMS正規化 T5 MIDI-likeトークン CQTスペクトログラム変換 MIDI復元 33
提案手法 ◼ セグメント分割 Transformerは系列の長さの2乗のメモリを 使用するため,あまり長い系列を扱うことができない →入力スペクトログラムとトークン列を2秒の重複しないセグメントに分割 ◼ RMS( Root Mean Square ) HumtransはWebベースの録音環境で作成したデータセットのため,被験 者ごとに音量にばらつきがある →前処理としてRMSによって,各音声の音量を揃える 34
MIDI-likeトークン ◼ Q. セグメント分割によって分割された音をどうやって処理する? ◼ A. タイセクションによって,まだ継続する音の情報を保持 例)タイが発生した場合のトークン例 タイ発生 <End Tie Section> <note 64> <time 0.92><off><note 64><on><note 60> … <time 2.00><off><note 67> トークン化 ピアノロール MIDI-like トークン 35
MIDI-likeトークンからMIDI変換までの流れ 2秒セグメント T5 鼻歌音声 [[ 2, 154, 132, 67, 187, 131, 67, 197, 132, 70, 228, 131, 70, 239, 132, 74, 273, 131, 74, 282, 132, 70, 312, 131, 70, 325, 132, 72, 1], [ 72, 2, 198, 131, 72, 208, 132, 70, 244, 131, 70, 252, 132, 69, 288, 131, 69, 300, 132, 74, 1], [ 74, 2, 179, 131, 74, 188, 132, 72, 268, 131, 72, 281, 132, 67, 1], [ 67, 2, 168, 131, 67, 243, 132, 70, 279, 131, 70, 288, 132, 74, 324, 131, 74, 1], [ 77, 2, 173, 131, 77, 178, 132, 77, 217, 131, 77, 225, 132, 79, 302, 131, 79, 308, 132, 77, 1], [ 77, 2, 145, 131, 77, 152, 132, 75, 189, 131, 75, 198, 132, 74, 1], [ 74, 2, 294, 131, 74, 1]] 36
MIDI-likeトークンからMIDI変換までの流れ 2秒セグメント T5 鼻歌音声 [[ 2, 154, 132, 67, 187, 131, 67, 197, 132, 70, 228, 131, 70, 239, 132, 74, 273, 131, 74, 282, 132, 70, 312, 131, 70, 325, 132, 72, 1], [ 72, 2, 198, 131, 72, 208, 132, 70, 244, 131, 70, 252, 132, 69, 288, 131, 69, 300, 132, 74, 1], [ 74, 2, 179, 131, 74, 188, 132, 72, 268, 131, 72, 281, 132, 67, 1], [ 67, 2, 168, 131, 67, 243, 132, 70, 279, 131, 70, 288, 132, 74, 324, 131, 74, 1], [ 77, 2, 173, 131, 77, 178, 132, 77, 217, 131, 77, 225, 132, 79, 302, 131, 79, 308, 132, 77, 1], [ 77, 2, 145, 131, 77, 152, 132, 75, 189, 131, 75, 198, 132, 74, 1], [ 74, 2, 294, 131, 74, 1]] 37
損失推移 訓練 検証 38
自動評価指標 •TP(True Positives): 適合率 モデルが正しいピッチとタイミングで音符を 予測した数 •FP(False Positives): 再現率 モデルが実際には存在しない音符を誤って 予測した数 •FN(False Negatives): 実際には存在する音符をモデルが予測で きなかった数 39
関連研究(Dynamic Humtrans) ◼ Humtransデータセットの問題点 修正前: 原因: 被験者は再生されるメロディに合 わせて鼻歌を歌う これを自己ラベル付けと呼び,後 処理が行われなかった 修正後: 40
関連研究 [2] Shubham Gupta, Isaac Neri Gomez-Sarmiento, Faez Amjed Mezdari, Mirco Ravanelli , Cem Subakan,: “Dynamic HumTrans: Humming Transcription Using CNNs and Dynamic Programming,” IAPR Workshop on Artificial Neural Networks in Pattern Recognition, pp. 269-280, 2024. ◼ Humtransデータセットの修正方法 [2] 手順: 成功例: 失敗例: ① 信号の振幅を表す包絡線を計算 ② 包絡線が特定の閾値を下回るタイミ ングで判断 ③ 正解データの音符数と比較して検証 →音符数が一致しないデータは排 除 →データの約50%が改善された 41
関連研究 ◼修正できたデータセットのサイズ 学習データ 検証データ テストデータ Humtrans [1] 13,080 766 769 修正版Humtrans [2] 6,828(52.2%) 375(49.0%) 440(57.2%) ※ 条件に一致しなかったデータは排除し,使用しない 42
Dynamic Humtrans の後処理 ◼ 動的計画法 推論時にモデルが出力するフレームごとの確率を用いて、ノイズを含む可能性のあ る推定を「最も自然な音符列」に変換するために使用 条件: 後処理: 1. 開始,終了条件 パスは最初と最後のフレームでダミー音符(89)となる 最小音符長を保証: 非常に短い音符(ノイズ) は削除 2. 連続するフレームの遷移ルール t フレーム目が特定の音符nにある場合,次のフレームでは n またはダミー音符に遷移 ダミー音符にいる場合,次のフレームでは任意の音符に遷移可能 3. 自然な音符遷移を保証する制約 音符が急激に切り替わることを防ぐため,音符間には必ずダミー音符が挟まれる 43
出力例2 1) https://www.apple.com/jp/logic-pro/ 1) DAW 変換 男性 バイオリン音 ※ ライブラリ「pyfluidsynth」を用いることでも,一連の処理をPythonコードで実装可能 (※ https://github.com/nwhitehead/pyfluidsynth) 44