(57)【要約】【課題】確率論的手法を用いることで、楽器演奏における合理的な手の動きを定式化すると共に、運指を決定する。【解決手段】各音符での運指を含む手指状態は、少なくとも直前の音符での運指を含む手指状態を含む情報に依存すると近似し、音符系列に対して運指が使われる確率を、確率モデルで定式化し、前記確率モデルを演奏時の手指状態を隠れ状態として、その状態遷移の途中に音符推移が出力文字列として観測されるという隠れマルコフモデル(HMM)で適合することで運指を決定する。【選択図】図２
2007241034.tif 000002
【特許請求の範囲】
【請求項１】
各音符での手指状態は、少なくとも直前の音符での手指状態を含む情報に依存すると近似し、音符系列に対して運指が使われる確率を、確率モデルで定式化し、
前記確率モデルを演奏時の手指状態を隠れ状態として、その状態遷移の途中に音符推移が出力文字列として観測されるという隠れマルコフモデル(HMM)で適合することで運指を決定する、楽器演奏における運指決定方法。
【請求項２】
音符系列Ｎ（Ｔ：音符長の系列、Ｙ：ピッチの系列Ｙ、Ｏ：それ以外の情報の系列）に対して運指Ｓが使われる確率を、Bayesの定理により、
【数１】
2007241034.tif 000008
と定式化し、p(S|(Y,O,T))を最大化する運指Ｓを求めるものである、請求項１に記載の運指決定方法。
【請求項３】
音符系列Ｎ（Ｔ：音符長の系列、Ｙ：ピッチの系列）に対して運指Ｓが使われる確率を、Bayesの定理により、
【数２】
2007241034.tif 000009
と定式化し、p(S|(Y,T))を最大化する運指Ｓを求めるものである、請求項１に記載の運指決定方法。
【請求項４】
音符系列Ｎ（Ｙ：ピッチの系列）に対して運指Ｓが使われる確率を、Bayesの定理により、
【数３】
2007241034.tif 000010
と定式化し、p(S|(Y))を最大化する運指Ｓを求めるものである、請求項１に記載の運指決定方法。
【請求項５】
前記手指状態には、運指が含まれる、請求項１乃至４いずれかに記載の運指決定方法。
【請求項６】
前記少なくとも直前の音符での手指状態を含む情報には、手指状態以外の情報として当該音符の音符長が含まれる、請求項１乃至５いずれかに記載の運指決定方法。
【請求項７】
運指は、Ｖｉｔｅｒｂｉ探索により隠れ状態の最尤状態遷移列を求めることで決定される、請求項１乃至６いずれかに記載の運指決定方法。
【請求項８】
各音符での手指状態は、少なくとも直前の音符での手指状態を含む情報に依存すると近似し、音符系列に対して運指が使われる確率を、確率モデルで定式化し、
前記確率モデルを演奏時の手指状態を隠れ状態として、その状態遷移の途中に音符推移が出力文字列として観測されるという隠れマルコフモデル(HMM)で適合することで運指を決定する、楽器演奏における運指決定システム。
【請求項９】
音符系列Ｎ（Ｔ：音符長の系列、Ｙ：ピッチの系列Ｙ、Ｏ：それ以外の情報の系列）に対して運指Ｓが使われる確率を、Bayesの定理により、
【数４】
2007241034.tif 000011
と定式化し、p(S|(Y,O,T))を最大化する運指Ｓを求めるものである、請求項８に記載の運指決定システム。
【請求項１０】
音符系列Ｎ（Ｔ：音符長の系列、Ｙ：ピッチの系列）に対して運指Ｓが使われる確率を、Bayesの定理により、
【数５】
2007241034.tif 000012
と定式化し、p(S|(Y,T))を最大化する運指Ｓを求めるものである、請求項８に記載の運指決定システム。
【請求項１１】
音符系列Ｎ（Ｙ：ピッチの系列）に対して運指Ｓが使われる確率を、Bayesの定理により、
【数６】
2007241034.tif 000013
と定式化し、p(S|(Y))を最大化する運指Ｓを求めるものである、請求項８に記載の運指決定システム。
【請求項１２】
前記手指状態には、運指が含まれる、請求項８乃至１１いずれかに記載の運指決定システム。
【請求項１３】
前記少なくとも直前の音符での手指状態を含む情報には、手指状態以外の情報として当該音符の音符長が含まれる、請求項８乃至１２いずれかに記載の運指決定システム。
【請求項１４】
運指は、Ｖｉｔｅｒｂｉ探索により隠れ状態の最尤状態遷移列を求めることで決される、請求項８乃至１３いずれかに記載の運指決定システム。
【請求項１５】
楽器演奏における運指を決定するためにコンピュータを、
各音符での手指状態は、少なくとも直前の音符での手指状態を含む情報に依存すると近似し、音符系列に対して運指が使われる確率を、確率モデルで定式化する手段と、
前記確率モデルを演奏時の手指状態を隠れ状態として、その状態遷移の途中に音符推移が出力文字列として観測されるという隠れマルコフモデル(HMM)で適合することで運指を決定する手段と、
して機能させるための、楽器演奏における運指決定コンピュータプログラム。
【請求項１６】
コンピュータを、
音符系列Ｎ（Ｔ：音符長の系列、Ｙ：ピッチの系列Ｙ、Ｏ：それ以外の情報の系列）に対して運指Ｓが使われる確率を、Bayesの定理により、
【数７】
2007241034.tif 000014
と定式化し、p(S|(Y,O,T))を最大化する運指Ｓを求める手段と、
して機能させるための、請求項１５に記載のコンピュータプログラム。
【請求項１７】
コンピュータを、
音符系列Ｎ（Ｔ：音符長の系列、Ｙ：ピッチの系列）に対して運指Ｓが使われる確率を、Bayesの定理により、
【数８】
2007241034.tif 000015
と定式化し、p(S|(Y,T))を最大化する運指Ｓを求める手段と、
して機能させるための、請求項１５に記載のコンピュータプログラム。
【請求項１８】
コンピュータを、
音符系列Ｎ（Ｙ：ピッチの系列）に対して運指Ｓが使われる確率を、Bayesの定理により、
【数９】
2007241034.tif 000016
と定式化し、p(S|(Y))を最大化する運指Ｓを求める手段と、
して機能させるための、請求項１５に記載のコンピュータプログラム。
【請求項１９】
請求項１５乃至１８いずれかに記載の運指決定コンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項２０】
各音符での手指状態は、少なくとも直前の音符での手指状態を含む情報に依存すると近似し、音符系列に対して運指が使われる確率を、確率モデルで定式化し、
前記確率モデルを演奏時の手指状態を隠れ状態として、その状態遷移の途中に音符推移が出力文字列として観測されるという隠れマルコフモデル(HMM)で適合する、楽器演奏の運指決定における隠れマルコフモデル(HMM)の適合方法。
【請求項２１】
音符系列Ｎ（Ｔ：音符長の系列、Ｙ：ピッチの系列Ｙ、Ｏ：それ以外の情報の系列）に対して運指Ｓが使われる確率を、Bayesの定理により、
【数１０】
2007241034.tif 000017
と定式化する、請求項２０に記載の隠れマルコフモデル(HMM)の適合方法。
【請求項２２】
音符系列Ｎ（Ｔ：音符長の系列、Ｙ：ピッチの系列）に対して運指Ｓが使われる確率を、Bayesの定理により、
【数１１】
2007241034.tif 000018
と定式化する、請求項２０に記載の隠れマルコフモデル(HMM)の適合方法。
【請求項２３】
音符系列Ｎ（Ｙ：ピッチの系列）に対して運指Ｓが使われる確率を、Bayesの定理により、
【数１２】
2007241034.tif 000019
と定式化する、請求項２０に記載の隠れマルコフモデル(HMM)の適合方法。
【請求項２４】
前記手指状態には、運指が含まれる、請求項２０乃至２３いずれかに記載の隠れマルコフモデル(HMM)の適合方法。
【請求項２５】
前記少なくとも直前の音符での手指状態を含む情報には、手指状態以外の情報として当該音符の音符長が含まれる、請求項２０乃至２４いずれかに記載の隠れマルコフモデル(HMM)の適合方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、楽器演奏における運指決定方法及びシステムに係り、1つの好ましい態様例では、ピアノ演奏における運指の自動決定に適用される。
【背景技術】
【０００２】
ピアノの運指決定に関する既存研究は片手の単旋律を対象とするものが多く、rule-basedな手法（非特許文献１）、統計的な手法（非特許文献２）、隣り合った音符間の運指コスト関数を定義する手法などが見られる。片手の和音やポリフォニーを取り扱っているものもある（非特許文献３）。
【０００３】
しかしながら、運指決定においては考慮すべき事項が多岐に亘り、非特許文献１では各ルールの重みを適切に決定することが困難である、といった問題があった。非特許文献２では、運指情報を含む統計データの収集にコストがかかるという問題がある。非特許文献３では、音符長を考慮した柔軟な運指決定ができないという問題がある。
【非特許文献１】林田教裕 他，“楽曲構造に基づくピアノ運指ルールの論理表現,”情報処理学会第65回全国大会講演論文集，2003.
【非特許文献２】野口賢治 他，“nグラムの手法を用いたピアノ運指の推論,”情報処理学会第52回全国大会講演論文集，Vol.2，pp.101-102，1996.
【非特許文献３】AliaAl Kasimi et al., “Automatic Fingering System (AFS),” poster resentation at ISMIR, 2005.
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、確率論的手法を用いることで、楽器演奏における合理的な手の動きを定式化すると共に、運指を決定することを目的とするものである。
【課題を解決するための手段】
【０００５】
本発明は、各音符での手指状態は、少なくとも直前の音符での手指状態を含む情報に依存すると近似し、音符系列に対して運指が使われる確率を、確率モデルで定式化し、前記確率モデルを演奏時の手指状態を隠れ状態として、その状態遷移の途中に音符推移が出力文字列として観測されるという隠れマルコフモデル（HMM）で適合することで運指を決定する、ものである。
【０００６】
本発明において、手指状態は、典型的には運指である。１つの態様例では、ピアノ等の鍵盤楽器では、打鍵している指の番号が手指の状態として用いられる。手指状態には、運指の他、広義には、どのような手の位置/形で演奏するか、さらには、姿勢や肘の使い方等の身体動作が含まれる。上述の指以外の身体動作については、例えば、位置や形を数値化することで手指の状態として用いることができる。手指状態において、運指以外の手の状態（手の位置や形など）をHMMモデルパラメータに含めることで、より柔軟で応用範囲の広いモデルの実現が可能である。
【０００７】
各音符での運指を含む手指状態は、少なくとも直前の音符での手指状態（典型的には運指である）を含む情報に依存するという近似において、前記「少なくとも直前の音符での手指状態を含む情報」には、「直前の音符での手指状態」以外の情報として、「直前の音符の音符長」が含まれ得る。さらに、前記「少なくとも直前の音符での手指状態を含む情報」には、「当該直前の音符のさらに直前の音符での手指状態」、および/あるいは、「当該直前の音符のさらに直前の音符の音符長」が含まれ得る。
【０００８】
音符が提供する要素としては、ピッチ及び音符長が重要である。しかしながら、音符は、ピッチや音符長(IOI)のほか、音の強さ、音色など、楽譜で明示的・暗示的に示される広義の音符情報を含んでいる。音符系列において、上述の「それ以外の情報の系列Ｏ」には、これらの情報が含まれ得る。隠れマルコフモデル(HMM)の適合に際して用いられる音符系列Ｎの具体的な要素としては、ピッチの系列Ｙを必須要素とする他は、ピッチの系列Ｙに対して、音符長の系列Ｔ、それ以外の情報の系列Ｏから０乃至複数の要素を組み合わせることができる。
【０００９】
１つの態様では、ピッチの系列、音符長の系列、それ以外の情報の系列が使用される。モデル近似の都合上、音符系列Nを音符長の系列T、ピッチの系列Y、それ以外の情報の系列Oの三つの系列に分解しておく(N = (Y,O,T))。各音符ni = (yi,oi,ti) での手指状態は直前の音符での手指状態とその音符長にのみ依存すると近似すれば、音符系列N = (Y,O,T) に対して運指Sが使われる確率は、Bayesの定理により、
【数１】
2007241034.tif 000003
と定式化し、運指を定式化するモデルを、演奏時の手指状態を隠れ状態として、その状態遷移の途中に音符推移が出力文字列として観測されるという隠れマルコフモデル(HMM)で適合し、p(S|(Y,O,T))を最大化する運指Ｓを求めるものである。
【００１０】
１つの態様では、ピッチの系列、音符長の系列、の2系列が使用される。モデル近似の都合上、音符系列Nを音符長の系列T、ピッチの系列Y の二つの系列に分解しておく(N = (Y,T))。各音符ni = (yi,ti)での手指状態は直前の音符での手指状態とその音符長にのみ依存すると近似すれば、音符系列N = (Y,T) に対して運指Sが使われる確率は、Bayesの定理により
【数２】
2007241034.tif 000004
と近似できる。
【００１１】
１つの態様では、ピッチの系列のみが使用される。モデル近似の都合上、音符系列Nをピッチの系列Y であるとする(N=Y)。各音符yi での手指状態は直前の音符での手指状態にのみ依存すると近似すれば、音符系列Y に対して運指Sが使われる確率は、Bayesの定理により
【数３】
2007241034.tif 000005
と近似できる。
【００１２】
後述する実施形態では、片手の単音旋律において運指決定を行っているが、本発明の対象は片手の単音旋律には限定されず、本発明は、片手の和音旋律、片手の複旋律（ポリフォニー）、両手の和音旋律（右手/左手の割り振りが既知/未知の場合）等（図１参照）にも適用することができる。
【００１３】
運指を定式化するモデルを、演奏時の手指状態を隠れ状態として、その状態遷移の途中に音符推移が出力文字列として観測されるという隠れマルコフモデル(HMM)で適合し、p(S|(Y,O,T))を最大化する運指Ｓを求めるのであるが、運指Ｓを求める具体的な手段としては、HMM法を用いた音声認識で用いられている手法を用いることができる。これらの手法は、当業者において既知であり、本明細書では詳細な説明は省略する。１つの好ましい態様では、運指Ｓを求めるステップは、Viterbi探索によりにより隠れ状態の最尤状態遷移列を求めるもものである。Viterbi探索自体についても当業者において既知であり、本明細書では詳細な説明は省略する。また、複数の解を求めるN-best探索を用いることも可能である。
【００１４】
本発明では、隠れマルコフモデル(HMM)モデルを用いることで、より詳細なモデリングが可能となる。例えば、２本の指を広げてある音程（２つの音）を打鍵する難易度だけでなく、指の独立性の難易度を考慮したモデリング・運指決定が可能となる。具体的には、前者については隠れマルコフモデル(HMM)の出力確率関数で、後者については状態遷移確率としてモデリングされる。本発明は、例外ルールとの親和性も適用可能である。例えば、強拍のスフォルツァンドは親指で叩く、あるいは、楽譜に既存の部分的な指使いのような例外ルールも、探索空間の限定により実現可能である。また、本発明では、統計データとして運指情報は必須でない。本発明では、隠れマルコフモデル(HMM)に関するBaum-Welchアルゴリズムを用いて、運指情報のない統計データ（楽譜、MIDIデータなど）からパラメータ学習が可能である。
【００１５】
本明細書で開示する運指決定に関する技術的思想は、発明のカテゴリーとしては、運指決定方法、運指決定システム、運指決定コンピュータプログラム、運指決定コンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体、運指決定における隠れマルコフモデル(HMM)の適合方法として提供され得る。
【００１６】
後述する実施形態では、ピアノ譜の運指について説明するが、本発明はピアノ等の鍵盤楽器に限定されるものではなく、ギター等の弦楽器、管楽器等にも適用可能である。
【発明の効果】
【００１７】
本発明では、確率論的手法を採用することで、推論過程・結果の正当性（尤もらしさ）を確率として表現できるため、複雑なルールベースにおける適用ルールの競合といった問題が生じることがない。また、隠れマルコフモデル(HMM)のモデルパラメータの特徴や値により、運指決定のメカニズムを定性的・定量的に述べることができる。
【発明を実施するための最良の形態】
【００１８】
本発明を、隠れマルコフモデル(HMM)を用いてピアノ譜の運指を自動決定するアルゴリズムに基づいて説明する。隠れマルコフモデル(HMM)を用いてピアノ譜の運指を自動決定するアルゴリズムは本発明の１つの好ましい実施形態に過ぎないものであって、本発明は実施形態に記載の態様によって限定されるものではない。
【００１９】
［Ａ］運指の自動決定アルゴリズム
［Ａ−１］ピアノ演奏のモデル化
ピアノ演奏者が、楽譜あるいはMIDIデータなどの形式で与えられた音符列を演奏する過程を考える。運指Sは、音符系列Nをどの指で弾くかというだけでなく、広義にはどのような手の位置/形で演奏するかという手指の状態遷移系列であり、さらには姿勢や肘の使い方など身体動作すべてを含み得る。一方、音符系列Nはピッチや音符長(IOI)のほか、音の強さ、音色など、楽譜で明示的/暗示的に示される広義の音符情報を含み得る。このような手指の状態遷移系列Sから音符系列Nを生み出す過程が演奏であると考えられる。
【００２０】
［Ａ−２］運指決定への隠れマルコフモデル(HMM)導入
逆に、音符系列Nに対して理想的な演奏者が行なうであろう最も尤もらしい運指Sを推定することを運指決定と考えることができる。ここで、以降の節でのモデル近似の都合上、音符系列Nを音符長の系列T、ピッチの系列Y、それ以外の情報の系列Oの三つの系列に分解しておく(N=(Y,O,T))。
【００２１】
運指で最も重要なのは、ある時点までの音符をそれぞれある手指状態で打鍵した後、次の音符を時間内に次の手指状態で無理なく打鍵できる確率と考えられる。
各音符ni=(yi,oi,ti)での手指状態は直前の音符での手指状態とその音符長にのみ依存すると近似すれば、音符系列N=(Y,O,T)に対して運指Sが使われる確率は、Bayesの定理により
【数４】
2007241034.tif 000006
と近似できる。
【００２２】
以上のように考えると、運指を定式化するモデルとしては、演奏時の手指状態を「隠れ状態」と考え、その状態遷移の途中に音符推移が「出力文字列」として観測されるというMoore型HMMが適合する。
【００２３】
音符推移（ある音符から別の音符への）すべてを表す集合をMとすれば、状態s1から状態s2へ遷移する際の出力確率関数はbs1,s2:M→[0,∞)で表される。この出力確率関数bs1,s2は、ある音符推移を演奏する上での運指遷移s1→s2の尤もらしさの違いを表すものである。ここで、音符長は、上記の集合Mのパラメータとして容易に組み込むことが可能である。
【００２４】
［Ａ−３］隠れマルコフモデル(HMM)による運指決定の定式化
隠れマルコフモデル(HMM)を用いれば、運指決定は音符系列の背後に隠れた運指を推定するという、音声認識と同型の確率的な逆問題であると捉えられる。運指決定は、上式中のp(S|(Y,O,T))を最大化するSを隠れマルコフモデル(HMM)の事後確率最大経路のViterbi探索により求める問題として定式化できる。
【００２５】
このように隠れマルコフモデル(HMM)を用いる利点として、運指決定のメカニズムを隠れマルコフモデル(HMM)のモデルパラメータの特徴や値により定性的・定量的に述べることができる点が挙げられる。隠れマルコフモデル(HMM)のモデルパラメータは、運指決定の対象となる演奏や楽器に応じて、当業者によって適切に選択され得る。
【００２６】
［Ａ−４］運指モデルへの近似導入
以上に述べたモデルは理想的には膨大なモデルパラメータを含み得るが、当実施形態では最初のステップとして少数のパラメータに絞るため以下のような近似を導入した。
【００２７】
打鍵している指の番号（複数指で打鍵している場合はその集合）のみを「隠れ状態」と考え、さらに音符推移においてO, Tの成分を無視しピッチのみに着目した音符推移(e.g., F#→G#)を「出力文字列」とする。つまり、
【数５】
2007241034.tif 000007
のような近似を行なう。上述の集合Mはピッチ推移すべてを表す集合となる。
【００２８】
集合Mにおいて、ピッチのオクターブ位置の違いを考慮しない。例えば、鍵盤中央でのD→Gと、高音部でのD→Gは運指決定上同等と見なす。
【００２９】
集合Mにおけるピッチ(鍵)の推移を、ある鍵の打鍵位置から別の鍵の打鍵位置への二次元ベクトルdとして表す(黒鍵を含む鍵盤上での左右・奥行き方向の指移動を考慮するため。図３参照)。この連続空間M上の出力確率関数bs1,s2:M→[0,∞)は二次元Gauss分布に従うと仮定する。
【００３０】
［Ｂ］評価実験
提案する運指決定アルゴリズムの動作確認を行なった。片手単旋律の問題を対象にし、モデルパラメータは学習によらず以下のように設定した（運指が指定された楽譜によるパラメータ学習を行っても良い。）。
【００３１】
出力確率関数のGauss分布の左右方向の中心は指間隔に対応する鍵間隔に大体等しくし(例えば中指→小指は白鍵二つ分の間隔)、分散は親指の広がりやすさを反映させた。
【００３２】
指の独立性の理由により中指→薬指などの運指が敬遠される傾向は、その遷移確率を(他の遷移に比べ)３割程度低くすることで表現した。
【００３３】
バッハのインヴェンション第1, 2番の右手の単旋律に対する適用例では、多くの箇所で尤もらしい運指決定が行なわれた。図４に示すように、（ａ）指間隔と鍵間隔の対応；（ｂ）適切な指くぐり；（ｃ）親指の黒鍵打鍵の困難さの反映；が確認された。
【００３４】
一方、当実施形態で導入した近似式（４）に起因すると考えられる問題箇所も見られた。図５（ｄ）の運指決定では、時間差が少なく同音連打を同じ指で弾きづらい。これは、音符系列のモデル(Y,O,T)から音符長の情報Tを除外したことによるものと考えられる。図５（ｅ）の運指決定では、指間隔と鍵間隔が対応しているものの、手の動きが不安定である。これは、手の動きを表すモデル要素が隠れ状態に不足しているものと考えられる。（ｅ）の問題については、手指状態は2つ以上前の音符の手指状態には依存しないと近似したことが理由である可能性もある。
【産業上の利用可能性】
【００３５】
本発明は、ピアノ自習者への模範演奏の提示、曲の難易度判定や難易度をキーとした作品検索などへの利用が考えられるほか、ピアノ演奏ロボットの動作計画と考えればロボット指作業全般への応用も期待できる。
【図面の簡単な説明】
【００３６】
【図１】ピアノ譜の種類を示す図である。
【図２】運指決定への隠れマルコフモデル(HMM)導入を説明する図である。
【図３】運指モデルへの近似導入の一部を説明する図である。
【図４】ふさわしい推定結果が得られた箇所を示す図である。
【図５】近似式（４）に起因すると思われる誤り箇所を示す図である。
【図１】
2007241034.tif 000020
【図２】
2007241034.tif 000021
【図３】
2007241034.tif 000022
【図４】
2007241034.tif 000023
【図５】
2007241034.tif 000024