(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024006175
(43)【公開日】2024-01-17
(54)【発明の名称】音響解析システム、音響解析方法およびプログラム
(51)【国際特許分類】
G10G 3/04 20060101AFI20240110BHJP
G10L 25/51 20130101ALI20240110BHJP
【FI】
G10G3/04
G10L25/51 300
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2022106820
(22)【出願日】2022-07-01
(71)【出願人】
【識別番号】000004075
【氏名又は名称】ヤマハ株式会社
(74)【代理人】
【識別番号】110003177
【氏名又は名称】弁理士法人旺知国際特許事務所
(72)【発明者】
【氏名】山本 和彦
【テーマコード(参考)】
5D182
【Fターム(参考)】
5D182AD06
(57)【要約】
【課題】利用者の意図に適切に適合した拍点を推定する。
【解決手段】情報解析システム100は、音響信号Aに対する推定処理により複数の拍点Bを推定する拍点推定部21と、複数の拍点Bのうち利用者が選択した対象拍点と、複数の拍点のうち対象拍点の周囲に位置する1以上の隣接拍点とを、利用者からの指示に応じて時間軸上で移動する拍点編集部24と、対象拍点および1以上の隣接拍点の移動に応じて推定処理を更新する更新処理部25とを具備する。拍点推定部21は、更新後の推定処理を音響信号Aに対して実行することで複数の拍点Bを再推定する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
音響信号に対する推定処理により複数の第1拍点を推定する拍点推定部と、
前記複数の第1拍点のうち利用者が選択した対象拍点と、前記複数の第1拍点のうち前記対象拍点の周囲に位置する1以上の隣接拍点とを、前記利用者からの指示に応じて時間軸上で移動する拍点編集部と、
前記対象拍点および前記1以上の隣接拍点の移動に応じて前記推定処理を更新する更新処理部とを具備し、
前記拍点推定部は、前記更新後の推定処理を前記音響信号に対して実行することで複数の第2拍点を推定する
音響解析システム。
【請求項2】
前記1以上の隣接拍点は、
前記複数の第1拍点のうち前記対象拍点の直前に位置する第1拍点と、
前記複数の第1拍点のうち前記対象拍点の直後に位置する第1拍点とを含む
請求項1の音響解析システム。
【請求項3】
前記対象拍点と前記1以上の隣接拍点とを表す拍点画像を表示装置に表示し、前記拍点画像に含まれる前記対象拍点と前記1以上の隣接拍点とを前記利用者からの指示に応じて移動する表示制御部
をさらに具備する請求項1または請求項2の音響解析システム。
【請求項4】
前記推定処理は、
学習用音響信号の特徴量と、当該特徴量が観測される時点が拍点に該当する確率との関係を学習した推定モデルにより、前記音響信号の各時点における特徴量を処理することで、当該時点が拍点に該当する確率を生成する第1処理と、
前記第1処理により生成された確率の時系列から前記複数の第1拍点を特定する第2処理とを含む
請求項1または請求項2の音響解析システム。
【請求項5】
前記更新処理部は、
前記移動後の前記対象拍点および前記1以上の隣接拍点に対応して時間軸上に設定された数値分布と、
前記第1処理により推定された確率の時系列と、
の誤差が低減されるように、前記推定モデルを更新する
請求項4の音響解析システム。
【請求項6】
時間軸上における前記音響信号の一部の区間である特定区間を設定する区間設定部
をさらに具備し、
前記拍点推定部による推定処理は、前記特定区間について実行される
請求項1の音響解析システム。
【請求項7】
音響信号に対する推定処理により複数の第1拍点を推定し、
前記複数の第1拍点のうち利用者が選択した対象拍点と、前記複数の第1拍点のうち前記対象拍点の周囲に位置する1以上の隣接拍点とを、前記利用者からの指示に応じて時間軸上で移動し、
前記対象拍点および前記1以上の隣接拍点の移動に応じて前記推定処理を更新し、
前記更新後の推定処理を前記音響信号に対して実行することで複数の第2拍点を推定する
コンピュータシステムにより実現される音響解析方法。
【請求項8】
前記1以上の隣接拍点は、
前記複数の第1拍点のうち前記対象拍点の直前に位置する第1拍点と、
前記複数の第1拍点のうち前記対象拍点の直後に位置する第1拍点とを含む
請求項7の音響解析方法。
【請求項9】
さらに、
前記対象拍点と前記1以上の隣接拍点とを表す拍点画像を表示装置に表示し、
前記拍点画像に含まれる前記対象拍点と前記1以上の隣接拍点とを前記利用者からの指示に応じて移動する
請求項7または請求項8の音響解析方法。
【請求項10】
前記推定処理は、
学習用音響信号の特徴量と、当該特徴量が観測される時点が拍点に該当する確率との関係を学習した推定モデルにより、前記音響信号の各時点における特徴量を処理することで、当該時点が拍点に該当する確率を生成する第1処理と、
前記第1処理により生成された確率の時系列から前記複数の第1拍点を特定する第2処理とを含む
請求項7または請求項8の音響解析方法。
【請求項11】
前記推定処理の更新においては、
前記移動後の前記対象拍点および前記1以上の隣接拍点に対応して時間軸上に設定された数値分布と、
前記第1処理により推定された確率の時系列と、
の誤差が低減されるように、前記推定モデルを更新する
請求項10の音響解析方法。
【請求項12】
さらに、
時間軸上における前記音響信号の一部の区間である特定区間を設定し、
前記推定処理は、前記特定区間について実行される
請求項7の音響解析方法。
【請求項13】
音響信号に対する推定処理により複数の第1拍点を推定する拍点推定部、
前記複数の第1拍点のうち利用者が選択した対象拍点と、前記複数の第1拍点のうち前記対象拍点の周囲に位置する1以上の隣接拍点とを、前記利用者からの指示に応じて時間軸上で移動する拍点編集部、および、
前記対象拍点および前記1以上の隣接拍点の移動に応じて前記推定処理を更新する更新処理部、
としてコンピュータシステムを機能させるプログラムであって、
前記拍点推定部は、前記更新後の推定処理を前記音響信号に対して実行することで複数の第2拍点を推定する
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、音響信号を解析する技術に関する。
【背景技術】
【0002】
楽曲の演奏音を表す音響信号を解析することで当該楽曲の拍点(ビート)を推定する解析技術が従来から提案されている。例えば特許文献1には、隠れマルコフモデル等の確率モデルを利用して楽曲の拍点を推定する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
楽曲の拍点を推定する従来の技術においては、例えば楽曲の裏拍が拍点として誤推定される可能性、または、楽曲の本来のテンポの2倍のテンポに対応する拍点が誤推定される可能性がある。また、利用者が表拍の推定を期待している状況で楽曲の裏拍が推定される場合のように、拍点の推定結果が利用者の意図に適合しない可能性もある。以上の事情を考慮すると、音響信号から推定された複数の拍点の時間軸上の位置を、利用者が変更できる構成が重要である。以上の事情を考慮して、本開示のひとつの態様は、利用者の意図に適切に適合した拍点を推定することをひとつの目的とする。
【課題を解決するための手段】
【0005】
以上の課題を解決するために、本開示のひとつの態様に係る音響解析システムは、音響信号に対する推定処理により複数の第1拍点を推定する拍点推定部と、前記複数の第1拍点のうち利用者が選択した対象拍点と、前記複数の第1拍点のうち前記対象拍点の周囲に位置する1以上の隣接拍点とを、前記利用者からの指示に応じて時間軸上で移動する拍点編集部と、前記対象拍点および前記1以上の隣接拍点の移動に応じて前記推定処理を更新する更新処理部とを具備し、前記拍点推定部は、前記更新後の推定処理を前記音響信号に対して実行することで複数の第2拍点を推定する。
【0006】
本開示のひとつの態様に係る音響解析方法は、音響信号に対する推定処理により複数の第1拍点を推定し、前記複数の第1拍点のうち利用者が選択した対象拍点と、前記複数の第1拍点のうち前記対象拍点の周囲に位置する1以上の隣接拍点とを、前記利用者からの指示に応じて時間軸上で移動し、前記対象拍点および前記1以上の隣接拍点の移動に応じて前記推定処理を更新し、前記更新後の推定処理を前記音響信号に対して実行することで複数の第2拍点を推定する。
【0007】
本開示のひとつの態様に係るプログラムは、音響信号に対する推定処理により複数の第1拍点を推定する拍点推定部、前記複数の第1拍点のうち利用者が選択した対象拍点と、前記複数の第1拍点のうち前記対象拍点の周囲に位置する1以上の隣接拍点とを、前記利用者からの指示に応じて時間軸上で移動する拍点編集部、および、前記対象拍点および前記1以上の隣接拍点の移動に応じて前記推定処理を更新する更新処理部、としてコンピュータシステムを機能させるプログラムであって、前記拍点推定部は、前記更新後の推定処理を前記音響信号に対して実行することで複数の第2拍点を推定する。
【図面の簡単な説明】
【0008】
【
図1】第1実施形態における音響解析システムの構成を例示するブロック図である。
【
図2】音響解析システムの機能的な構成を例示するブロック図である。
【
図4】推定モデルを確立する機械学習の説明図である。
【
図9】第2実施形態における音響解析システムの機能的な構成を例示するブロック図である。
【発明を実施するための形態】
【0009】
A:第1実施形態
図1は、第1実施形態に係る音響解析システム100の構成を例示するブロック図である。音響解析システム100は、楽曲の演奏音を表す音響信号Aの解析により当該楽曲の複数の拍点Bを推定するコンピュータシステムである。
【0010】
音響解析システム100は、制御装置11と記憶装置12と表示装置13と操作装置14と放音装置15とを具備する。音響解析システム100は、例えばスマートフォン、タブレット端末またはパーソナルコンピュータ等の情報装置で実現される。なお、音響解析システム100は、単体の装置として実現されるほか、相互に別体で構成された複数の装置でも実現される。
【0011】
制御装置11は、音響解析システム100の各要素を制御する単数または複数のプロセッサである。具体的には、例えばCPU(Central Processing Unit)、GPU(Graphics Processing Unit)、SPU(Sound Processing Unit)、DSP(Digital Signal Processor)、FPGA(Field Programmable Gate Array)、またはASIC(Application Specific Integrated Circuit)等の1種類以上のプロセッサにより、制御装置11が構成される。
【0012】
記憶装置12は、制御装置11が実行するプログラムと、制御装置11が使用する各種のデータとを記憶する単数または複数のメモリである。例えば半導体記録媒体および磁気記録媒体等の公知の記録媒体、または複数種の記録媒体の組合せが、記憶装置12として利用される。なお、例えば、音響解析システム100に対して着脱される可搬型の記録媒体、または、制御装置11が通信網を介してアクセス可能な記録媒体(例えばクラウドストレージ)が、記憶装置12として利用されてもよい。
【0013】
記憶装置12は、音響信号Aを記憶する。音響信号Aは、楽曲の演奏音の波形を表すサンプル系列である。具体的には、音響信号Aは、楽曲の楽器音および歌唱音の少なくとも一方を表す。音響信号Aのデータ形式は任意である。なお、音響解析システム100とは別体の信号供給装置から音響信号Aが音響解析システム100に供給されてもよい。信号供給装置は、例えば、記録媒体に記録された音響信号Aを音響解析システム100に供給する再生装置、または、配信装置(図示略)から通信網を介して受信した音響信号Aを音響解析システム100に供給する通信機器である。
【0014】
表示装置13は、制御装置11による制御のもとで画像を表示する。例えば液晶表示パネルまたは有機EL(Electroluminescence)パネル等の各種の表示パネルが表示装置13として利用される。なお、音響解析システム100とは別体の表示装置13を音響解析システム100に有線または無線により接続してもよい。操作装置14は、利用者からの指示を受付ける入力機器である。操作装置14は、例えば、利用者が操作する操作子、または、利用者による接触を検知するタッチパネルである。
【0015】
放音装置15は、制御装置11による制御のもとで音響を再生する。例えばスピーカまたはヘッドホンが放音装置15として利用される。なお、音響解析システム100とは別体の放音装置15を音響解析システム100に有線または無線により接続してもよい。
【0016】
図2は、音響解析システム100の機能的な構成を例示するブロック図である。制御装置11は、記憶装置12に記憶されたプログラムを実行することで、音響信号Aを処理するための複数の機能(拍点推定部21,表示制御部22,再生制御部23,拍点編集部24および更新処理部25)を実現する。
【0017】
拍点推定部21は、音響信号Aの解析により楽曲内の複数の拍点Bを推定する。具体的には、拍点推定部21は、楽曲内の複数の拍点Bの各々の時刻を指定する時系列データを生成する。第1実施形態の拍点推定部21は、特徴抽出部30と第1処理部31と第2処理部32とを具備する。
【0018】
特徴抽出部30は、時間軸上の複数の時点(以下「解析時点」という)tの各々について音響信号Aの特徴量F(t)を算定する。各解析時点tは、所定の間隔で時間軸上に設定された時点である。解析時点tの間隔は、楽曲に想定される拍点Bの間隔よりも充分に小さい。
【0019】
特徴量F(t)は、解析時点tにおける音響信号Aの音響的な特徴を表す情報である。例えば、各解析時点tの特徴量F(t)は、当該解析時点tを含む所定長の期間内における音響情報の時系列である。音響情報は、例えば、例えば音量および振幅等、音響信号Aの強度に関する情報である。また、音響信号Aの周波数特性(音色)に関する情報も、音響情報として利用される。周波数特性に関する情報としては、例えば、MFCC(Mel-Frequency Cepstrum Coefficients),MSLS(Mel-Scale Log Spectrum)、または定Q変換(CQT:Constant-Q Transform)等が例示される。なお、1個の解析時点tに対応する複数の音響情報が特徴量F(t)として利用されてもよい。また、音響情報の種類は以上の例示に限定されない。音響情報は、音響信号Aに関する複数種の音響情報の組合せでもよい。
【0020】
第1処理部31および第2処理部32は、音響信号Aの各特徴量F(t)から複数の拍点Bを推定する。
図3は、複数の拍点Bを推定する処理(以下「推定処理」という)S2のフローチャートである。推定処理S2は、第1処理S21と第2処理S22とを含む。第1処理部31は第1処理S21を実行し、第2処理部32は第2処理S22を実行する。
【0021】
第1処理S21は、各解析時点tが楽曲の拍点Bに該当する確率P(t)を生成する処理である。各解析時点tの確率P(t)が大きいほど、解析時点tが拍点Bに該当する確度が高い。第1処理部31は、第1処理S21を解析時点t毎に反復することで確率P(t)の時系列を生成する。第1処理S21には推定モデルMが利用される。
【0022】
音響信号Aの各解析時点tの特徴量F(t)と、当該解析時点tが拍点Bに該当する確率P(t)との間には相関がある。推定モデルMは、以上の相関を学習した統計モデルである。すなわち、推定モデルMは、特徴量F(t)と確率P(t)との関係を機械学習により学習した学習済モデルである。推定モデルMは、特徴量F(t)と確率P(t)との関係を訓練(機械学習)により獲得した訓練済モデルとも表現される。第1処理部31は、各解析時点tにおける音響信号Aの特徴量F(t)を推定モデルMにより処理することで確率P(t)を生成する。具体的には、第1処理部31は、特徴量F(t)を含む入力データを推定モデルMに入力することで確率P(t)を生成する。
【0023】
推定モデルMは、例えば深層ニューラルネットワーク(DNN:Deep Neural Network)で構成される。例えば、再帰型ニューラルネットワーク(RNN:Recurrent Neural Network)、または畳込ニューラルネットワーク(CNN:Convolutional Neural Network)等の任意の形式の深層ニューラルネットワークが、推定モデルMとして利用される。複数種の深層ニューラルネットワークの組合せにより推定モデルMが構成されてもよい。また、長短期記憶(LSTM:Long Short-Term Memory)またはAttention等の付加的な要素が推定モデルMに搭載されてもよい。
【0024】
推定モデルMは、特徴量F(t)から確率P(t)を生成する演算を制御装置11に実行させるプログラムと、当該演算に適用される複数の変数(具体的には加重値およびバイアス)との組合せで実現される。推定モデルMを実現するプログラムおよび複数の変数は、記憶装置12に記憶される。推定モデルMを規定する複数の変数の各々の数値は、機械学習により事前に設定される。
【0025】
図3の第2処理S22は、第1処理S21により生成された確率P(t)の時系列から楽曲内の複数の拍点Bを推定する処理である。第2処理S22には、各種の状態遷移モデルが利用される。状態遷移モデルは、例えば隠れセミマルコフモデル(HSMM:Hidden Semi-Markov Model)で構成され、動的計画法の一例であるビタビ(Viterbi)アルゴリズムにより複数の拍点Bが推定される。例えば、確率P(t)が極大となる時点が拍点Bとして推定される。
【0026】
図4は、推定モデルMを確立する機械学習の説明図である。例えば音響解析システム100とは別体の機械学習システム200による機械学習で推定モデルMが確立される。機械学習システム200から音響解析システム100に推定モデルMが提供される。なお、機械学習システム200の機能が音響解析システム100に搭載されてもよい。
【0027】
推定モデルMの機械学習には複数の教師データZが利用される。複数の教師データZの各々は、機械学習用の特徴量Fmと機械学習用の確率Pmとの組合せで構成される。特徴量Fmは、機械学習用に用意された音響信号Amのうち特定の時点における特徴量F(t)である。音響信号Amは、音響空間内に放射された音響を収録した信号、または公知の音響合成処理により合成された信号である。特定の時点に対応する機械学習用の確率Pmは、当該時点が楽曲の拍点Bに該当する確率(すなわち正解値)である。拍点Bが既知である多数の楽曲について複数の教師データZが用意される。なお、音響信号Amは「学習用音響信号」の一例である。
【0028】
機械学習システム200は、各教師データZの特徴量Fmを入力したきに初期的または暫定的なモデル(以下「暫定モデル」という)M0が出力する確率P(t)と、当該教師データZの確率Pmとの誤差を表す誤差関数を算定する。そして、機械学習システム200は、誤差関数が低減されるように暫定モデルM0の複数の変数を更新する。複数の教師データZの各々について以上の処理が反復された時点の暫定モデルM0が、推定モデルMとして確定される。
【0029】
したがって、推定モデルMは、複数の教師データZにおける特徴量Fmと確率Pmとの間に潜在する関係のもとで、未知の特徴量F(t)に対して統計的に妥当な確率P(t)を出力する。すなわち、推定モデルMは、機械学習用の音響信号Amの特徴量Fmと、当該特徴量が観測される時点が拍点Bに該当する確率Pmとの関係を学習した学習済モデルである。第1処理部31は、以上の手順で確立された推定モデルMにより各解析時点tの特徴量F(t)を処理することで、当該解析時点tが楽曲の拍点Bに該当する確率P(t)を生成する。
【0030】
以上の説明の通り、第1実施形態においては、機械学習用の音響信号Amの特徴量Fmと、当該特徴量Fmが観測される解析時点tが拍点Bに該当する確率Pmとの関係を学習した推定モデルMを利用して、音響信号Aから複数の拍点Bが推定される。したがって、特徴量F(t)が多様に変化する未知の音響信号Aについて複数の拍点Bを高精度に推定できる。
【0031】
図2の表示制御部22は、表示装置13に画像を表示する。具体的には、表示制御部22は、
図5の確認画像Gを表示装置13に表示する。確認画像Gは、波形領域Gaと拍点領域Gbとを含む。波形領域Gaと拍点領域Gbとには共通の時間軸が設定される。
【0032】
波形領域Gaには、音響信号Aのうち特定の範囲(以下「表示範囲」という)内の波形が表示される。表示制御部22は、音響信号Aの表示範囲を、操作装置14に対する利用者からの指示に応じて変更する。拍点領域Gbには、拍点推定部21が音響信号Aから推定した複数の拍点Bが表示される。具体的には、音響信号Aのうち表示範囲内の複数の拍点Bが拍点領域Gbに表示される。拍点領域Gbは「拍点画像」の一例である。
【0033】
利用者は、操作装置14を操作することで音響信号Aの再生を指示できる。
図2の再生制御部23は、音響信号Aを放音装置15に供給することで、音響信号Aが表す音響を再生する。表示制御部22は、
図5に例示される通り、音響信号Aの再生に並行して確認画像Gに再生位置Gcを表示する。再生位置Gcは、音響信号Aのうち放音装置15により再生されている時点である。したがって、再生位置Gcは、音響信号Aの再生に並行して時間軸の方向に進行する。利用者は、放音装置15による再生音を聴取しながら拍点領域Gbを視認することで、直前の推定処理S2により推定された拍点Bの位置を確認できる。現時点の拍点Bの位置が利用者の意図に整合しない場合、利用者は、操作装置14を操作することで、推定済の拍点Bの位置の修正を指示することが可能である。
【0034】
図2の拍点編集部24は、利用者からの指示に応じて各拍点Bを時間軸上で移動する。拍点Bの移動は、時間軸上における拍点Bの位置を変更する処理である。
図6は、拍点Bの移動に関する説明図である。
図6の状態1は、前述の推定処理S2により複数の拍点Bが推定された状態である。
図6には、第1処理S21で算定された確率P(t)の時系列が併記されている。
【0035】
利用者は、拍点領域Gbを確認しながら操作装置14を操作することで、拍点領域Gbに表示された複数の拍点Bの何れか(以下「対象拍点Bn」という)を選択できる。また、利用者は、拍点領域Gbを確認しながら操作装置14を操作することで、時間軸上における対象拍点Bnの移動を指示できる。具体的には、利用者は、対象拍点Bnの移動方向(前方/後方)および移動量δを指示できる。例えば、利用者は、自身が適正と考える時点に対象拍点Bnを移動することを指示できる。
図6に状態2として例示される通り、拍点編集部24は、対象拍点Bnを、利用者から指示された方向(前方/後方)に、利用者から指示された移動量δだけ時間軸上で移動する。なお、
図6においては対象拍点Bnが前方に移動する場合が例示されているが、対象拍点Bnは後方に移動してもよい。
【0036】
図6に状態3として例示される通り、拍点編集部24は、複数の拍点Bのうち対象拍点Bnの直前に位置する拍点B(以下「隣接拍点Bn-1」という)と、対象拍点Bnの直後に位置する拍点B(以下「隣接拍点Bn+1」)とを、対象拍点Bnに連動して時間軸上で移動する。具体的には、拍点編集部24は、対象拍点Bnについて利用者が指示した移動方向(前方/後方)に、対象拍点Bnについて利用者が指示した移動量δだけ、隣接拍点Bn-1および隣接拍点Bn+1を時間軸上で移動する。すなわち、対象拍点Bnと前後の隣接拍点Bn±1との3個の拍点Bが、利用者からの指示に応じて時間軸上で同様に移動する。したがって、対象拍点Bnと各隣接拍点Bn±1との時間的な関係は、移動の前後で維持される。
【0037】
表示装置13に表示される拍点領域Gbは、対象拍点Bnと隣接拍点Bn±1とを含む。表示制御部22は、拍点編集部24による各拍点Bの移動を、表示装置13に表示された拍点領域Gbに反映させる。具体的には、表示制御部22は、拍点領域Gbにおける対象拍点Bnと各隣接拍点Bn±1とを、利用者からの指示に応じて時間軸上で移動する。
【0038】
図2の更新処理部25は、対象拍点Bnおよび各隣接拍点Bn±1の移動に応じて推定モデルMを更新する。具体的には、更新処理部25は、対象拍点Bnおよび各隣接拍点Bn±1の移動に応じた機械学習により、推定モデルMを更新する。
【0039】
図7は、制御装置11(更新処理部25)が推定モデルMを更新する処理(以下「更新処理」という)S8のフローチャートである。対象拍点Bnおよび各隣接拍点Bn±1の移動を契機として更新処理S8が開始される。
【0040】
更新処理S8が開始されると、更新処理部25は、移動後の対象拍点Bnおよび各隣接拍点Bn±1に対応する数値列Cを時間軸上に設定する(S81)。
図6に状態4として例示される通り、数値列Cは、時間軸上の解析時点t毎に設定された数値Q(t)の時系列である。
【0041】
数値列Cは、移動後の対象拍点Bnおよび各隣接拍点Bn±1に対応する数値分布Dを含む。数値分布Dは、時間軸上の特定の範囲における数値Q(t)の分布である。数値分布Dは、時間軸上において時刻tを変数として定義される確率分布関数により表現される。第1実施形態における数値分布Dは、所定の分布幅にわたる線対称な三角分布である。拍点B毎に数値分布Dが個別に設定される。各拍点Bに対応する数値分布Dは、当該拍点Bにおいて最大値となるように時間軸上の位置が決定される。例えば、対象拍点Bnに対応する数値分布Dは当該対象拍点Bnにおいて最大値をとり、各隣接拍点Bn±1に対応する数値分布Dは当該隣接拍点Bn±1において最大値をとる。数値列Cのうち各数値分布D以外の各解析時点tにおける数値Q(t)はゼロに設定される。
【0042】
図6に状態5として例示される通り、更新処理部25は、時間軸上の適用区間T内の各解析時点tについて誤差e(t)を算定する(S82)。適用区間Tは、隣接拍点Bn-1と隣接拍点Bn+1とを含む一連の区間である。具体的には、隣接拍点Bn-1と隣接拍点Bn+1とを端点とする時間軸上の期間が適用区間Tとして設定される。各解析時点tの誤差e(t)は、当該解析時点tにおける確率P(t)と数値列Cのうち当該解析時点tにおける数値Q(t)との相違に応じた数値である。例えば、確率P(t)と数値Q(t)との差分の自乗(={P(t)-Q(t)}
2)が誤差e(t)として算定される。
【0043】
更新処理部25は、適用区間T内の相異なる解析時点tについて算定された複数の誤差e(t)から誤差関数Eを算定する(S83)。誤差関数Eは、適用区間T内における確率P(t)と数値Q(t)との相違を表す目的関数である。例えば、適用区間T内の複数の誤差e(t)の合計が誤差関数Eとして算定される。
【0044】
更新処理部25は、誤差関数Eが最小化されるように推定モデルMを更新する(S84)。推定モデルMの更新には、公知の技術が任意に採用される。例えば、Self-Attentionを利用した適応処理が、推定モデルMの更新に採用される。推定モデルMに対する適応処理については、例えばKazuhiko Yamamoto, "HUMAN-IN-THE-LOOP ADAPTATION FOR INTERACTIVE MUSICAL BEAT TRACKING,", Proceedings of the 22nd ISMIR Conference, Online, November 7-12, 2021に記載されている。
【0045】
以上の説明から理解される通り、更新処理部25は、移動後の対象拍点Bnおよび各隣接拍点Bn±1に対応する数値分布D(数値Q(t))と、事前の推定処理S2(第1処理S21)により推定された確率P(t)の時系列との誤差e(t)が低減されるように、推定モデルMを更新する。したがって、対象拍点Bnおよび各隣接拍点Bn±1の移動を推定モデルMに適切に反映できる。
【0046】
図8は、制御装置11が実行する処理(以下「音響解析処理」という)のフローチャートである。例えば操作装置14に対する利用者からの指示を契機として音響解析処理が開始される。
【0047】
音響解析処理が開始されると、制御装置11(特徴抽出部30)は、時間軸上の各解析時点tについて音響信号Aの特徴量F(t)を算定する(S1)。制御装置11(拍点推定部21)は、
図3に例示した推定処理S2により、音響信号Aの各特徴量F(t)から複数の拍点Bを推定する。推定処理S2の第1処理S21には、特徴量F(t)と確率P(t)との関係を機械学習により学習した推定モデルMが利用される。制御装置11(表示制御部22)は、確認画像Gを表示装置13に表示する(S3)。確認画像Gの拍点領域Gbには、推定処理S2により推定された複数の拍点Bが表示される。
【0048】
制御装置11は、終了条件が成立したか否かを判定する(S4)。終了条件は、例えば、操作装置14に対する操作で利用者が音響解析処理の終了を指示したことである。終了条件が成立した場合(S4:YES)、制御装置11は音響解析処理を終了する。終了条件が成立しない場合(S4:NO)、制御装置11(拍点編集部24)は、対象拍点Bnを移動する指示を利用者から受付けたか否かを判定する(S5)。対象拍点Bnの移動が指示されない場合(S5:NO)、制御装置11は処理をステップS4に移行する。すなわち、制御装置11は、音響解析処理の終了の指示または対象拍点Bnの移動の指示を待機する。
【0049】
対象拍点Bnの移動の指示を受付けた場合(S5:YES)、制御装置11(拍点編集部24)は、対象拍点Bnと前後の隣接拍点Bn±1とを、利用者からの指示に応じて時間軸上で移動する(S6)。また、制御装置11(表示制御部22)は、拍点領域Gbにおける対象拍点Bnおよび各隣接拍点Bn±1を利用者からの指示に応じて移動する(S7)。
【0050】
制御装置11(更新処理部25)は、
図7に例示した更新処理S8により推定モデルMを更新する。推定モデルMが更新されると、制御装置11は、推定処理S2に処理を移行する。すなわち、制御装置11(拍点推定部21)は、更新後の推定モデルMを利用した推定処理S2を音響信号Aに対して実行することで、複数の拍点Bを推定する。第2回目以降の推定処理S2には、音響解析処理の開始の直後に算定された特徴量F(t)が適用される。
【0051】
以上の説明から理解される通り、対象拍点Bnの移動毎に、推定モデルMの更新処理S8と、更新後の推定モデルMを利用した推定処理S2とが反復される。したがって、推定処理S2により推定される各拍点Bの位置は、推定処理S2の反復毎に、利用者からの指示が反映された位置に接近する。任意の1回の推定処理S2により推定される拍点Bが「第1拍点」の一例であり、推定モデルMの更新後における次回の推定処理S2により推定される拍点Bが「第2拍点」の一例である。
【0052】
以上に説明した通り、第1実施形態においては、推定処理S2により推定された複数の拍点Bのうち、利用者が選択した対象拍点Bnと当該対象拍点Bnの周囲の隣接拍点Bn±1との移動に応じて推定モデルMが更新され、更新後の推定モデルMを適用した推定処理S2により複数の拍点Bが再推定される。すなわち、推定モデルMの更新においては、対象拍点Bnの移動だけでなく対象拍点Bnと各隣接拍点Bn±1との時間的な関係も、推定モデルMに反映される。したがって、対象拍点Bnの移動だけが推定モデルMに反映される形態(以下「対比例」という)と比較して、利用者の意図に適切に適合した拍点Bを推定できる。
【0053】
具体的には、対比例においては、対象拍点Bnと直前の隣接拍点Bn-1との間隔の縮小、および、対象拍点Bnと直後の隣接拍点Bn+1との間隔の拡大が、推定モデルMに反映される。したがって、対象拍点Bnの経過後に演奏速度が低下するという傾向(リタルダンド)が推定モデルMに付与される。しかし、対象拍点Bnが移動された場合、利用者は、演奏速度の変化を意図している場合よりも、楽曲全体にわたる拍点Bの修正を意図している可能性が高い。第1実施形態においては、対象拍点Bnと各隣接拍点Bn±1との時間的な関係が推定モデルMに反映されるから、対象拍点Bnの経過後に演奏速度が低下する対比例の問題は解消される。すなわち、前述の通り、対比例と比較して、利用者の意図に適切に適合した拍点Bを推定できる。ひいては、利用者の意図が適切に反映された拍点Bを推定できるという顧客体験を利用者に提供できる。
【0054】
また、第1実施形態においては、拍点領域Gbが表示装置13に表示されるから、対象拍点Bnと各隣接拍点Bn±1とが利用者からの指示に応じて移動する様子を、利用者が視覚的に確認できる。したがって、更新後の推定モデルMにより推定される拍点Bを予測しながら、利用者は対象拍点Bnと各隣接拍点Bn±1との移動を指示できる。
【0055】
B:第2実施形態
第2実施形態を説明する。なお、以下に例示する各形態において機能が第1実施形態と同様である要素については、第1実施形態の説明で使用したのと同様の符号を流用して各々の詳細な説明を適宜に省略する。
【0056】
図9は、第2実施形態における音響解析システム100の機能的な構成を例示するブロック図である。第2実施形態の制御装置11は、記憶装置12に記憶されたプログラムを実行することで、第1実施形態と同様の要素(拍点推定部21,表示制御部22,再生制御部23,拍点編集部24および更新処理部25)に加えて区間設定部26として機能する。
【0057】
区間設定部26は、時間軸上における音響信号Aの一部の区間(以下「特定区間」という)を設定する。具体的には、区間設定部26は、利用者からの指示に応じて特定区間を設定する。例えば、利用者は、操作装置14を操作することで、波形領域Gaに表示された音響信号Aのうち特定の区間を指定できる。区間設定部26は、利用者から指定された区間を特定区間として設定する。
【0058】
第2実施形態の制御装置11は、音響信号Aのうち特定区間について
図8の音響解析処理を実行する。例えば、拍点推定部21による推定処理S2は特定区間について限定的に実行される。すなわち、楽曲内の特定区間内について複数の拍点Bが推定される。
【0059】
音響解析処理の具体的な手順は第1実施形態と同様である。したがって、第2実施形態においても第1実施形態と同様の効果が実現される。また、第2実施形態においては、音響信号Aの一部の区間(特定区間)について限定的に拍点Bを推定できる。
【0060】
なお、以上の説明においては利用者からの指示に応じて特定区間が設定される形態を例示したが、特定区間の設定の方法は任意であり、以上の例示には限定されない。例えば、区間設定部26は、利用者からの指示を必要とせずに、所定の規則により特定区間を設定してもよい。例えば、区間設定部26は、音響信号Aが表す楽曲の複数の構造区間の何れかを特定区間として設定してもよい。構造区間は、音楽的な意味に応じて楽曲を時間軸上で区分した区間である。構造区間は、例えばイントロ(intro)、Aメロ(verse)、Bメロ(bridge)、サビ(chorus)およびアウトロ(outro)等の各区間である。区間設定部26は、音響信号Aを解析することで当該音響信号Aを複数の構造区間に区分し、複数の構造区間のうち特定の構造区間を特定区間として設定する。以上の構成によれば、特定の構造区間について限定的に拍点Bを推定できる。
【0061】
C:変形例
以上に例示した各態様に付加される具体的な変形の態様を以下に例示する。以下の例示から任意に選択された2以上の態様を、相互に矛盾しない範囲で適宜に併合してもよい。
【0062】
(1)前述の各形態においては、対象拍点Bnの直前の隣接拍点Bn-1と直後の隣接拍点Bn+1とを対象拍点Bnとともに移動する形態を例示したが、隣接拍点Bn-1および隣接拍点Bn+1の一方のみを対象拍点Bnとともに移動する形態も想定される。例えば、拍点編集部24は、対象拍点Bnと直前の隣接拍点Bn-1とのみを利用者からの指示に応じて時間軸上で移動し、更新処理部25は、隣接拍点Bn-1と対象拍点Bnとの間の適用区間T内において誤差e(t)を算定してもよい。同様に、拍点編集部24は、対象拍点Bnと直後の隣接拍点Bn+1とのみを利用者からの指示に応じて時間軸上で移動し、更新処理部25は、対象拍点Bnと隣接拍点Bn+1との間の適用区間T内において誤差e(t)を算定してもよい。以上の説明から理解される通り、拍点編集部24は、複数の拍点Bのうち対象拍点Bnの周囲に位置する1以上の隣接拍点Bn±1を時間軸上で移動する要素として表現される。
【0063】
なお、前述の各形態においては、対象拍点Bnの移動だけでなく、対象拍点Bnと直前の隣接拍点Bn-1との時間的な関係と、対象拍点Bnと直後の隣接拍点Bn+1との時間的な関係とについても、推定モデルMに反映される。したがって、対象拍点Bnと周囲の1個の隣接拍点Bとのみが推定モデルMに反映される形態と比較して、利用者の意図に適切に適合した拍点Bを推定できるように推定モデルMを更新できる。
【0064】
(2)前述の各形態においては、移動後の対象拍点Bnおよび各隣接拍点Bn±1に対応する数値分布Dとして三角分布を例示したが、数値分布Dの種類または形状は、以上の例示に限定されない。例えば、正規分布等の確率分布、またはパルス状の分布等も、数値分布Dとして採用される。
【0065】
(3)特徴抽出部30が音響信号Aから算定する特徴量F(t)の種類は、前述の各形態における例示に限定されない。例えば、音響信号Aを構成する所定個のサンプルの時系列が、特徴量F(t)として推定処理S2に適用されてもよい。以上の形態においては、特徴抽出部30が音響信号Aからサンプルの時系列を抽出していると解釈できる一方、音響信号A自体が部分的に推定処理S2に適用されるという観点では、特徴抽出部30が省略された形態とも解釈され得る。
【0066】
(4)前述の各形態においては、利用者が指示した移動方向(前方/後方)および移動量δに応じて対象拍点Bnおよび各隣接拍点Bn±1を移動させたが、対象拍点Bnおよび各隣接拍点Bn±1の移動を利用者が指示するための方法は、以上の例示に限定されない。
【0067】
例えば、利用者が入力した符号(±)および数値に応じて、拍点編集部24が対象拍点Bnおよび各隣接拍点Bn±1を移動してもよい。利用者が負数を入力した場合、拍点編集部24は、対象拍点Bnおよび各隣接拍点Bn±1を、当該負数の絶対値に相当する移動量δだけ時間軸上の前方に移動する。他方、利用者が正数を入力した場合、拍点編集部24は、対象拍点Bnおよび各隣接拍点Bn±1を、当該正数に相当する移動量δだけ時間軸上の後方に移動する。
【0068】
また、拍点編集部24は、利用者が指示した回数にわたり対象拍点Bnおよび各隣接拍点Bn±1を所定の単位量だけ時間軸上で移動してもよい。例えば、利用者からの移動指示を受付けるたびに、拍点編集部24は、利用者が指定した方向(前方/後方)に、対象拍点Bnおよび各隣接拍点Bn±1を単位量だけ移動する。したがって、所定の単位量と移動指示の回数との乗算値に相当する移動量δだけ、対象拍点Bnおよび各隣接拍点Bn±1が時間軸上で移動する。
【0069】
以上の説明から理解される通り、本開示において拍点を「利用者からの指示に応じて移動する」とは、拍点の移動の条件(例えば移動方向および移動量)が利用者からの指示に応じて変化することを意味し、利用者による指示の方法および利用者が指示する事項は、本開示において任意である。また、「拍点の移動」は、時間軸上における拍点の位置を変更することを意味する。
【0070】
(5)前述の各形態においては、深層ニューラルネットワークを推定モデルMとして例示したが、推定モデルMの構成は以上の例示に限定されない。例えば、隠れマルコフモデル(HMM:Hidden Markov Model)またはサポートベクタマシン(SVM:Support Vector Machine)等の統計モデルも、推定モデルMとして利用される。なお、前述の各形態においては、更新処理S8により推定モデルMを更新した。推定モデルMは推定処理S2に適用されるから、更新処理S8は、推定処理S2を更新する処理とも表現される。
【0071】
(6)例えばスマートフォンまたはタブレット端末等の情報装置との間で通信するサーバ装置により音響解析システム100を実現してもよい。例えば、音響解析システム100は、情報装置から受信した音響信号Aの解析により複数の拍点Bを推定し、複数の拍点Bを表すデータを情報装置に送信する。
【0072】
(7)以上に例示した音響解析システム100の機能は、前述の通り、制御装置11を構成する単数または複数のプロセッサと、記憶装置12に記憶されたプログラムとの協働により実現される。本開示に係るプログラムは、コンピュータが読取可能な記録媒体に格納された形態で提供されてコンピュータにインストールされ得る。記録媒体は、例えば非一過性(non-transitory)の記録媒体であり、CD-ROM等の光学式記録媒体(光ディスク)が好例であるが、半導体記録媒体または磁気記録媒体等の公知の任意の形式の記録媒体も包含される。なお、非一過性の記録媒体とは、一過性の伝搬信号(transitory, propagating signal)を除く任意の記録媒体を含み、揮発性の記録媒体も除外されない。また、配信装置が通信網を介してプログラムを配信する構成では、当該配信装置においてプログラムを記憶する記憶装置が、前述の非一過性の記録媒体に相当する。
【0073】
D:付記
以上に例示した形態から、例えば以下の構成が把握される。
【0074】
本開示のひとつの態様(態様1)に係る音響解析システムは、音響信号に対する推定処理により複数の第1拍点を推定する拍点推定部と、前記複数の第1拍点のうち利用者が選択した対象拍点と、前記複数の第1拍点のうち前記対象拍点の周囲に位置する1以上の隣接拍点とを、前記利用者からの指示に応じて時間軸上で移動する拍点編集部と、前記対象拍点および前記1以上の隣接拍点の移動に応じて前記推定処理を更新する更新処理部とを具備し、前記拍点推定部は、前記更新後の推定処理を前記音響信号に対して実行することで複数の第2拍点を推定する。
【0075】
以上の態様によれば、利用者が選択した対象拍点と当該対象拍点の周囲に位置する1以上の隣接拍点とに関する時間軸上の移動に応じて推定処理が更新され、更新後の推定処理により複数の第2拍点が推定される。推定処理の更新においては、対象拍点の移動だけでなく、対象拍点と1以上の隣接拍点との時間的な関係も、推定処理に反映される。したがって、対象拍点の移動だけが推定処理に反映される形態と比較して、利用者の意図に適切に適合した第2拍点を推定できる。なお、音響解析システムは、音響解析装置と表現されてもよい。「音響解析システム」および「音響解析装置」の何れにおいても、単体の装置で構成されるか相互に別体の複数の装置で構成されるかは不問である。
【0076】
「推定処理」は、音響信号から複数の拍点(第1拍点/第2拍点)を推定するための処理である。例えば、学習用の音響信号の特徴量と、当該特徴量が観測される時点が拍点に該当する確率との関係を学習した推定モデルを利用する処理が「推定処理」の一例である。具体的には、処理対象の音響信号のうち特定の時点における特徴量を推定モデルにより処理することで、当該時点が拍点に該当する確率が出力される。
【0077】
「推定処理の更新」は、推定処理に適用される要素を更新する処理を意味する。例えば、推定モデルを利用する推定処理を想定すると、推定モデルを規定する変数を更新する機械学習が「推定処理の更新」に相当する。
【0078】
態様1の具体例(態様2)において、前記1以上の隣接拍点は、前記複数の第1拍点のうち前記対象拍点の直前に位置する第1拍点と、前記複数の第1拍点のうち前記対象拍点の直後に位置する第1拍点とを含む。以上の態様においては、対象拍点の移動だけでなく、対象拍点と直前の第1拍点との時間的な関係と、対象拍点と直後の第1拍点との時間的な関係とについても、推定処理に反映される。したがって、対象拍点と周囲の1個の隣接拍点とのみが推定処理に反映される形態と比較して、利用者の意図に適切に適合した第2拍点を推定できるように推定処理を更新できる。
【0079】
態様1または態様2の具体例(態様3)に係る音響解析システムは、前記対象拍点と前記1以上の隣接拍点とを表す拍点画像を表示装置13に表示し、前記拍点画像に含まれる前記対象拍点と前記1以上の隣接拍点とを前記利用者からの指示に応じて移動する表示制御部22をさらに具備する。以上の態様においては、対象拍点と1以上の隣接拍点とが利用者からの指示に応じて移動する様子を、利用者が視覚的に確認できる。したがって、更新後の推定処理により推定される第2拍点を予測しながら、利用者は対象拍点と1以上の隣接拍点との移動を指示できる。
【0080】
態様1から態様3の何れかの具体例(態様4)において、前記推定処理は、学習用音響信号の特徴量と、当該特徴量が観測される時点が拍点に該当する確率との関係を学習した推定モデルにより、前記音響信号の各時点における特徴量を処理することで、当該時点が拍点に該当する確率を生成する第1処理と、前記第1処理により生成された確率の時系列から前記複数の第1拍点を特定する第2処理とを含む。以上の態様においては、学習用音響信号の特徴量と当該特徴量の時点が拍点に該当する確率との関係を学習した推定モデルを利用して、音響信号から複数の拍点が推定される。したがって、特徴量が多様に変化する未知の音響信号について複数の拍点(第1拍点/第2拍点)を高精度に推定できる。
【0081】
態様4の具体例(態様5)において、前記更新処理部は、前記移動後の前記対象拍点および前記1以上の隣接拍点に対応して時間軸上に設定された数値分布と、前記第1処理により推定された確率の時系列と、の誤差が低減されるように、前記推定モデルを更新する。以上の態様においては、対象拍点および隣接拍点に対応する数値分布と、第1処理により推定された確率の時系列との誤差が低減されるように、推定モデルが更新されるから、対象拍点および隣接拍点の移動を推定モデルに適切に反映することが可能である。
【0082】
「数値分布」は、時間軸上における数値の分布である。数値分布の種類および形状は任意である。例えば、三角分布、正規分布、またはパルス状の分布が、「数値分布」として例示される。数値分布について、「(対象/隣接)拍点に対応して設定される」とは、拍点の時間軸上の位置と数値分布の時間軸上の位置が相互に対応することを意味する。すなわち、拍点の時間軸上の位置が変化に連動して数値分布の時間軸上の位置も変化する。例えば、数値分布の極大点が拍点に一致する関係が、「拍点に対応して設定される」関係の典型例である。
【0083】
態様1から態様5の何れかの具体例(態様6)に係る音響解析システムは、時間軸上における前記音響信号の一部の区間である特定区間を設定する区間設定部26をさらに具備し、前記拍点推定部による推定処理は、前記特定区間について実行される。以上の態様によれば、音響信号の一部の区間について限定的に第2拍点を推定できる。
【0084】
「特定区間」は、時間軸上における音響信号の任意の一部の区間である。例えば、利用者が指定した区間が「特定区間」の一例である。また、音響信号が表す楽曲の複数の構造区間の何れかを「特定区間」として拍点を推定してもよい。構造区間は、音楽的な意味に応じて楽曲を時間軸上で区分した区間である。構造区間は、例えば、イントロ(intro)、Aメロ(verse)、Bメロ(bridge)、サビ(chorus)およびアウトロ(outro)等の各区間である。
【0085】
本開示のひとつの態様に係る音響解析方法は、音響信号に対する推定処理により複数の第1拍点を推定し、前記複数の第1拍点のうち利用者が選択した対象拍点と、前記複数の第1拍点のうち前記対象拍点の周囲に位置する1以上の隣接拍点とを、前記利用者からの指示に応じて時間軸上で移動し、前記対象拍点および前記1以上の隣接拍点の移動に応じて前記推定処理を更新し、前記更新後の推定処理を前記音響信号に対して実行することで複数の第2拍点を推定する。なお、音響解析システムについて例示した各態様は、本開示に係る音響解析方法にも同様に適用される。
【0086】
本開示のひとつの態様に係るプログラムは、音響信号に対する推定処理により複数の第1拍点を推定する拍点推定部、前記複数の第1拍点のうち利用者が選択した対象拍点と、前記複数の第1拍点のうち前記対象拍点の周囲に位置する1以上の隣接拍点とを、前記利用者からの指示に応じて時間軸上で移動する拍点編集部、および、前記対象拍点および前記1以上の隣接拍点の移動に応じて前記推定処理を更新する更新処理部、としてコンピュータシステムを機能させるプログラムであって、前記拍点推定部は、前記更新後の推定処理を前記音響信号に対して実行することで複数の第2拍点を推定する。なお、音響解析システムについて例示した各態様は、本開示に係るプログラムにも同様に適用される。
【符号の説明】
【0087】
100…音響解析システム、11…制御装置、12…記憶装置、13…表示装置、14…操作装置、15…放音装置、21…拍点推定部、22…表示制御部、23…再生制御部、24…拍点編集部、25…更新処理部、26…区間設定部、30…特徴抽出部、31…第1処理部、32…第2処理部。