0

モノラル楽譜からシーケンスを生成するモデルをトレーニングしようとしています。インターネットの周りで、文字レベルの lstm ネットワークと音楽 ABC 表記法でこれを行っている人々の例をいくつか見つけました (Torch で karpathy の実装を多く使用しています: http://karpathy.github.io/2015/05/21/rnn-effectiveness / )。

これはかなり効果的であるように見えますが、シーケンスには音楽情報ができるだけコンパクトに含まれていません。私が考えたのは、音楽情報を一連の音符として直接表現することでした。ただし、音には複数の特徴があります。ピッチ、オクターブ、デュレーション、次の音に接続されているかなどです。この情報を特徴ベクトルとして適切に表現する方法がわかりません。また、この主題に関する多くの情報も見つかりませんでした。 .

私のデータセットには、音のピッチと長さの多様性がかなり限られています。3 オクターブ、10 の異なる音符の長さ、4/4 拍子記号のみが含まれている可能性があります。ただし、これらのメモのそれぞれの異なる組み合わせを表すと、膨大な入力特徴ベクトルが得られます。

どんなアドバイスでも大歓迎です!

4

1 に答える 1

1

トレーニング例をテキスト形式でエンコードおよびデコードできる限り、文字レベルの lstm アプローチに適応して使用できると思います。

たとえば、すべての音符を文字 (ABCDEFG) で表すことができます。シャープまたはフラットには + - を使用し、その後に x、y、z などのコードをオクターブに、0 から 9 までの数字をデュレーション値に、スペースをスペースで使用します。接続されているかどうか。

このブルースのリフのように:

Cx1 E-x1 Cx1 E-x1 Fx4 Gx2 B-x2 Cy1Cy1Cy1Cy1, etc.

十分なトレーニング データがあれば、RNN はこの音符の構文と文法、および「音楽的な」シーケンスにつながる音符間のパターンと関係を学習します (トレーニングに使用する音楽の種類に応じて)。

于 2016-01-14T01:53:19.930 に答える