Mô hình RAVE của IRCAM: VST, mô hình có sẵn và huấn luyện
RAVE của IRCAM là mô hình âm thanh neural thời gian thực, biến bất kỳ âm thanh nào thành âm sắc mà nó đã được huấn luyện. Bạn có thể chơi các mô hình RAVE đã huấn luyện sẵn trong DAW bằng Neutone FX hoặc RAVE VST, tải vào Max/MSP hoặc Pure Data bằng nn~, hoặc tự huấn luyện với gói Python acids-rave.
Cách dùng RAVE: bắt đầu nhanh
| Mục tiêu | Công cụ | Những gì cần có |
|---|---|---|
| Chơi mô hình RAVE trong DAW | Neutone FX (VST/AU miễn phí) | Bất kỳ DAW nào. Tải mô hình đã huấn luyện sẵn ngay trong plugin. |
| Chơi mô hình RAVE trong DAW | RAVE VST (beta) | Tải từ IRCAM Forum. Kho mã nguồn đã được lưu trữ vào tháng 6 năm 2023 và bản Windows chỉ chạy độc lập. |
| Dùng RAVE trong Max/MSP hoặc Pure Data | Đối tượng mở rộng nn~ | Max hoặc Pd cùng một tệp mô hình .ts |
| Tải mô hình đã huấn luyện sẵn | Danh sách mô hình RAVE chính thức | Các tệp .ts xuất cho xử lý luồng bằng nn~ |
| Tự huấn luyện mô hình | acids-rave trên Python | GPU NVIDIA có 5 đến 32 GB bộ nhớ, vài giờ âm thanh và khoảng 3 ngày |
Để cài nn~, tải bản phát hành mới nhất rồi giải nén vào Documents/Max [your version]/Packages/ cho Max hoặc Documents/Pd/externals/ cho Pure Data. Đặt các mô hình .ts vào thư mục nn_tilde/models.
IRCAM RAVE dùng cho tổng hợp âm thanh thời gian thực là gì?
RAVE là viết tắt của Realtime Audio Variational autoEncoder, nghĩa là bộ tự mã hóa biến phân âm thanh thời gian thực. Được các nhà nghiên cứu tại IRCAM ở Paris phát hành vào cuối năm 2021, mô hình học cách mã hóa âm thanh thành biểu diễn gọn rồi giải mã trở lại thành âm thanh. Có thể hình dung như dạy máy tính phác họa những gì nó nghe được, rồi vẽ lại bản phác họa thành một bản mô phỏng âm thanh gốc đầy thuyết phục.
Nó thực hiện đủ nhanh để chạy trong thời gian thực ngay trong DAW hoặc hệ thống biểu diễn trực tiếp của bạn.
Ai tạo ra RAVE và vào thời điểm nào?
RAVE được phát triển bởi Antoine Caillon, hiện làm việc tại Google DeepMind, và Philippe Esling thuộc nhóm ACIDS của IRCAM ở Paris.
Trước đó, nhóm đã tìm hiểu mô hình DDSP của Google (Differentiable Digital Signal Processing, nghĩa là xử lý tín hiệu số khả vi) và trình diễn vào tháng 3 năm 2021. Tuy nhiên, họ muốn một mô hình linh hoạt hơn, có thể xử lý bất kỳ loại âm thanh nào thay vì chỉ nhạc cụ.
Mục tiêu của họ là mô hình chạy trên phần cứng phổ thông nhưng vẫn tạo ra âm thanh chất lượng phòng thu. Họ giới thiệu mô hình trong bài báo năm 2021, “RAVE: bộ tự mã hóa biến phân cho tổng hợp âm thanh neural nhanh và chất lượng cao”.
Kiến trúc RAVE: bộ tự mã hóa biến phân này hoạt động ra sao?
RAVE là một bộ tự mã hóa: mạng neural học cách nén dữ liệu vào một “không gian tiềm ẩn” gọn rồi giải nén trở lại.
RAVE: huấn luyện hai giai đoạn
Giai đoạn 1: học biểu diễn
Giai đoạn 2: tinh chỉnh đối kháng
Sơ đồ huấn luyện phỏng theo bài báo RAVE gốc. Giai đoạn 1 huấn luyện bộ mã hóa và bộ giải mã bằng hàm mất mát phổ đa băng tần. Giai đoạn 2 đóng băng bộ mã hóa, chặn gradient truyền qua mã tiềm ẩn và huấn luyện bộ giải mã cùng bộ phân biệt. Các bộ lọc phân tích và tổng hợp PQMF được giữ cố định.

Sơ đồ gốc: RAVE: huấn luyện hai giai đoạn.
Quy trình huấn luyện hai giai đoạn của RAVE hoạt động thế nào?
Hãy hình dung như đào tạo một nhạc công qua hai giai đoạn:
-
Giai đoạn 1: học cách nghe (học biểu diễn)
- Bộ mã hóa học cách nén âm thanh thành một tập số gọn, tức biểu diễn trong không gian tiềm ẩn
- Bộ giải mã học cách tái tạo âm thanh từ những con số đó
- Huấn luyện dùng hàm mất mát phổ để so sánh thành phần tần số của âm thanh gốc và âm thanh tái tạo
-
Giai đoạn 2: học cách ứng tác (tinh chỉnh đối kháng)
- Bộ mã hóa được đóng băng vì đã biết cách nghe
- Thêm một mạng “phân biệt”: nhà phê bình đánh giá xem âm thanh tái tạo có nghe giống thật không
- Bộ giải mã học từ phản hồi này để tạo ra âm thanh thuyết phục hơn
Các thành phần kỹ thuật chính
- Bộ lọc PQMF: RAVE chia âm thanh thành nhiều băng tần con trước khi xử lý để tăng hiệu quả
- Chế độ nhân quả và phi nhân quả: chế độ nhân quả đánh đổi một phần chất lượng để giảm độ trễ khi biểu diễn trực tiếp
- Nhiều cấu hình: từ “raspberry” nhẹ, chạy trên Raspberry Pi, đến “v3” chất lượng cao
Để xem chi tiết triển khai, tham khảo kho GitHub RAVE chính thức, nơi có các tệp cấu hình và định nghĩa mô hình.
Cách huấn luyện mô hình RAVE bằng dữ liệu âm thanh riêng?
Muốn một mô hình biến giọng của bạn thành tiếng saxophone? Huấn luyện RAVE đòi hỏi kiến thức Python và GPU. Kho RAVE chính thức mô tả toàn bộ quy trình.
Yêu cầu chuẩn bị tập dữ liệu
Để huấn luyện mô hình RAVE, bạn cần:
- 2 đến 3 giờ âm thanh sạch (càng nhiều càng tốt)
- Bản thu chất lượng phòng thu vì RAVE học mọi thứ, kể cả nhiễu và tiếng vang
- Âm thanh đa dạng nếu muốn mô hình linh hoạt
Để xây dựng tập dữ liệu từ các bản mix hoàn chỉnh, trước hết hãy tách nhạc cụ bằng tách stem AI chất lượng cao. Dấu vết lỗi tách cũng sẽ được mô hình học, nên hãy dùng các stem sạch nhất có thể. Hướng dẫn tách stem chỉ cách thực hiện trong Neural Analog.
Cài RAVE và chuẩn bị tập dữ liệu
Trước tiên cài PyTorch và TorchAudio phù hợp với GPU, sau đó cài RAVE. Bạn cũng cần FFmpeg; trong môi trường conda, hãy cài bằng conda:
pip install acids-rave
conda install ffmpeg
Tiền xử lý chuyển các tệp âm thanh sang định dạng tập dữ liệu của RAVE:
rave preprocess --input_path /audio/folder --output_path /dataset/path --channels 1
Dùng --channels 1 cho mono hoặc --channels 2 cho stereo. Thêm --lazy để huấn luyện trực tiếp trên tệp nén như MP3, nhưng mức tải CPU khi huấn luyện sẽ cao hơn nhiều. Xem toàn bộ tham số trong tài liệu chuẩn bị tập dữ liệu RAVE.
Quy trình huấn luyện và các cấu hình RAVE
Bắt đầu huấn luyện bằng tên cấu hình:
rave train --config v2 --db_path /dataset/path --out_path /model/out --name my_model --channels 1
Chọn cấu hình phù hợp với GPU. Yêu cầu bộ nhớ GPU tối thiểu lấy từ README chính thức:
| Cấu hình | Bộ nhớ GPU tối thiểu | Mục đích sử dụng |
|---|---|---|
raspberry | 5 GB | Mô hình nhẹ cho xử lý thời gian thực trên Raspberry Pi 4 |
onnx | 6 GB | v1 không nhiễu để xuất sang ONNX |
v1 | 8 GB | Mô hình liên tục ban đầu |
v2_small | 8 GB | Chuyển đổi âm sắc cho âm thanh có tính chất ổn định |
v2 | 16 GB | Mô hình liên tục cải tiến, phù hợp làm lựa chọn mặc định |
discrete | 18 GB | Mô hình rời rạc tương tự SoundStream hoặc EnCodec |
v3 | 32 GB | Chất lượng cao nhất, có chuyển đổi phong cách (AdaIN) |
Có thể kết hợp cấu hình với tùy chọn như causal (độ trễ thấp hơn) hoặc noise. Nếu không có GPU, notebook Colab dành cho RAVEv2 của cộng đồng, được liên kết từ README, cho phép huấn luyện trên GPU của Google.
Những gì sẽ diễn ra khi huấn luyện:
- Giai đoạn 1 (khoảng 1 triệu bước): chất lượng âm thanh ban đầu thô rồi dần cải thiện
- Giai đoạn 2 (huấn luyện đối kháng): chất lượng cải thiện rõ rệt
- Tổng thời gian: khoảng 3 ngày trên GPU RTX 3080
Các notebook huấn luyện RAVE do cộng đồng đóng góp hướng dẫn từng bước trong quy trình.
Xuất mô hình RAVE để dùng trong thời gian thực
Cách xuất mô hình rất quan trọng khi dùng trong thời gian thực. Dùng cờ --streaming để bật các phép tích chập có bộ nhớ đệm, giúp tránh các tiếng lách tách lỗi:
rave export --run /path/to/your/run --streaming
Kết quả là tệp TorchScript .ts mà nn~ có thể tải. Tham khảo tài liệu xuất mô hình RAVE để xem tham số xuất và cách xử lý sự cố.
Các lựa chọn suy luận và sử dụng RAVE trong thời gian thực
Không muốn đợi 3 ngày để huấn luyện? Bạn có thể thử các mô hình RAVE đã huấn luyện sẵn bằng nhiều công cụ. Chúng cũng tải được mô hình do bạn tự huấn luyện, và FAQ về dùng mô hình đã huấn luyện trong DAW liệt kê plugin cho từng loại mô hình.
Neutone FX: plugin VST/AU miễn phí cho mô hình RAVE
Neutone FX là plugin VST/AU miễn phí chạy các mô hình RAVE. Đây là plugin Neutone đầu tiên từ năm 2022, hiện được duy trì dưới dạng nền tảng mở. Cài plugin để tải một bộ mô hình đã huấn luyện sẵn ngay trong DAW (Ableton, Logic, Reaper và các DAW khác).
RAVE VST của IRCAM (beta, đã lưu trữ)
IRCAM cũng phát hành RAVE VST riêng, gồm các bản VST, AU và chạy độc lập. Nó có hai chế độ: reconstruction xử lý âm thanh từ DAW, còn prior tự di chuyển trong không gian tiềm ẩn để sinh âm thanh. Model Explorer tải các mô hình đã huấn luyện sẵn; bạn cũng có thể nhập mô hình riêng nếu xuất với --stereo true.
Kho rave_vst đã được lưu trữ vào tháng 6 năm 2023, nên không nên chờ các bản sửa lỗi. Windows chỉ có bản chạy độc lập thử nghiệm, còn người dùng M1 Mac phải tự biên dịch. Các nhà phát triển khuyến nghị dùng nn~ cho xử lý thời gian thực.
Tích hợp Max/MSP và Pure Data bằng nn~
Để biểu diễn trực tiếp, đối tượng mở rộng nn~ tải mô hình RAVE thẳng vào Max/MSP và Pure Data. Nó cho phép thao tác trực tiếp với không gian tiềm ẩn và dùng chuẩn hóa thích nghi theo từng mẫu để chuyển đổi phong cách. Nó cũng chạy trên các nền tảng nhúng như Raspberry Pi cho những tác phẩm sắp đặt di động. Các bo mạch này cũng chạy được plugin ampli guitar neural như ToobAmp và Stompbox. Nếu dùng NVIDIA Jetson Nano, lưu ý bo mạch không có đầu ra âm thanh analog: trước hết hãy gắn card âm thanh I2S như Raspiaudio Audio+.
Hạn chế hiệu năng và lưu ý kỹ thuật của RAVE
Hãy biết các hạn chế này trước khi dựa vào RAVE:
- Độ trễ: ngay cả ở chế độ nhân quả và trên Apple Silicon cao cấp, vẫn nên dự tính có độ trễ dễ nhận thấy. Trong phòng thu thì không sao, nhưng hãy kiểm tra kỹ trước khi dùng RAVE làm nhạc cụ biểu diễn trực tiếp.
- Tăng tốc GPU: mô hình dùng nhiều phép tích chập nhỏ, bị giới hạn bởi truy cập bộ nhớ thay vì năng lực tính toán, nên khả năng song song hóa không tốt. Khi dùng trong thời gian thực, chi phí phụ của GPU thường lớn hơn lợi ích, trừ khi xử lý theo lô.
- Chất lượng âm thanh: RAVE có thể tạo ra âm thanh ấn tượng, nhưng độ trung thực có thể không bằng tổng hợp truyền thống hoặc các mô hình neural cao cấp hơn như mô hình khuếch tán.
- Khó huấn luyện: huấn luyện RAVE đòi hỏi chuyên môn về học máy và xử lý âm thanh, cùng phần cứng mạnh.
Các bước phát triển sau RAVE: Neutone Morpho và mô hình AFTER
Neutone Morpho: phiên bản phát triển thương mại từ RAVE (2024)
Tháng 2 năm 2024, nhóm Neutone do Nao Tokui dẫn dắt phát hành Morpho, sản phẩm thương mại kế nhiệm plugin FX miễn phí. RAVE là bộ máy nghiên cứu mã nguồn mở. Morpho đóng gói công nghệ tương tự thành sản phẩm hoàn thiện cho nhạc sĩ và nhà sản xuất, đổi lại là tính linh hoạt thấp hơn.
Mô hình AFTER: lựa chọn khuếch tán thay thế từ IRCAM
Cũng nhóm IRCAM ACIDS đó đã phát hành AFTER (Audio Features Transfer and Exploration in Real-time), một mô hình dựa trên khuếch tán. Mục tiêu là giúp việc “tinh chỉnh” dễ hơn, với khả năng điều khiển âm sắc trong thời gian thực như bộ tổng hợp âm thanh truyền thống.
Để đổi phong cách cả bài hát bằng lời nhắc văn bản thay vì chỉ một âm thanh, AI remix giữ lại stem giọng hát và tạo lại phần nhạc bằng Stable Audio 3.
Câu hỏi thường gặp về RAVE
Tải mô hình RAVE đã huấn luyện sẵn ở đâu?
IRCAM liệt kê các mô hình xử lý luồng trên trang mô hình RAVE chính thức. Neutone FX và RAVE VST cũng cho phép tải mô hình ngay trong plugin. Kiểm tra giấy phép của từng mô hình trước khi dùng trong một bản phát hành thương mại.
Cần bao nhiêu âm thanh để huấn luyện RAVE?
Hãy chuẩn bị 2 đến 3 giờ âm thanh sạch từ một nguồn duy nhất. RAVE học mọi thứ trong bản thu, kể cả nhiễu và tiếng vang của phòng. Để xem lượng dữ liệu cho DDSP và AFTER, tham khảo cần bao nhiêu dữ liệu để huấn luyện mô hình.
Có thể huấn luyện RAVE trên Mac không?
Đây không phải lựa chọn phù hợp. Hướng dẫn RAVE của UAL Creative Computing Institute yêu cầu GPU NVIDIA hỗ trợ CUDA với ít nhất 8 GB bộ nhớ và khuyên không dùng macOS. Thay vào đó, hãy dùng GPU đám mây hoặc notebook Colab của cộng đồng.
Vì sao mô hình RAVE phát tiếng lách tách trong Max?
Mô hình đã được xuất mà không có --streaming. Hãy xuất lại với cờ này.
RAVE hay DDSP?
DDSP chỉ cần khoảng 10 phút âm thanh nhưng chỉ mô hình hóa nhạc cụ có cao độ chơi từng nốt một. RAVE xử lý mọi âm thanh, kể cả trống, giọng nói và kết cấu âm thanh, nhưng cần vài giờ dữ liệu âm thanh và nhiều ngày huấn luyện.