AIは本当に手持ちのコード進行どおりに歌うのか?実測しました
AIが歌った曲は渡した楽譜にどこまで従うかを測定しました。コード一致度は英語歌詞で0.922、ベトナム語で0.809、楽譜なしでは0.546です。
執筆:MuziAI チーム。数値は MuziAI の開発中に私たちが自ら行った計測によるものです。下書きには AI の支援を使い、すべての数値を計測ログと照合しました。更新日:2026年10月13日。
曲を作る人からよく聞かれます。すでにコード進行と楽譜があるなら、AIは本当にその上で歌うのか、それとも大まかなヒントとして扱い、別の曲へと逸れていくのか。推測ではなく測定しました。結論から言うと、モデルは渡された楽譜のコードと構成に従います。原曲とのコード一致度は、英語歌詞で0.922、ベトナム語歌詞で0.809、楽譜なしでは0.546でした。測ったのはハーモニーであり、歌のメロディではありません。この記事ではその違いをはっきり書きます。

測り方:12の音名と2秒ごとの区間
MuziAIで曲を作るとき、システムは通常二段階で動きます。まずモデルがABC記譜法で楽譜(メロディ、コード、拍子)を書き、次に歌唱モデルがそれを音声にします。4:14の曲なら、作曲の段階に約40秒、歌唱に179秒の計算時間がかかります。自分の楽譜を渡せば、作曲の段階は省かれます。正解が分かっている状態で比べるため、既存曲の楽譜を新しい歌詞で歌い直させ、その結果を、楽譜の元になった原曲と比較しました。
この指標はCPUで動き、12音のクロマ特徴を使います。曲を2秒ごとの区間に切り、各区間のエネルギーを、どのオクターブで鳴っているかに関係なく、オクターブ内の12の音名(C、C♯、D、…、B)にすべて集約します。こうして2秒ごとに和声の指紋ができます。両方の曲の指紋を同じ時刻どうしで比べ、曲全体で平均します。スコアが1なら完全に同じです。
0.8のような数字も、「無関係」がどのあたりにあるのか分からなければ意味がありません。そこで下限を測りました。原曲を8秒ずらし、ずらしていない版と比べます。コードも楽器も声も同じで、時間がずれているだけなのに、スコアは0.656まで落ちます。
結果:四つの数字
| 条件 | コード一致度 | 0.8を超えた区間 | 曲の長さ |
|---|---|---|---|
| 楽譜あり、英語歌詞 | 0.922 | 86% | 188.6 s(原曲 189.3 s) |
| 楽譜あり、ベトナム語歌詞 | 0.809 | 52% | 記録なし |
| 楽譜なし | 0.546 | 7% | 161 s |
| 下限:原曲を8 sずらしたもの | 0.656 | 該当なし | 該当なし |
英語歌詞では区間の86%が0.8を超え、三分を超える曲なのに長さは原曲よりわずか0.7秒短いだけでした。つまりモデルは同じセクションを同じ長さで保っています。楽譜がないと、まったく別の曲を書きます。スコアは0.546で下限の0.656を下回り、長さも189秒ではなく161秒です。ベトナム語歌詞はその中間です。0.809は下限を明らかに上回っていますが、0.8を超えた区間は52%にとどまります。
楽譜があってもずれる理由
最もよい結果でも、区間の14%は0.8を下回っています。最初の二つの理由は測定で裏付けられており、残りの二つは仮説です。
- タイミングのずれは厳しく評価されます。指標はまったく同じ秒の区間どうしを比べます。0.656という下限が示すとおり、同一の曲でも8秒ずれるだけで大きく下がります。あるセクションを数拍長く、または短く歌うと、その後のすべての区間のスコアが引き下げられます。
- 生成は毎回ランダムな抽選です。ベトナム語の生成は英語とは別のシードを使ったため、0.809には二つの変化が同時に反映されています。言語による部分とシードによる部分は、まだ切り分けていません。
- 指標はミックス全体を聴いています。クロマはボーカルと楽器をまとめて扱うため、同じコードの上でも別の音で歌われたフレーズは、12の音名の分布を変えてしまいます(仮説)。
- 新しい歌詞は行の長さが違います。歌い手は小節の中で行を引き伸ばしたり詰めたりする必要があり、ベトナム語ではすべての音節に声調もあります(仮説、個別には未測定)。
限界と、まだ分かっていないこと
- 歌のメロディは未測定です。測るには声を分離して音高を追う必要があり、GPUが要ります。そのため作成ページで約束しているのは「コード、キー、テンポ」を保つことだけで、ボーカルの一音一音までは約束していません。
- サンプルが少ないです。四つの数字はすべて一つの楽譜から、各条件で一回ずつ生成した結果です。傾向は分かりますが、ベトナム語が常に英語より0.113低くなるとは言えません。
- メロディのみモードは、この指標でまだ測っていません。下側の参照値は、楽譜なしの0.546だけです。
- スコアが高くても、よい曲とは限りません。この指標は、編曲、歌声の質、歌詞がどれだけはっきり聞こえるかについては何も示しません。
試して停止したもの:「Am F C G」のようなコード入力欄
コード進行はあるけれどメロディはない、という人は多くいます。そこでコードを入力する欄を作り、コードと、休符だけのボーカル行からなる楽譜に変換しました。結果、コードは正しかった(0.858)ものの、曲の長さは189秒ではなく86秒で、モデルは歌詞をすべては歌いませんでした。この欄は停止しています。理由は別の測定で説明できます。インストゥルメンタルモードを作っていたとき、セクション名だけの楽譜では、ラベルが4個でも8個でもおよそ一分の曲になりましたが、仮の歌詞行を入れるとモデルは本物のメロディを書き、行数に応じて曲が長くなりました。つまり曲の長さを決めるのはコードではなく、メロディの行です。コード入力欄を機能させるには、与えられた進行の中でモデルがメロディを作曲する必要がありますが、その仕組みはまだ作っていません。
メロディとコード、それともメロディのみ?
「既存の楽譜」パネルでは、何を残すかを選べます。メロディとコードは楽譜をそのまま渡します。0.922と0.809はこの条件の結果です。メロディのみでは、歌う前にサービス側ですべてのコード記号を取り除きます。歌唱モデルは自分ではコード記号を無視しないからです。本番サイトで最初から最後まで通した実テストでは、送信した楽譜にはコード記号が68個あり、モデルが使った楽譜では0個になり、曲は210秒になりました。
- コード進行を重視するならメロディとコードを選びます。伴奏がすでに完成している場合や、既存曲に新しい歌詞を書く場合です。
- コードよりメロディを信頼できるならメロディのみを選びます。和声を確認していない手書きの採譜、標準的でない書き方のコード、新しいスタイルで伴奏をつけ直したいメロディなどです。
- 原曲のコードに合わせることが最優先なら、メロディのみは避けてください。こちらのコード一致度はまだ測っていません。
曲作りへの活かし方
- 楽譜を用意します。どのサンプル曲のページにも、「コードと楽譜」ブロックに「この楽譜で新しい歌詞を歌う」ボタンがあります。または曲作成ページで「既存の楽譜」パネルを開き、58曲のサンプル楽譜(それぞれ試聴ボタン付き)から選ぶか、自分のABCを貼り付けます。
- 生成する前に要約カードを確認します。キー、BPM、拍子、コード進行が、たとえば「F major · 100 BPM · 4/4 · F C/E Dm7 Bb…」のように表示されます。モデルが従うのはこの内容なので、間違いがあればここで直してください。
- ベトナム語歌詞では二、三バージョン生成し、各セクションの出だしを原曲と比べてください。ベトナム語は英語よりコードへの追従度が低く(0.809対0.922)、生成のたびに新しい抽選になります。
- ボーカルが原曲のメロディを一音ずつ再現することは期待しないでください。その部分は未測定なので、約束していません。
- コードしかない場合は?コード入力欄は停止中です。いちばん近い方法は、似た進行のサンプル曲を選び、その上に新しい歌詞を書くことです。
MuziAIで今すぐ試す
無料、登録不要。アイデアを一言添えるだけで、AIが歌詞を書き、歌付きの完成曲にします。
曲を作成