Hướng dẫn

Cách AI tách giọng hát thực sự hoạt động (giải thích dễ hiểu)

11 phút đọc

Dán một bài hát vào công cụ tách giọng, chờ một phút, và ca sĩ biến mất. Cảm giác như một trò ảo thuật, và trong một thời gian dài nó đúng là thế: các phương pháp cũ hoặc khử tâm của hình ảnh stereo hoặc cắt một dải tần số, và cả hai đều phá nát phần nhạc còn lại. Công cụ hiện đại làm điều khác hẳn. Hướng dẫn này giải thích điều đó, không cần phương trình.

Bài hát là một bức tranh

Âm thanh là sóng: áp suất không khí lên xuống hàng nghìn lần mỗi giây. Điều đó khó cho máy tính suy luận, nên bước đầu tiên trong gần như mọi hệ thống tách là biến âm thanh thành một bức tranh gọi là spectrogram. Thời gian chạy từ trái sang phải, cao độ chạy từ dưới lên trên, và độ sáng cho biết có bao nhiêu năng lượng ở mỗi cao độ tại mỗi khoảnh khắc.

Trong bức tranh đó, giọng hát trông như một bó đường ngang lượn sóng: tần số cơ bản và các bội âm của nó, trượt theo khi ca sĩ chuyển nốt. Kick drum là một vệt dọc ngắn ở phía dưới. Hi-hat là một màn sương mịn ở phía trên. Một hợp âm piano là chồng các đường thẳng bắt đầu cùng lúc rồi tắt dần. Các nhạc cụ chồng lên nhau, nhưng chúng có hình dạng, và hình dạng là thứ mạng nơ-ron có thể học để nhận ra.

Mô hình vẽ một mặt nạ

Nhận spectrogram của bài hát đã mix, nhiệm vụ của mạng là xuất ra một bức tranh thứ hai cùng kích cỡ, gọi là mặt nạ, trong đó mỗi điểm ảnh cho biết bao nhiêu năng lượng ở thời điểm và cao độ đó thuộc về giọng hát. Nhân bức tranh gốc với mặt nạ và bạn có spectrogram của giọng hát; nhân với phần nghịch đảo và bạn có mọi thứ còn lại. Chuyển những bức tranh đó ngược lại thành sóng và bạn có hai tệp âm thanh.

Công cụ tách stem làm đúng việc đó nhiều lần, tạo ra một mặt nạ cho mỗi phần: giọng hát, trống, bass, piano và "khác".

Các mô hình mới hơn thêm một góc nhìn thứ hai: bên cạnh spectrogram, chúng còn nhìn trực tiếp vào sóng thô, điều này giúp xử lý các transient sắc nét như tiếng gõ trống vốn bị nhòe trong spectrogram. Một số engine bạn thấy trong các công cụ, như MDX-Net và Demucs, khác nhau chủ yếu ở cách chúng kết hợp hai góc nhìn này và ở kích cỡ của chúng.

Nó học nhận diện giọng hát như thế nào

Không ai lập trình những quy tắc kiểu "giọng hát có bội âm cách nhau thế này". Mạng được huấn luyện trên hàng nghìn bài hát có sẵn các track riêng: bản mix ở một bên, giọng hát, trống, bass và các stem khác đã tách ở bên kia. Với mỗi bài, nó đoán một mặt nạ, so sánh dự đoán với các stem thật, rồi điều chỉnh nhẹ hàng triệu con số bên trong để làm tốt hơn lần sau. Lặp lại trong nhiều tuần trên phần cứng mạnh và kết quả là một mô hình, về thực chất, đã nghe nhiều phiên thu đa track hơn bất kỳ kỹ sư âm thanh nào.

Bộ dữ liệu huấn luyện đó cũng là nguồn gốc các giới hạn của nó. Mô hình tốt nhất với những loại nhạc nó nghe nhiều nhất, tức pop, rock, hip-hop và nhạc điện tử hiện đại được sản xuất phòng thu rõ ràng.

Vì sao có bài tách sạch còn bài khác thì không

Vang và delay. Hiệu ứng trên giọng hát được tạo từ chính giọng hát, kéo nhòe theo thời gian và hòa với không gian phòng. Một phần của vệt nhòe đó trông giống các nhạc cụ nằm bên dưới, nên mô hình phải đoán giọng hát kết thúc ở đâu và căn phòng bắt đầu ở đâu. Giọng khô tách sạch; vang cỡ nhà thờ lớn để lại bóng ma.

Giọng nhân đôi và nhiều lớp. Bè, giọng đúp và điệp khúc xếp lớp đều là "giọng" đối với mô hình hai stem, nên tất cả rời đi cùng giọng chính. Nếu bạn muốn giữ bè, bạn cần một mô hình được huấn luyện riêng để chỉ bỏ giọng chính, chính là mô hình "karaoke".

Giọng dùng như nhạc cụ. Vocoder, talk-box hay đoạn vocal chop bị dịch cao độ mạnh có hình dạng giống synth hơn giống ca sĩ. Một phần của chúng sẽ ở lại trong bản nhạc nền.

Âm vực chồng lấn. Guitar đệm distortion và giọng nữ hát belt nằm cùng một vùng trong bức tranh. Nơi chúng trùng nhau, mặt nạ là một sự thỏa hiệp.

Nguồn chất lượng thấp. Một luồng 96 kbps hay một bản chuyển từ băng cassette cũ đã mất đi các chi tiết tinh vi mà mô hình dùng để phân biệt các nguồn.

Thiết lập "engine" và "chất lượng" thực sự thay đổi gì

Công cụ tách giọng thường cung cấp một engine tiêu chuẩn và một hoặc hai engine chất lượng cao hơn. Khác biệt không phải là một bộ lọc; đó là một mô hình khác, lớn hơn, đôi khi là vài mô hình có đầu ra được lấy trung bình. Mô hình lớn hơn đoán tốt hơn ở những điểm ảnh mơ hồ, thể hiện ra thành ít bóng ma giọng hát trong bản nhạc nền hơn và ít mảnh nhạc cụ trong acapella hơn. Cái giá là thời gian: một tổ hợp hai mô hình lớn có thể mất lâu hơn nhiều lần so với engine tiêu chuẩn.

Trên Mazmazika, engine tiêu chuẩn cho tối đa năm stem một cách nhanh chóng; các mô hình High Quality (Best Vocals, Best Instrumental, Karaoke) và engine Ultra, chạy hai mô hình rồi gộp phần tốt nhất của mỗi cái, là các lựa chọn lớn hơn, và trang công cụ liệt kê gói của bạn bao gồm những lựa chọn nào. Bitrate đầu ra cũng tăng từ 128 lên 320 kbps trên những engine này, điều quan trọng nếu tệp sẽ được phát trên hệ thống lớn.

Vì sao hai stem sạch hơn năm

Mỗi stem thêm vào là thêm một ranh giới mô hình phải vẽ. Mô hình "giọng hay không phải giọng" vẽ một ranh giới, và bản nhạc nền giữ được sự gắn kết của bản mix gốc. Mô hình năm ngả vẽ bốn ranh giới, và những sai số nhỏ ở mỗi ranh giới cộng dồn khi bạn phát các stem cùng nhau lần nữa. Đó là lý do hướng dẫn karaoke khuyên dùng hai stem dù có sẵn năm.

Điều mô hình không thể làm

Nó không thể bịa ra thứ chưa từng được thu. Nếu tiếng thở của ca sĩ che khuất hoàn toàn một nốt piano nhỏ, nốt đó mất trong bản nhạc nền. Nó không thể tách hai ca sĩ cùng âm vực hát đồng âm thành hai người. Và nó không thể xóa bản quyền: các stem đã tách vẫn là bản thu gốc về mặt pháp lý, nên các quy định về công bố và biểu diễn vẫn áp dụng.

Công nghệ đang đi về đâu

Các mô hình nghiên cứu tiếp tục lớn hơn và nay được huấn luyện với nhiều stem hơn (ví dụ guitar và piano là các mục tiêu riêng) và trên nhiều thể loại hơn. Khoảng cách giữa một công cụ trình duyệt miễn phí và một workstation phòng thu phần lớn đã khép lại với tách hai stem; khác biệt còn lại nằm ở các trường hợp biên, tốc độ và cách công cụ cho bạn làm việc với kết quả sau đó.

Hãy thử bằng chính đôi tai của bạn

Cách nhanh nhất để hiểu tất cả những điều này là chạy một bài hát bạn thuộc kỹ qua công cụ tách giọng, tắt tiếng stem giọng hát và nghe điệp khúc bằng tai nghe. Bạn sẽ nghe đúng những hiệu ứng được mô tả ở đây: một đoạn verse sạch, một bóng ma mờ trong đuôi vang, và một điệp khúc mà bè đã rời đi cùng giọng chính. Rồi đọc công cụ tách giọng và công cụ tách stem để quyết định chế độ nào phù hợp với dự án tiếp theo của bạn.

← Quay lại Journal