音楽と情報科学

>100 Views

September 30, 24

スライド概要

5月21日に桜美林大学で行った出前授業のスライドです。

profile-image

日本大学 文理学部 情報科学科 北原研究室。 「Technology Makes Music More Fun」を合言葉に、音楽をはじめとするエンターテインメントの高度化に資する技術の研究開発を行っています。

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

(ダウンロード不可)

関連スライド

各ページのテキスト
1.

音楽と情報科学 日本大学 文理学部 情報科学科 北原 鉄朗 [email protected] Twitter: @tetsurokitahara

2.

自己紹介 ● 1979年生まれ。39歳 ● 札幌→柏→京都→大阪→東京 ● 音楽歴 – 小学時代:ヤマハジュニア音楽教室専門コース – 中学時代:DTMをはじめる(PC壊れてすぐお預け) – 高校・大学時代:バンド活動 ● 情報科学に興味を持ったきっかけ – 中学ぐらいのときにコンピュータに触った – プログラミングで機械を自由自在に操る楽しさ

3.

1. 音楽情報処理って何?

4.

「音楽情報処理」って知ってる? 音楽とコンピュータが関わる全てを対象とする研究分野 オーディオ対象 音楽推薦 音楽情報検索 応用 寄り MIDI対象 ジャムセッション システム 能動的 音楽鑑賞 自動伴奏 N次創作支援 自動伴奏 自動採譜 類似度計算 ピッチ抽出 楽器練習支援 カラオケ 生成 新音楽I/F 歌声合成 演奏表情付け 楽音合成 基礎 寄り 演奏分析 作曲支援 BGM生成 自動作曲 旋律予測 楽曲分析

5.

音楽と情報科学/ITの関わり 音楽活動のための ツールとしてのIT シンセサイザー、 エレクトーンなど 情報科学研究の 題材としての音楽 人工知能、 知識情報処理 情報検索、 推薦システム DTM、DAW HCI

6.

日大文理 北原研で行われている 音楽情報処理 (あくまで一例) ● 自動作曲・自動編曲 C ● ● 音楽検索・音楽推薦 Am G A E E C C 音楽の非専門家の ための音楽創作支援 ● カラオケの楽しみを 拡張する試み

7.

2. 日大文理 北原研で行われている 音楽情報処理研究をいくつか紹介

8.

(2013年度修了 鈴木峻平氏の研究成果) 【事例1】 四声体和声の自動生成 ソプラノパートが与えられ、残りの3パートを自動的に生成する PLAY C F Em G C C G7 C F C Am C G C

9.

何が難しいのか C G7 C G7 同時に鳴る各パートの音の関係(同時性) ソプラノの音が「ミ」のときに、 そのときのバスの音が「ド」は妥当か? 旋律の横方向のつながり(継続性) ある音が「ミ」のときに、その次の音が「レ」は妥当か? 同時性と継続性の両方を満たす音を探す必要がある 和声学の分野で様々なルールが提案されているが、 すべてを矛盾なく適用するのは簡単ではない

10.

【事例2】 (Universitat Pompeu Fabra との共同研究) 曲線描画に基づく即興演奏支援システム この研究が目指すところ 非専門家も含め、誰もが即興演奏を楽しめるようになる コンピュータに対して簡単な操作をすると、 その場でメロディが生成されて演奏できる 技術的課題 ヒューマンインタフェース 自動メロディ生成 音楽の知識がなくても 非専門家が入力した曖昧で 不完全な情報から、メロディ できる簡単な操作とは? をどう生成するか

11.

解決策 ヒューマンインタフェース 画面上に指で 「旋律概形」を描く 自動メロディ生成 遺伝的アルゴリズム を用いて メロディを自動生成

12.

(2017年度卒業 白石美南氏・小笠原梢氏の研究成果) 【事例3】 カラオケのためのハモリ練習支援システム この研究が目指すところ カラオケでハモりたい人が、ハモリパートを練習できる 原曲にハモリパートがなくてもハモれるようにしたい ● 原曲のハモリパート(ある場合)異なっても構わない ● ● 家などで1人で練習したい 技術的課題 ● ● ハモリパートの自動生成 ハモリパートの練習環境 の提供 解決策 ルール or 確率モデル 歌唱者の音高表示 などでフィードバック

13.

【事例4】 (2012年度卒業 山下雄史氏・岡田美咲氏、 2014年度卒業 飯島孔右氏・鶴岡亜也佳氏の研究成果) スマートループシーケンサ ループシーケンサとは ● 「ループ」と呼ばれる短いオーディオ 素材を組み合わせるだけで作曲できる ● 専門知識がなくても作曲可能 Sony Creative Software: ACID Pro 7

14.

既存のルールシーケンサの問題点 ループが多くありすぎる 本研究のターゲット テクノ・ミュージック ループを足したり引いたりして、 曲の盛り上がりを制御している 解決策 曲の盛り上がりの軌跡を ユーザが曲線で入力 入力された曲の盛り上がりの 軌跡を実現するように、 ループを自動選択する 自動選択をどう実現する?

15.

3. 音楽を確率で考えよう

16.

音楽と情報科学の相性 音楽は、情報科学と大変親和性が高い な ぜ ? ● 記号的データ表現の確立 ● 計算機上に実装しやすい専門知識の蓄積 その土台となっているのが「離散性」 (とびとびの値しか 取らないこと) 音の 高さ 262Hz 293Hz 311Hz 329Hz ・・・・・・ ド 音の 長さ 277Hz ド# レ レ# ミ 0.25秒 0.5秒 1秒 0.125秒 2秒 (テンポ=120の場合)

17.

なぜ離散的だといいのか 音の高さや長さが飛び飛びの値しか取らないと… それらの値に「名前」(記号、ラベル)を付けることができる 262Hz 277Hz 293Hz 311Hz 329Hz ド ド# レ レ# ミ ・・・・・・ 出現回数などを数えることができる (例:「ド」の後に「レ」が来るのは、967回中215回) 確率を計算することができる (例: P(レ | ド) = 215/967 ≒ 0.222)

18.

音楽を確率で考える 確率で考える対象要素 音符(特に音の高さ) ● コード名 ● どういう確率を考えるか ● 普通の確率 – ハ長調の楽曲で「ド」が出現する確率は? ● 条件付確率 – ハ長調の楽曲で「ド」の次に「レ」が出現する確率は? – ハ長調の楽曲で「C」の次に「Am」が出現する確率は? – ハ長調の楽曲でコードが「C」のときにメロディが「ド」の 確率は?

19.

和音の遷移には傾向がある 主和音(ドミソ) 解決感を与える 曲の最後によく出てくる 下属和音(ファラド) 属和音(ソシレ) 属和音に移りやすい 主和音に移りやすい ※括弧内はハ長調の場合 ファラド ドミソ オートマトン ソシレ

20.

オートマトン 入力に応じて機械の状態変化を表したもの 例 音楽プレイヤーの場合 再生 ボタン 停止中 一時停止 ボタン 再生中 停止 ボタン 停止ボタン 一時停止ボタン 一時停止 ボタン 再生ボタン 一時 停止中

21.

例 100円ジュースの自動販売機の場合 10円 投入 0円 投入中 10円 投入 10円 投入中 20円 投入中 10円 投入 … 10円 投入 50円投入 ジュース 購入 50円 投入中 100円投入 50円投入 80円 投入中 90円 投入中 100円 投入中 10円 投入 10円 投入 10円 … 投入 10円 投入

22.

和音の遷移は一通りではない どの和音からどの和音にも飛べるが、飛ぶ確率が異なる 0.2 非決定性オートマトン ファラド 0.4 ドミソ 0.2 ※ 確率の値は 適当です 0.6 0.2 0.4 0.8 ソシレ 0.2

23.

こうすると何ができる? その1 与えられたコード進行がもっともらしいかがわかる ドミソ ファラド ソシレ ドミソ 0.4 × 0.6 × 0.8 もっともらしさ=0.192 ドミソ ソシレ ファラド ドミソ 0.4 不可 0.2 この進行は不可 ドミソ ドミソ ドミソ ドミソ 0.2 × 0.2 × 0.2 もっともらしさ=0.008

24.

こうすると何ができる? その2 確率が最も高くなるようにコード進行を決めよう ドミソ ドミソ ここに何を入れる?

25.

見方を変えてみよう 和音を場所(都市、駅など)だと思おう ● 遷移確率を移動コストだと思おう ● 80円 – 0% → 100円 – 10% → 90円 金沢 – 20% → 80円 60円 …… – 100% → 0円 東京 0.2 ファラド 0.4 0.6 0.2 0.4 80円 40円 80円 60円 大阪 20円 80円 ソシレ 東京から出発して8回目に最小コストで 0.8 東京に戻る経路を考えるのと同じ 0.2 0.2 ドミソ

26.

1 東京 2 80円 60円 60円 3 80円 東京 60円 80円 80 円 金沢 20円 大阪 結果 ここまでの 最小コスト 東京 80円 (大阪経由) 8 東京 140円 金沢 (東京または 金沢経由) 60円 40円 80円 大阪 100円 (金沢経由) 東京 金沢 大阪 東京 大阪 東京 大阪 東京 ドミソ ファラド ソシレ ドミソ ソシレ ドミソ ソシレ ドミソ

27.

同じ考え方でメロディも作れる 0.02 0.23 0.07 0.11 ド レ ミ 0.01 0.03 0.08 ファ ソ ラ シ ド 0.08 ※ すべてに遷移確率が付与されている(「ド」から以外も) ド ド 確率が最大になるように(移動コストが最小になるように) 空欄をうめていく

28.

つまり… ● 音やコード(和音)の遷移確率を計算すれば、 メロディやコード進行の生成ができる ● 最も確率(それっぽさ)が高いメロディやコード進行 を見つける処理は、最もコスト(移動時間、運賃など) が低い経路を見つける処理と変わらない ● 音やコード(和音)の遷移確率は、大量のメロディや コードのデータ(楽譜など)があれば、難しくない

29.

4. さきほど紹介した研究事例で 確率の考え方がどう活かされているか

30.

(2013年度修了 鈴木峻平氏の研究成果) 【事例1】 四声体和声の自動生成 ソプラノパートが与えられ、残りの3パートを自動的に生成する PLAY C F Em G C C G7 C F C Am C G C

31.

ベイジアンネットワークの利用 直前の音 現在の音 次の音 個々の には、 各音名に対する 確率が入る。 y x は、 x の確率が y に依存 して決まることを表す 与えられる or 決定済 確率計算対象

32.

データ 学習データ ● 賛美歌254曲 ● すべてハ長調に 移調して使用 評価データ ● 和声学の教科書 から抽出した 32個のメロディ

33.

別の実行例

34.

【事例2】 (Universitat Pompeu Fabra との共同研究) 曲線描画に基づく即興演奏支援システム 画面上に「旋律概形」 を描くと、その場で メロディが生成

35.

リズム決定法 基本的なアイディア 曲線の傾きが大きい → 短い音 ● 曲線の傾きが小さい → 長い音 ● 3 アルゴリズムの詳細 0 リズム候補 1 仮のリズム決定 3 3 3 3 3 3 3 傾きの しきい値処理 2 リズム決定 仮のリズムに 最も近いもの を 0 から探す 3

36.

音高決定法 基本的なアイディア 3 曲線への近さ と 音楽的妥当性 の 両方を満たす音高列を 「遺伝的アルゴリズム」(GA)で探す C A F

37.

遺伝的アルゴリズム? 生命の進化にヒントを得た最適化手法で、 データの集合に対して選択・交叉・突然変異を行い、 ある基準に最も当てはまるデータに近づけていく 1 ランダムにデータをたくさん(例えば1000個)生成する ドソミレフェソラソ ミレミレラレファシ ソシミドドファレミ … 2 交叉・突然変異を行ってデータを増やす(例えば100万個) ドソミレラレファシ ミレミレフェソラソ ソレミドドファラミ … 3 「適合度」が高いものを(例えば1000個)残す ドソミレラレファシ (適合度0.42) ソレミドドファラミ (適合度0.36) … 4 2 〜 3 を何度も繰り返す

38.

音高決定法 基本的なアイディア 3 曲線への近さ と 音楽的妥当性 の 両方を満たす音高列を 「遺伝的アルゴリズム」(GA)で探す 適合度の設計 旋律概形 への近さ C A F 音高の遷移の 音程の遷移の もっともらしさ もっともらしさ P(ni | ni-1) P(ni-ni-1 | ni-1-ni-2) F(N) = w0 sim(N) + w1 seq1(N) + w2 seq2(N) + w3 harm(N) + w4 ent(N) ブルースの P(notes | chord) Entropy 旋律DBに コードを条件とした 出現する 音高のもっともらしさ 音高の豊富さ 基づき計算

39.

聴取テスト ● 本システムまたは通常のキーボードを用いた演奏を、 音楽分野の研究者・学生が聴取し、0〜10で評価 ● http://www.kthrlab.jp/proj/jamsketch/listen/

40.

【事例3】 (2017年度卒業 白石美南氏・小笠原梢氏の研究成果) カラオケのためのハモリ練習支援システム ハモリパートを「隠れマルコフモデル」で生成

41.

隠れマルコフモデル? 観測データから、その背後の「状態」の遷移を推定 音声認識の場合 しゃべっている言葉を「状態」と考える 音響モデル 言語モデル 状態 状態 次の状態 観測データ /a/ /a/ /a/ の音は○%の確率で こういう波形になる /a/ の次は○%の確率で /i/ である /i/ この音の「状態」の遷移として 最も確率が高いのは /k/ /o/ /N/ /n/ /i/ /ch/ /i/ /w/ /a/ /k/ /o/ /N/ /n/ /i/ /ch/ /i/ /w/ /a/

42.

本研究の場合 ハモリパートの旋律を「状態」と考える ハモリパート→他パート ハモリパートが「ド」のときに、○%の確率で主旋律は「ミ」 △%の確率で主旋律は「レ」 ハモリパートが「ド」のときに、○%の確率で伴奏は「C」 △%の確率で伴奏は「Dm」 ハモリパート→ハモリパートの次の音 ハモリパートが「ド」のときに、○%の確率で次の音は「レ」 これらのすべての積が最も高くなる旋律を探して、 それをハモリパートとする

43.

【事例4】 (2012年度卒業 山下雄史氏・岡田美咲氏、 2014年度卒業 飯島孔右氏・鶴岡亜也佳氏の研究成果) スマートループシーケンサ 曲の盛り上がりの軌跡を ユーザが曲線で入力 入力された曲の盛り上がりの 軌跡を実現するように、 ループを自動選択する 隠れマルコフモデルで実現

44.

ループの組み合わせを「状態」とし、 盛り上がりの曲線を観測データと考える ループの組み合わせ→盛り上がり Sequence Drums と の組み合わせは、 ○%の確率で「盛り上がり=5」 Drums Sequence と の組み合わせは、 ○%の確率で「盛り上がり=1」 ある小節の組み合わせ→次の小節の組み合わせ 現状では、すべて等確率 すべての確率の積が最も高くなるものを探す

45.

5. 議論 ここからは、あくまで私見です

46.

現状の作曲能力は? ● 人間がルールを教え込めば、かなりのものも ● データから自動的にルールを学ぶのはまだまだ ● 理由:(整った)データがまだまだ足りない

47.

今後はどうなる? 人間を超える? ● データから学ぶのは、平均的なパターンにすぎない ● 音楽を聴いて感動する「心」は持っていない

48.

人間の作曲家はいなくなる? ● 感動を生む本質的な部分は人間が作る ● その他の部分のほとんどは、機械が代行

49.

機械の作曲家のあるべき姿は? ● 人間(プロデューサ)を助ける良きパートナー ● 究極はゴーストライター!?

50.

5. まとめ

51.

まとめ ● ● 音楽は、計算機上でデータ表現がしやすいため、 計算機上で音楽を生成・認識・分析する研究がさかん データさえあれば、旋律やコード進行の生成は、 確率の考え方を用いることで自動化できる ● 非専門家の音楽知識や技能を計算機が補うことで、 能動的に音楽を楽しむ人を増やしたい 本講義で紹介した研究事例の多くは、本研究室の学生の 研究成果です。ある程度のプログラミングの知識があれば、 皆さんでもこういう研究は十分できますので、興味があれば ぜひご連絡ください。大学院からの本分野の参入も歓迎です。

52.

Follow me!! Check it out!! @tetsurokitahara http://www.kthrlab.jp/ @kthrlab YouTube 日大文理北原研