SoundStorm: tạo sinh âm thanh song song hiệu quả
(google-research.github.io)- SoundStorm là mô hình nhận semantic token của AudioLM và tạo các token codec âm thanh thần kinh theo kiểu song song, giúp giảm gánh nặng tính toán khi tạo âm thanh dài
- Mô hình hướng tới chất lượng tương đương nhưng tăng độ nhất quán của điều kiện giọng nói và âm học so với phương pháp tự hồi quy, nhờ attention hai chiều và giải mã song song dựa trên độ tin cậy
- Trên TPU-v4, mô hình tạo 30 giây âm thanh trong 0,5 giây, cho tốc độ nhanh hơn hàng chục lần so với bộ sinh âm học của AudioLM
- Khi kết hợp với SPEAR-TTS, có thể điều khiển 30 giây hội thoại tự nhiên bằng kịch bản, đoạn nhắc giọng nói ngắn và chú thích chuyển người nói, rồi tổng hợp trong 2 giây trên một TPU-v4 duy nhất
- Khả năng bắt chước giọng nói có thể bị lạm dụng để mạo danh và vượt qua xác thực sinh trắc học, nên cần cơ chế bảo vệ; âm thanh được tạo sau thay thế có thể được phát hiện với độ chính xác 98,5% bằng bộ phân loại chuyên dụng
Cách SoundStorm tạo sinh và hiệu năng
- SoundStorm là mô hình tạo sinh âm thanh phi tự hồi quy hiệu quả
- Đầu vào là semantic token của AudioLM, đầu ra là token codec âm thanh thần kinh
- Hiệu năng tạo sinh dựa trên hai thiết kế
- Attention hai chiều để tận dụng đồng thời ngữ cảnh trước và sau
- Giải mã song song dựa trên độ tin cậy để tạo nhiều token cùng lúc
- So với cách tạo sinh tự hồi quy của AudioLM, mô hình tạo ra âm thanh có cùng chất lượng nhưng độ nhất quán của điều kiện giọng nói và âm học cao hơn
- Trên TPU-v4, mô hình tạo 30 giây âm thanh trong 0,5 giây
Tổng hợp hội thoại
- SoundStorm có thể kết hợp với giai đoạn mô hình hóa văn bản-ngữ nghĩa của SPEAR-TTS để tổng hợp hội thoại tự nhiên, chất lượng cao
- Có ba yếu tố có thể điều khiển
- Nội dung lời nói thông qua kịch bản
- Giọng người nói thông qua đoạn nhắc giọng nói ngắn
- Chuyển người nói thông qua chú thích trong kịch bản
- Thời gian chạy để tổng hợp một đoạn hội thoại 30 giây được đo là 2 giây trên một TPU-v4 duy nhất
- Văn bản và người nói dùng trong ví dụ là dữ liệu mô hình chưa từng thấy trong quá trình huấn luyện
Tạo sinh có và không có prompt
- SoundStorm tạo âm thanh với điều kiện là semantic token của AudioLM, và trình diễn cả trường hợp có lẫn không có prompt giọng nói 3 giây
- Khi không có prompt, mô hình lấy mẫu các người nói khác nhau
- Khi có prompt, mô hình duy trì giọng của người nói với độ nhất quán cao
- Mẫu gốc được lấy từ LibriSpeech test-clean
- Tốc độ tạo sinh nhanh hơn hàng chục lần so với bộ sinh âm học của AudioLM
So sánh với mô hình chuẩn
- Trong tạo sinh dựa trên prompt, SoundStorm có độ nhất quán âm học cao hơn AudioLM và bảo toàn giọng người nói trong prompt tốt hơn
- So với RVQ level-wise greedy decoding trong cùng mô hình, SoundStorm tạo ra âm thanh chất lượng cao hơn
- Ví dụ so sánh cung cấp song song các đầu ra Original, AudioLM, Greedy, SoundStorm
Tác động và cân nhắc an toàn
- SoundStorm là mô hình tạo hiệu quả và chất lượng cao các biểu diễn âm thanh dựa trên codec âm thanh thần kinh
- Trong công trình này, nó được dùng như một thành phần thay thế pipeline tạo sinh âm học của AudioLM và SPEAR-TTS
- Các mẫu được tạo có thể chịu ảnh hưởng từ thiên lệch trong dữ liệu huấn luyện, và ví dụ có thể bao gồm các giới hạn như ngữ điệu đại diện và đặc điểm giọng nói
- Dù có thể điều khiển ổn định đặc tính người nói bằng prompt, việc phân tích kỹ hơn về dữ liệu huấn luyện và các giới hạn của nó vẫn được để lại cho công việc trong tương lai
- Khả năng bắt chước giọng nói có khả năng bị lạm dụng
- Có thể được dùng để vượt qua xác thực sinh trắc học và mạo danh, nên cơ chế bảo vệ là rất quan trọng
- Âm thanh được tạo sau thay thế có thể được phát hiện với độ chính xác 98,5% bằng bộ phân loại chuyên dụng như trong Borsos et al. (2022)
- Với vai trò là thành phần của một hệ thống lớn hơn, SoundStorm được cho là khó có thể đưa thêm rủi ro ngoài những rủi ro đã được thảo luận trong Borsos et al. (2022) và Kharitonov et al. (2023)
- Việc giảm yêu cầu về bộ nhớ và tính toán của AudioLM có thể giúp nghiên cứu tạo sinh âm thanh trở nên dễ tiếp cận hơn với cộng đồng rộng lớn hơn
- Trong tương lai, nhóm nghiên cứu dự định khám phá audio watermarking như một hướng tiếp cận khác để phát hiện giọng nói tổng hợp
1 bình luận
Ý kiến trên Hacker News
CGI luôn có những cột mốc mà nó dần chạm tới. Cây có lá cuối cùng cũng gần với thực tế hơn, cỏ lay động trong gió gần như trông hợp lý, những thứ như tóc hay thạch được cải thiện; thường thì ta thấy các phim ngắn của Pixar cho thấy họ tập trung vào điều gì, rồi sau đó thấy nó được áp dụng vào phim dài
Tiếp theo là motion capture, công nghệ phủ gương mặt số lên mặt diễn viên thật; lần đầu thấy trong Pirates of the Caribbean tôi đã bị sốc, và những con vượn trong Planet of the Apes cũng vậy. Nhiều phần của ngành CGI giờ có vẻ đã đạt đến điểm như thể những vấn đề khó nhất đã được giải quyết
Giờ tôi vừa phát đoạn hội thoại tổng hợp đầu tiên trong Dialogue Synthesis: “Where did you go last summer? | I went to Greece, it was amazing.” và lại kinh ngạc. Có cảm giác ta đã chạm tới cột mốc nơi máy móc thật sự nói như con người, không thể phân biệt với người thật
Chỉ 10–5 năm trước, nếu muốn dùng TTS thì cách tốt nhất là render tệp giọng nói bằng điện thoại Android, còn những thứ khác thì thật sự tệ. Đặc biệt phía mã nguồn mở thì kinh khủng
Vậy sẽ mất bao lâu để có thể tải một mô hình chất lượng này xuống một Raspberry Pi thế hệ tương lai, và chỉ cần gọi HTTP không qua cloud là nó phát ra giọng nói hoàn hảo qua đầu ra âm thanh? 5 năm?
Ngay bây giờ, nếu thật sự cố gắng và dùng một mô hình nhỏ được tinh chỉnh cho một giọng duy nhất thay vì một mô hình lớn đa dụng có thể tạo bất kỳ giọng nào, thì có lẽ gần như làm được. whisper-tiny không phải chạy real-time trên Pi sao? Hơn nữa còn chưa tận dụng GPU của Pi. (https://github.com/ggerganov/whisper.cpp/discussions/166)
Sửa: có vẻ medium chậm hơn tiny 30 lần trên Pi, nên có lẽ tôi đã quá lạc quan. Tôi không biết Whisper tiny nhanh hơn medium đến vậy
Cách này cũng khá hiệu quả với Tortoise, cho phép dùng thiết lập chất lượng Tortoise rất nhanh mà vẫn đạt chất lượng tương tự mô hình lớn hơn. Tất nhiên, nếu tinh chỉnh toàn bộ cho một giọng duy nhất thì nhiều tính năng hay sẽ biến mất. Với Tortoise thì có lẽ vẫn quá chậm cho Pi, nhưng chiến lược tương tự có khả năng áp dụng được cho các mô hình nhanh hơn như SoundStorm
Về chất lượng, vẫn còn một chặng đường dài cho tính nhất quán dài hạn trong các đoạn âm thanh dài. Khi người thật đọc audiobook, những từ ở phía trên trang ảnh hưởng rất lớn đến cách họ đọc những từ phía dưới. Ngay cả những đoạn cách xa nhau, như từ trang 10 đến trang 300, cũng có thể có ảnh hưởng. Nếu tạo audiobook bằng các mô hình TTS hàng đầu và nghe kỹ, sự thiếu nhất quán lộ ra rất rõ. Cảm giác như người đọc đã thu các đoạn không theo thứ tự, hoặc như thoại trong trò chơi điện tử, nơi diễn viên thu riêng từng câu thoại và không phản ứng với diễn xuất của nhau
Nếu tăng cửa sổ ngữ cảnh lên 1 phút, 2 phút thì sẽ gần hơn, và với một số sách có thể là đủ. Trong ngắn hạn, con người có thể điều chỉnh mọi mẫu âm thanh và chỉnh tay để làm cho tự nhiên. Vì vậy những việc như audiobook do fan làm, có đầu tư thời gian để căn chỉnh đúng, sẽ khả thi. Nhưng với sách hoàn toàn tự động, sự thiếu nhất quán này gây khó chịu phát điên. Vì diễn xuất ở từng đoạn cụ thể quá gần với thật, khoảnh khắc tông giọng lệch đi lại càng khiến người nghe thấy đau hơn
Nhưng gần đây, mỗi khi có một kỹ thuật mới mô phỏng và sao chép sự sáng tạo cũng như hành vi của con người, cảm giác bất an trong tôi lại tích tụ
Tôi có quyền được biết thứ mình đang xem hay đọc có phải được tạo ra hay không không?
Bing và Bard dùng các sản phẩm Microsoft, Google Cloud mới nhất thì tốt, nhưng tôi mong những tiến bộ về công nghệ giọng nói như thế này, cùng với những thứ như audio palm(https://google-research.github.io/seanet/audiopalm/examples/), sẽ xuất hiện dưới dạng API công khai hoặc giao diện người dùng
TTS của Bard ổn, nhưng rõ ràng là tụt lại phía sau
Ngoài ra, TTS tiếng Anh/tiếng Hàn của Bing thật sự rất tốt. Tôi không biết Microsoft dùng sản phẩm cao cấp của họ cho TTS miễn phí trong Edge, nên nó tốt hơn hẳn giọng TTS mặc định của Google
Trong các giọng Azure có giọng còn tốt hơn, và web app TTS có vài lỗi nhỏ, nhưng trải nghiệm tổng thể thật sự rất hài lòng
https://cloud.google.com/text-to-speech/docs/wavenet#studio_voices_preview
Tôi đang bối rối không biết “sản phẩm cao cấp của TTS miễn phí” nghĩa là thư viện phần mềm tự do, SaaS miễn phí, hay “on edge” là trình duyệt Edge, hay chạy ở edge trên máy khách. Ý bạn là mọi TTS chạy trên máy khách đều tốt hơn TTS mặc định của Google sao?
Điều bị bỏ qua khi người ta nói trơn tru rằng thợ thủ công chỉ cần tìm việc khác, là công việc mới đó thường đơn giản và lương thấp. Khi Amazon đẩy các cửa hàng địa phương ra khỏi cuộc chơi, họ không khởi nghiệp mới mà đi kiếm việc ở Wal-Mart
Thật thú vị khi SoundStorm được huấn luyện để tạo hội thoại giữa hai người bằng cách dùng kịch bản đánh dấu chuyển giọng bằng
|. Nhưng có vẻ trong mô hình Bark, chính ký tự|đó cũng gần như hoạt động mặc định để tạo hội thoạiKhoảng một phần ba, hoặc hơn một chút, đầu ra của Bark nghe như hội thoại do một người nói, và cũng thường bỏ lỡ các lần chuyển giọng. Dù vậy, ký tự pipe tạo ra âm thanh nghe như hội thoại theo kiểu diễn xuất khá ổn định
https://twitter.com/jonathanfly/status/1675987073893904386
Liệu đâu đó trong dữ liệu huấn luyện có dữ liệu văn bản-âm thanh dùng
|cho chuyển giọng không?Điều thú vị là Bark có xu hướng render prompt của SoundStorm với giọng mỉa mai. Không rõ đó là khác biệt phong cách giữa các mô hình, hay Google chỉ chọn các mẫu đọc thẳng thắn hơn làm ví dụ đại diện
[laughs]cũng hoạt độngTôi tự hỏi liệu các chợ việc như UpWork hay Fiverr có thể thích nghi đủ nhanh với tình hình mới, khi nhiều dịch vụ trước đây do con người làm nay có thể được phần mềm thực hiện hay không
Giao diện chợ hiện tại có vẻ không phù hợp với điều này. Người mua sẽ muốn có kết quả ngay lập tức, thay vì liên hệ với một người rồi chờ công việc hoàn tất
Vì vậy có lẽ phải biến nền tảng thành giống app store. Người bán kết nối dịch vụ của mình, còn người mua sử dụng dịch vụ đó ngay
Nếu có trong tay một công cụ cho phép đưa vào vài câu thoại cũ của diễn viên, tạo ra thứ gì đó lấp chỗ trống theo các tham số đã định, rồi tiếp tục dự án mà không gặp mọi vấn đề hậu cần, thì đúng là thiên đường
Nhưng nó cũng có thể giết chết cả một chuyên môn. Nó cũng sẽ làm giảm giá trị của diễn viên. Thực ra chuyện đó đã đang xảy ra rồi. Trên thị trường đã có các chương trình thay thế hoàn toàn diễn viên lồng tiếng, và đang được dùng trong lĩnh vực video game
Nó chắc chắn có thể giúp cho công việc của tôi. Đồng thời tôi cũng hiểu rõ khả năng bị lạm dụng khủng khiếp của nó
Phần ấn tượng nhất là có vẻ chỉ với bản gốc 3 giây mà tạo được TTS dài 30 giây. Thật sự tuyệt, và nói thật là tiến xa hơn tôi dự đoán rất nhiều
Nhìn các tiến bộ gần đây, có giọng TTS cho Linux nào ổn mà người dùng phổ thông có thể dùng không cần cấu hình phức tạp không?
Tôi không muốn chơi một game được tạo theo cách này. Lý do chính xác khiến tôi muốn nghe hội thoại của NPC là vì đó là hội thoại do con người viết
Ấn tượng đấy, nhưng ví dụ đầu tiên bị lỗi ở khoảnh khắc cuối khi giọng nam ảo nói “what?” rồi trượt lên cao, nghe rõ hiệu ứng chỉnh cao độ kiểu auto-tune
Các ví dụ khác thì thật sự đáng kinh ngạc. Nếu thật sự chỉ cần học vài giây mà có thể xuất ra giọng nói dài vài phút nghe thuyết phục, thì bước tiếp theo có lẽ là khiến nó hát. Tôi nghĩ sẽ có một cơn bão pháp lý khi ai đó dùng công nghệ tương tự để, chẳng hạn, đưa giọng Elvis vào quảng cáo mà không nêu tên, để người hâm mộ nhận ra nhưng âm thanh không khớp với lời hát hay bài hát cũ của ông
Không phải nhận xét thông minh gì, nhưng nếu phát tất cả mẫu cùng lúc thì rất vui tai. Cảm giác như Ableton Live phiên bản HTML