พื้นที่เก็บข้อมูลอย่างเป็นทางการสำหรับ การรวมการควบคุมเสียงและการถ่ายโอนสไตล์โดยใช้การแพร่กระจายแฝง โดย Nils Demerlé, Philippe Esling, Guillaume Doras และ David Genova ได้รับการยอมรับที่ ISMIR 2024 (ลิงก์กระดาษ)
การฝึกโมเดลต้องใช้สามขั้นตอน ได้แก่ การประมวลผลชุดข้อมูล การฝึกโปรแกรมเข้ารหัสอัตโนมัติ จากนั้นการฝึกโมเดลการแพร่กระจาย
python dataset/split_to_lmdb.py --input_path /path/to/audio_dataset --output_path /path/to/audio_dataset/out_lmdb
หรือใช้ slakh กับการประมวลผล midi (หลังจากดาวน์โหลด Slakh2100 ที่นี่ ):
python dataset/split_to_lmdb_midi.py --input_path /path/to/slakh --output_path /path/to/slakh/out_lmdb_midi --slakh True
python train_autoencoder.py --name my_autoencoder --db_path /path/to/lmdb --gpu #
เมื่อฝึกการเข้ารหัสอัตโนมัติแล้ว จะต้องส่งออกไปยังไฟล์ torchscript .pt :
python export_autoencoder.py --name my_autoencoder --step # #
คุณสามารถข้ามขั้นตอนทั้งหมดนี้และใช้โปรแกรมเข้ารหัสอัตโนมัติที่ผ่านการฝึกอบรมมาแล้ว เช่น Encodec ซึ่งรวมอยู่ใน nn.module พร้อมวิธีเข้ารหัสและถอดรหัส
การฝึกโมเดลได้รับการกำหนดค่าด้วยไฟล์กำหนดค่า gin วิธีฝึกเสียงให้เป็นโมเดลเสียง:
python train_diffusion.py --db_path /data/nils/datasets/slakh/lmdb_midi/ --config midi --dataset_type midi --gpu #
หากต้องการฝึกโมเดล midi-to-audio ให้ทำดังนี้
python train_diffusion.py --db_path /path/to/lmdb --config main --dataset_type waveform --gpu #
จะแจ้งภายหลัง