自動伴奏システム

9 編(音楽情報処理)-- 2 章(技術・アプリケーション))
■2 群(画像・音・言語)-- 9 編(音楽情報処理)-- 2 章(技術・アプリケーション)
2 -- 10 自動伴奏
2--10--1 はじめに
自動伴奏は,人間の演奏者が一緒に集まって演奏する合奏やセッションを,人間とコン
ピュータとが一緒にあたかも人間の演奏者通しの場合と同じように演奏を行うための技術で
ある.カラオケでは歌い手が決められたテンポで再生される伴奏に合わせて歌わなければな
らず,歌い手は自分の望むノリで思いどおりに歌うことはできない.これに対して自動伴奏
が目指すのは伴奏を演奏するプロの演奏家たちが行うように演奏者の演奏意図を理解し,演
奏者の演奏に合わせて演奏するシステムを実現することである.
人間が合奏中に,人の演奏を聴きつつ自分もそれに合わつつ自分の意図した音楽を演奏で
表現する.この枠組を計算機に行わせるためには,少なくとも演奏者の演奏のを「聴く」こと
により演奏を理解することと,その結果自分が「演奏する」ことの2つの機能が必要である.
このうち,
「聴く」ことに相当する処理は,楽譜が演奏曲の楽譜が与えられている場合には演
奏が楽譜のどの部分を演奏しているかをリアルタイムに推定する技術として楽譜追跡 (score
following) と呼ばれる.楽譜追跡の結果に基づいて伴奏を「演奏する」するためには,演奏
者の演奏に合わせて演奏するためのスケジューリングが必要になる.以下では,この 2 つに
ついて解説する.
2--10--2 楽譜追跡
演奏者の演奏が MIDI (musical instruments digital interface) 信号で与えられる場合,例え
ば演奏者が電子ピアノなどの MIDI 楽器を用いている場合の楽譜追跡を紹介する.MIDI 信
号により音高と打鍵速度の情報が送信されるので,演奏が単旋律で演奏誤り (ミスタッチ) が
なければ,入力される音を順に楽譜の書かれている音と対応づければ演奏している箇所を知
ることができる.しかし,実際に演奏には演奏誤り (ミスタッチ) が含まれるため,演奏誤り
の可能性を考慮して楽譜の音との対応付けを求めなければならない.
Dannenberg は演奏と楽譜との一致した音の数をコスト関数に設定し DP(動的計画法, dynamic
programming) を用いて単旋律の MIDI 演奏の楽譜追跡を行えることを 1984 年に発表した1) .
DP マッチングは 2 つのストリング (文字列) のマッチングを求めるためなどに用いられるア
ルゴリズムである.単旋律の楽譜追跡では音高が「ド、ミ、ソ」のようにシンボル列で与えら
れているので,ストリングマッチングと同様に DP を用いて演奏と楽譜との対応を求めるこ
とができ,従って楽譜追跡を行うことができる.なお,通常の DP マッチングは全ての時系
列の最後までマッチングの仮説を計算した後にバックトレースにより最適マッチングを求め
るオフラインで使用されるアルゴリズム手法であるが,楽譜追跡では各時刻での最適のマッ
チングの仮説を使用するオンライン処理として使用する.
実用的な場面に用いるには,演奏誤りこれ以外に和音のように同時に演奏される音,トリ
ルのように演奏される音の個数が楽譜からは定まらない装飾音を扱えることが好ましい.こ
のためにこれまでに DP の原理に修正を加える手法が検討された2, 3, 4) .更に、繰り返しのあ
るなしや演奏し直しや演奏を一部分スキップする場合など,楽譜どおりでない演奏順序で演
奏することも,楽器練習ではしばしば行われるので,こにも対応できることが望ましい.装
c 電子情報通信学会 2010
電子情報通信学会「知識ベース」 ⃝
1/(3)
9 編(音楽情報処理)-- 2 章(技術・アプリケーション))
飾音や弾き直しやスキップなどの様々な演奏の可能性を確率モデルでモデル化して,HMM
によってモデル化されたものを Viterbi 探索することによって楽譜追跡する手法も提案され
ている5) .
実楽器の演奏をマイクで入力した場合の楽譜追跡についても研究が行われている.初期の
研究ではピッチ推定と音高列のマッチングによる楽譜追跡手法を組み合わせることも試みら
れた6) .しかし,現在でも単旋律で伴奏音が小さいなどの条件がない限りはピッチ推定や発
音時刻をリアルタイムに高精度で得るのは難しく,ピッチ推定を用いたシステムは主に単旋
律を対象に用いられている.また,ピッチのみに頼らずテンポの情報を用いて行う手法が研
究されている.マイクから入力される音の発音時刻とその音の継続時間をマルコフモデルで
モデル化し,マイク入力の音に対して HMM の状態推定を行い,楽譜のどの音符の発音に対
応するかを求める手法が検討されている7, 8) .なお,これらの手法はオンラインで用いること
を前提としているが,同じ楽譜との対応を求める技術でオフラインで行うものはオーディオ
アライメントとして別項で紹介されている.
2--10--3 自動伴奏システムにおける伴奏の再生
演奏者の演奏に合わせて伴奏を演奏させる方法のひとつに,演奏者が演奏した音が入力さ
れた瞬間に楽譜追跡を行い,そこで求めた楽譜位置に対応する伴奏音を再生させる方法があ
る.この方法では演奏者の音が入力されてから伴奏音を再生させるので原理的に伴奏は演奏
者の演奏に遅れるが,その遅れが聴覚の時間分解能10) より小さいならば,伴奏音はテンポに
演奏者に合わせて同時に演奏してるように聞こえる.例えば伴奏音のアタックが明確である
楽音をシンセサイザで再生により実現できる.
通常の人間の伴奏者は,演奏者のテンポから次に演奏するフレーズの発音時刻を予測して
演奏することから,同様の予測を計算機行わせようとする研究がある.これは,オンライン
で行うビートトラッキングで次のビートを予測する処理を行い,その結果を用いて伴奏を再
生すると捉えることができる.演奏されるべき次の音の発音時刻は,例えば直前の演奏テン
ポを用いて線形モデルで予測8) する手法が提案されている.また,演奏者に合わせるだけで
なく伴奏側自体に人間のように揺らぎをもった演奏としての特徴を持たせるために,演奏者
のテンポと事前に用意した伴奏側の演奏の逸脱情報の両方を用いて伴奏のタイミングを計算
する手法12) も検討されている.ここで使用する演奏の逸脱情報については,演奏者のノリを
表す発音時刻の変動を自動学習する手法15) として研究されたり,人手でアライメントをつけ
たデータベース14) を作る試みがなされている.
なお,この予測に基づいて伴奏を再生させるには,伴奏の再生テンポをリアルタイムに制
御を技術が必要である.MIDI を用いる場合は MIDI 信号のタイミング制御のみで行えるが,
音響信号を用いる場合は,音響信号では任意のタイミングでテンポを変化させるには音のピッ
チを変えずに音長を伸縮させるアルゴリズムが必要である.音響信号のタイムストレッチを
phase vocoder11) を用いて行う自動伴奏が報告されている8) .
2--10--4 おわりに
ここで紹介した楽譜追跡や演奏再生の技術は,それを用いた自動伴奏システムでこれまで
報告されていて,対象とするものもオーボエのソロ演奏であったり,ピアノ初心者の学習支
c 電子情報通信学会 2010
電子情報通信学会「知識ベース」 ⃝
2/(3)
9 編(音楽情報処理)-- 2 章(技術・アプリケーション))
援13) など様々である.また伴奏ではなく演奏そのものを自分の意図した演奏表情で演奏させ
るためのシステムとして,タッピングや手ぶりを使用する手法12) や自動車の運転と同じイン
ターフェイスでハンドルなどを用いたテンポを制御手法16) など,楽器以外のインターフェイ
スを用いて演奏を体験できるシステムも作られている.この他,人間の演奏フレーズを学習
してそれに呼応して機会が演奏を行うシステム Continuator 17) をはじめ,インタラクティブ
に音楽を生成するシステムは多く発表されている.今後,自動作曲や自動演奏の進展やソフ
トウェアやライブラリの拡充とともにこれからも,便利で楽しいシステムが創られると期待
されている.
■参考文献
1)
2)
3)
4)
5)
6)
7)
8)
9)
10)
11)
12)
13)
14)
15)
16)
17)
R. B. Dannenberg, “An On-line Algorithm for Real-Time Accompaniment,” in Proceedings of International Cumputer Music Conference (ICMC), pp. 193–198, 1984.
J. J. Bloch and R. B. Dannenberg, “Real-Time Computer Accompaniment of Keyboard Performances,”
In Proc. Int. Comp. Mus. Conf., pp. 279 - 280, 1985.
R. B. Dannenberg and H. Mukaino, “New Techniques for Enhanced Quality of Computer Accompaniment,” In Proc. Int. Comp. Mus. Conf., pp. 243 - 249, 1988.
Miller Puckette, “EXPLODE: A User Interface for Sequencing and Score Following,” In Proc. Int.
Comp. Mus. Conf., pp. 259 - 261, 1990.
武田 晴登,西本 卓也,嵯峨山 茂樹, “HMM を用いた MIDI 演奏の楽譜追跡と自動伴奏,” 情報処理学
会研究報告,2006-MUS-66, pp. 109 - 116, 2006.
M. Puckette, “Score following using the sung voice,” in Proceedings of the International Computer
Music Conference (ICMC), pp. 175-178, 1995.
N. Orio, F. Dchelle, “ Score Following Using Spectral Analysis and Hidden Markov Models,” in Proc.
Intrnational Computer Music Conference (ICMC), pp. 125-129, 2001.
C. Raphael, “Orchestral Musical Accompaniment from Synthesized Audio,” in Proceedings of Intrnational Computer Music Conference, 2003.
R. B. Dannenberg, N, Hu, “Polyphonic Audio Matching for Score Following and Intelligent Audio
Editors,” in Proceedings of Intrnational Computer Music Conference(ICMC), pp. 27 – 33, 2003.
R. A. Rasch, “The perception of simultaneous notes such as in polyphonicmusic,” Acustica, Vol. 40,
pp. 21 - 33, 1978.
M. Dolson, “The Phase Vocoder: A Tutorial,” Computer Music Journal, Vol. 10, no. 4, pp. 14 – 27,
1986.
片寄 晴弘,奥平 啓太,橋田 光代: 演奏表情テンプレートを利用したピアノ演奏システム:sfp, 情報処
理学会論文誌, vol. 44, no. 11, pp. 2728-2736, 2003.
大島 千佳,西本 一志,鈴木 雅実,“家庭における子どもの練習意欲を高めるピアノ連弾支援システム
の提案,” 情報処理学会論文誌, Vol. 46, No. 1, pp. 157-171, 2005.
M. Hashida, T. Matsui, and H. Katayose, “A New Music Database Describing Deviation Information of
Performance Expressions,” in Proc. Int. Conf. Music Info. Retrieval, pp. 489-494, 2008.
M. Hamanaka, M. Goto, H. Asoh, N. Otsu, “A Learning-Based Jam Session System that Imitates a
Player’s Personality Model,” in Proceedings of the 2003 International Joint Conference on Artificial
Intelligence, pp. 51-58, 2003.
E. Chew, A. François, L. Jie and Y. Aaron, “ESP: A Driving Interface for Musical Expression Synthesis,”, in Proc. Conf. on New Interfaces for Musical Expression, 2005.
F. Pachet, “The Continuator: Musical Interaction with Style,” In Int. Comp. Mus. Conf., pp. 211–218,
2002.
(執筆者:武田晴登)
c 電子情報通信学会 2010
電子情報通信学会「知識ベース」 ⃝
3/(3)