2023年01月04日

高速無限音楽波形生成 musika

このエントリーをはてなブックマークに追加
follow us in feedly
Musika! Fast Infinite Waveform Music Generation
Marco Pasini, Jan Schluter Johannes Kepler Universitat Linz
arXiv preprint arXiv:2208.08706 (2022).

musikaでは、スペクトログラムの大きさと位相の反転表現をAdversarialオートエンコーダで学習し、この表現に基づいてGANを特定の音楽ドメインで学習します。
任意の長さの抜粋系列を並列に生成する事が出来、間を通して様式的に音楽の一貫性を保つ事が出来ます。
本研究では、非自己回帰型音声生成システムの現在の欠点を考慮し、音声を条件付きで高速に生成するGANシステムmusika を提案します。


3 METHOD
波形x
潜在ベクトルc
時間圧縮率rtime
オートエンコーダモデルを使用して、エンコードされた潜在ベクトルから元の波形の再構成を取得します。

次にGANを使用して分布p(c)をモデル化する事を目指します。

ジェネレータGが任意の長さの潜在ベクトルのシーケンスを生成するための条件として使用される潜在座標系を使用します。
さらに、人間の入力によって生成プロセスをガイドできるように、さまざまな調整信号でgeneratorを調整します。
潜在ベクトルの生成されたシーケンスは、以前に学習されたデコーダーで波形に反転されます。
musika1





3.2 LATENT COORDINATE SYSTEM
潜在座標系を使用してgeneratorを調整します。これはもともと無限幅の風景画像を生成するために導入されました。

時間的にコヒーレントな系列を生成するために、
2 * seq_len座標ベクトルのシーケンスw12をランダムにトリミングし、それを2つのシーケンスw1、w2に分割します。
2つのパッチを連結し、結果として生成された長さ2seq_lenをdiscriminatorに追加します。
musika2
これにより、generatorは、潜在座標のシーケンスを、生成された潜在ベクトルのシーケンスと整列させる事が出来ます。
discriminatorは、潜在座標の隣接シーケンスが潜在ベクトルの隣接シーケンスになる必要がある事をgeneratorに強制的に学習させます。
潜在ベクトルは、一時的に連結でき、生成されたパッチの境界にアーティファクトの無い一貫した最終出力が得られます。



...................
...................

githubの方からColab ノートブックを利用出来るので、そちらを使えば簡単です。

...環境はcondaを使う事が一番でしょうか? conda自体の設定が面倒なんですが...


Musika_Finetune では学習データが必要ですが、これはmp3で良いです。
musika_encode.pyでそれらをエンコードしたら、
musika_train.pyでモデルをfine-tuningします。


その時から既に、GRADIO INTERFACE での、web UI にアクセス出来ます。
そこには、こんな事が書いてあります。
The generator used for this demo is updated after every epoch during training!



デモの方では Music Genre to Generate ジャンルを選べますが、こちらでfine-tuneするとジャンルを選べません。
これはジャンル毎に別モデルになっているからであり、base_modelつまり学習元モデルを選択しているだけだからです。


musika_train.py の実行には、少ない学習データ、少ないepochでも非常に時間がかかると思います。
どこでこれを調整出来るかと思ってソースコードの方をよく読みましたが...

parse_train.py
 parser.add_argument(
  "--totsamples",
  type=int,
  default=300000,
  help="Max samples chosen per epoch",
 )
このtotsamples の数がそうだったようです。



...................


musikaのfine tuneでは少数データでもスタイルの模倣が出来るようなのは間違いないですが
学習に非常に時間がかかるためどこを学習しているのか理解するか試行を重ねるだけでも時間がかかりそうです。


tak_tak0 at 18:46コメント(0)研究  | サーバ この記事をクリップ!

コメントする

名前:
URL:
  情報を記憶: 評価:  顔   星
 
 
 
サイト内検索
にほんブログ村 科学ブログへ
にほんブログ村
adsense
Archives
amazon
blogchart
QRコード
QRコード
Recent Comments