Riffusion ialah sistem pembelajaran mesin Stable Diffusion yang disesuaikan untuk sintesis muzik
Pelancaran projek baharu yang dipanggil "Riffusion" telah diumumkan. Ia membangunkan varian sistem pembelajaran mesin Difusi Stabil yang diadaptasi untuk menjana muzik dan bukannya imej. Muzik boleh disintesis berdasarkan templat yang dicadangkan atau penerangan teks bahasa semula jadi.
Komponen sintesis muzik ditulis dalam Python menggunakan rangka kerja PyTorch dan tersedia di bawah lesen MIT.
Projek ini menarik kerana ia terus menggunakan model "teks-ke-imej" dan "imej-ke-imej" untuk penjanaan muzik, tetapi memanipulasi spektrogram seolah-olah ia adalah imej.
Dalam erti kata lain, Difusi Stabil klasik bukan berdasarkan gambar dan imej, tetapi pada imej spektrogram yang mencerminkan perubahan frekuensi dan amplitud gelombang bunyi dari semasa ke semasa. Akibatnya, spektrogram juga terbentuk pada output, yang kemudiannya ditukar menjadi perwakilan audio.
Ini ialah model resapan stabil v1.5 tanpa pengubahsuaian, hanya dipasang pada imej spektrogram berpasangan teks. Pemprosesan audio berlaku di hiliran model.
Anda boleh menjana variasi tak terhingga iklan dengan mengubah benih. Semua antara muka dan teknik pengguna web yang sama seperti img2img, inpainting, petunjuk negatif dan interpolasi berfungsi di luar kotak.
spektrogram
Spektrogram audio ialah cara visual untuk mewakili kandungan frekuensi klip bunyi. Paksi x mewakili masa dan paksi y mewakili kekerapan. Warna setiap piksel memberikan amplitud audio pada kekerapan dan masa yang diberikan oleh baris dan lajurnya.
Disebutkan bahawa kaedah ini juga boleh digunakan untuk mengubah suai komposisi bunyi sedia ada dan mensintesis muzik sampel, sama seperti pengubahsuaian imej dalam Difusi Stabil.
Sebagai contoh, penjanaan boleh menetapkan spektrogram sampel kepada gaya rujukan, menggabungkan gaya yang berbeza, beralih dengan lancar daripada satu gaya ke gaya lain atau membuat perubahan kepada bunyi sedia ada untuk menyelesaikan masalah seperti meningkatkan volum instrumen individu, menukar irama dan penggantian. daripada instrumen.
STFT boleh terbalik, jadi audio asal boleh dibina semula daripada spektrogram. Walau bagaimanapun, imej spektrogram model kami hanya mengandungi amplitud gelombang sinus dan bukan fasa, kerana fasanya huru-hara dan sukar untuk dipelajari. Sebaliknya, kami menggunakan algoritma Griffin-Lim untuk menganggarkan fasa semasa membina semula klip audio.
Corak-corak ini juga digunakan untuk menghasilkan komposisi jangka panjang, yang terdiri daripada satu siri petikan jarak dekat yang sedikit berbeza dari semasa ke semasa. Serpihan yang dihasilkan secara berasingan digabungkan menjadi aliran berterusan dengan menginterpolasi parameter dalaman model.
Tong frekuensi dalam spektrogram kami menggunakan skala Mel, iaitu skala persepsi nada yang dinilai oleh pendengar sebagai jarak yang sama antara satu sama lain.
Di bawah ialah imej lukisan tangan yang ditafsirkan sebagai spektrogram dan ditukar kepada audio. Mainkannya untuk mendapatkan rasa intuitif tentang cara mereka berfungsi. Perhatikan bagaimana anda boleh mendengar nada dua lengkung di bahagian bawah dan bagaimana empat garisan menegak di bahagian atas menghasilkan irama yang serupa dengan bunyi hi-hat.
Transformasi Fourier (transformasi matematik yang digunakan untuk mengubah isyarat antara domain masa dan domain frekuensi) digunakan untuk mencipta spektrogram daripada bunyi. Apabila mencipta semula bunyi daripada spektrogram, terdapat masalah dengan penentuan fasa (hanya frekuensi dan amplitud terdapat dalam spektrogram), yang mana algoritma anggaran Griffin-Lim digunakan untuk pembinaan semula.
Antara muka ini dilaksanakan dalam TypeScript dan juga diedarkan di bawah lesen MIT . Model yang terlatih dikeluarkan di bawah lesen Creative ML OpenRAIL-M yang permisif untuk kegunaan komersial.
Jika anda ingin mengetahui lebih lanjut mengenainya, anda boleh menyemak butirannya di pautan berikut.