音楽のハーモニーを簡単に書き表す方法にコード進行があります。これはコードという単語を用いる文章のようなもので、作曲から演奏までさまざまな場面で利用されています。
コード進行を読み解くときには、基準となっている音や音階、すなわちキーを意識することが大切です。なぜなら同じコードでもキーに応じてまったく異なる表情を見せるからです。特に便利な考え方は、キーとそれ以外の情報をばらばらに扱うことです。これにより、キーの違いを忘れてコードの特性に注目したり(例えば「ドミナントコード」「ツーファイブワン」)、キーそのものの動きや性質に注目したり(例えば「転調」「平行調」)と、音楽をより深く理解することが可能になります。
近年の 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)



