音楽のハーモニーを簡単に書き表す方法にコード進行があります.これはコードという単語を用いる文章のようなもので,作曲から演奏までさまざまな場面で利用されています.
コード進行を読み解くときには,基準となっている音や音階,すなわちキーを意識することが大切です.なぜなら同じコードでもキーに応じてまったく異なる表情を見せるからです.特に便利な考え方は,キーとそれ以外の情報をばらばらに扱うことです.これにより,キーの違いを忘れてコードの特性に注目したり(例えば「ドミナントコード」「ツーファイブワン」),キーそのものの動きや性質に注目したり(例えば「転調」「平行調」)と,音楽をより深く理解することが可能になります.
近年の AI は文章や単語の意味をとても正確に理解しています.コード進行も「文章のようなもの」なので,同じようにして学習させることができます.しかし,特に工夫しない場合,AI のコードの理解をキーごとに色分けしてプロットすると,図1のようになります.これを見ると,キーとそれ以外の情報を分けるような考え方は行っていないようです.これは人間の理解とは異なるため,少々不便です.

図1 t-SNEで次元削減したコードの文脈化埋め込み表現
そこで私たちは,コード進行全体のキーを変える移調という操作を学習に取り入れ,AI がキーの情報とキー以外の情報を分けて理解するように誘導する手法を提案しました(図2).
図2 提案手法が追加する2つの学習タスクの概略
この手法で学習させたAIがコードのキーをどのように理解するかを表示すると,図3のようになります.AIには一度も「正解のキー」を教えていないにもかかわらず,同じキーが同じように理解されていることが分かります.
図3 t-SNEで次元削減したキーの文脈化埋め込み表現
[発表論文] 川喜田塔馬, 野口渉, 田村康将, 山本雅人, 移調を考慮した自己教師あり学習による文脈化コード埋め込みの獲得, 情報処理学会研究報告音楽情報科学(MUS), Vol. 2025-MUS-142, No. 5, pp. 1-6 (2025)