Mô hình và nền tảng AI

OpenVoice: Kích hoạt Nhân bản Giọng nói Tương thích

mm
Thêm Unite.AI vào các nguồn ưu tiên của bạn trên Google

Trong tổng hợp giọng nói (TTS), Nhân bản Giọng nói Tức thời (IVC) cho phép mô hình TTS nhân bản giọng nói của bất kỳ người nói tham chiếu nào bằng cách sử dụng một mẫu âm thanh ngắn, mà không cần đào tạo thêm cho người nói tham chiếu. Công nghệ này cũng được gọi là Tổng hợp Giọng nói Zero-Shot. Phương pháp Nhân bản Giọng nói Tức thời cho phép tùy chỉnh linh hoạt giọng nói được tạo ra và chứng tỏ có giá trị đáng kể trong nhiều tình huống thực tế, bao gồm cả rô-bốt trò chuyện tùy chỉnh, tạo nội dung và tương tác giữa con người và Mô hình Ngôn ngữ Lớn (LLM).

Mặc dù các khuôn khổ nhân bản giọng nói hiện tại thực hiện công việc của chúng khá tốt, nhưng chúng vẫn gặp phải một số thách thức trong lĩnh vực này, bao gồm Điều khiển Phong cách Giọng nói Linh hoạt, tức là các mô hình thiếu khả năng điều khiển phong cách giọng nói linh hoạt sau khi nhân bản giọng nói. Một trở ngại lớn khác mà các khuôn khổ nhân bản giọng nói tức thời hiện tại gặp phải là Nhân bản Giọng nói Zero-Shot Ngôn ngữ Khác, tức là các mô hình hiện tại yêu cầu truy cập vào một tập dữ liệu đa ngôn ngữ lớn cho mục đích đào tạo, bất kể ngôn ngữ.

Để giải quyết những vấn đề này và đóng góp vào việc cải thiện các mô hình nhân bản giọng nói tức thời, các nhà phát triển đã làm việc trên OpenVoice, một khuôn khổ nhân bản giọng nói tức thời mã nguồn mở nhằm giải quyết các thách thức mà các khuôn khổ IVC hiện tại gặp phải. OpenVoice chứng tỏ rằng các mô hình Nhân bản Giọng nói Tức thời có thể nhân bản màu sắc giọng nói của người nói tham chiếu và đạt được kiểm soát chi tiết đối với các phong cách giọng nói, bao gồm giọng, nhịp điệu, ngữ điệu, khoảng dừng và thậm chí cả cảm xúc. Điều ấn tượng hơn nữa là khuôn khổ OpenVoice cũng chứng tỏ khả năng đáng kể trong việc đạt được nhân bản giọng nói Zero-Shot cho các ngôn ngữ bên ngoài tập dữ liệu MSML, cho phép OpenVoice nhân bản giọng nói sang các ngôn ngữ mới mà không cần đào tạo trước rộng rãi cho ngôn ngữ đó. OpenVoice quản lý để cung cấp kết quả nhân bản giọng nói tức thời vượt trội trong khi vẫn có tính khả thi về mặt tính toán với chi phí hoạt động thấp hơn tới 10 lần so với các API hiện có với hiệu suất kém hơn.

Trong bài viết này, chúng ta sẽ thảo luận về khuôn khổ OpenVoice một cách sâu sắc và sẽ khám phá kiến trúc của nó, cho phép nó cung cấp hiệu suất vượt trội trên các nhiệm vụ nhân bản giọng nói tức thời. Vậy hãy bắt đầu.

OpenVoice: Kích hoạt Nhân bản Giọng nói Tương thích

Như đã đề cập trước đó, Nhân bản Giọng nói Tức thời, cũng được gọi là Tổng hợp Giọng nói Zero-Shot, cho phép mô hình TTS nhân bản giọng nói của bất kỳ người nói tham chiếu nào bằng cách sử dụng một mẫu âm thanh ngắn, mà không cần đào tạo thêm cho người nói tham chiếu. Nhân bản Giọng nói Tức thời luôn là một chủ đề nghiên cứu nóng với các công việc hiện có bao gồm khuôn khổ XTTS và VALLE, những khuôn khổ này trích xuất nhúng người nói và/hoặc token âm thanh từ âm thanh tham chiếu, phục vụ như một điều kiện cho mô hình tự hồi quy. Mô hình tự hồi quy sau đó tạo ra các token âm thanh tuần tự và sau đó giải mã các token này thành sóng âm thanh thô.

Mặc dù các mô hình nhân bản giọng nói tức thời tự hồi quy nhân bản màu sắc giọng nói một cách đáng kể, nhưng chúng thiếu khả năng điều khiển các tham số phong cách khác, bao gồm giọng, cảm xúc, khoảng dừng và nhịp điệu. Hơn nữa, các mô hình tự hồi quy cũng gặp phải tốc độ suy luận thấp và chi phí hoạt động cao. Các phương pháp hiện có như khuôn khổ YourTTS sử dụng một phương pháp không tự hồi quy, chứng tỏ tốc độ suy luận nói nhanh hơn đáng kể so với các khuôn khổ tự hồi quy, nhưng vẫn không thể cung cấp cho người dùng khả năng kiểm soát linh hoạt đối với các tham số phong cách. Hơn nữa, cả các khuôn khổ nhân bản giọng nói tức thời tự hồi quy và không tự hồi quy đều cần truy cập vào một tập dữ liệu đa ngôn ngữ lớn cho mục đích nhân bản giọng nói ngôn ngữ khác.

Để giải quyết các thách thức mà các khuôn khổ nhân bản giọng nói tức thời hiện tại gặp phải, các nhà phát triển đã làm việc trên OpenVoice, một thư viện nhân bản giọng nói tức thời mã nguồn mở, nhằm giải quyết các thách thức mà các khuôn khổ IVC hiện tại gặp phải.

  1. Thách thức đầu tiên là cho phép các khuôn khổ IVC có khả năng kiểm soát linh hoạt đối với các tham số phong cách, ngoài màu sắc giọng nói, bao gồm giọng, nhịp điệu, ngữ điệu và khoảng dừng. Các tham số phong cách là rất quan trọng để tạo ra các cuộc trò chuyện và giọng nói tự nhiên trong ngữ cảnh, thay vì đọc văn bản một cách đơn điệu.
  2. Thách thức thứ hai là cho phép các khuôn khổ IVC nhân bản giọng nói ngôn ngữ khác trong một thiết lập Zero-Shot.
  3. Thách thức cuối cùng là đạt được tốc độ suy luận thời gian thực cao mà không làm giảm chất lượng.

Để giải quyết hai chướng ngại vật đầu tiên, kiến trúc của khuôn khổ OpenVoice được thiết kế để tách các thành phần trong giọng nói một cách tốt nhất. Hơn nữa, OpenVoice tạo ra màu sắc giọng nói, ngôn ngữ và các tính năng giọng nói khác một cách độc lập, cho phép khuôn khổ này điều khiển linh hoạt các loại ngôn ngữ và phong cách giọng nói riêng lẻ. Khuôn khổ OpenVoice giải quyết thách thức thứ ba bằng cách cấu trúc tách biệt giảm độ phức tạp tính toán và yêu cầu kích thước mô hình.

OpenVoice: Phương pháp và Kiến trúc

Khung khổ kỹ thuật của OpenVoice hiệu quả và khá đơn giản để thực hiện. Không có gì bí mật khi nhân bản màu sắc giọng nói cho bất kỳ người nói nào, thêm ngôn ngữ mới và cho phép kiểm soát linh hoạt đối với các tham số giọng nói đồng thời có thể là một thách thức. Điều này là do thực hiện các nhiệm vụ này đồng thời yêu cầu các tham số được kiểm soát phải giao nhau bằng cách sử dụng một lượng lớn dữ liệu kết hợp. Hơn nữa, trong tổng hợp giọng nói đơn người nói thông thường, cho các nhiệm vụ không yêu cầu nhân bản giọng nói, nó dễ dàng hơn để thêm kiểm soát đối với các tham số phong cách khác. Dựa trên những điều này, khuôn khổ OpenVoice nhằm tách các nhiệm vụ Nhân bản Giọng nói Tức thời thành các nhiệm vụ con.

Mô hình đề xuất sử dụng một mô hình TTS người nói cơ bản để kiểm soát ngôn ngữ và các tham số phong cách, và sử dụng một bộ chuyển đổi màu sắc giọng nói để bao gồm màu sắc giọng nói tham chiếu vào giọng nói được tạo ra. Hình ảnh sau minh họa kiến trúc của khuôn khổ.

Ở cốt lõi, khuôn khổ OpenVoice sử dụng hai thành phần: một bộ chuyển đổi màu sắc giọng nói và một mô hình TTS người nói cơ bản. Mô hình TTS người nói cơ bản có thể là một mô hình đơn người nói hoặc đa người nói, cho phép kiểm soát chính xác đối với các tham số phong cách, ngôn ngữ và giọng. Mô hình tạo ra một giọng nói được truyền đến bộ chuyển đổi màu sắc giọng nói, thay đổi màu sắc giọng nói cơ bản thành màu sắc giọng nói của người nói tham chiếu.

Khuôn khổ OpenVoice cung cấp nhiều tính linh hoạt khi nói đến mô hình TTS người nói cơ bản, vì nó có thể sử dụng mô hình VITS với một số sửa đổi, cho phép nó chấp nhận các nhúng ngôn ngữ và phong cách trong bộ dự đoán thời gian và mã hóa văn bản. Khuôn khổ cũng có thể sử dụng các mô hình như Microsoft (MSFT ) TTS, những mô hình này có chi phí thương mại thấp hoặc nó có thể triển khai các mô hình như InstructTTS, những mô hình này có khả năng chấp nhận các lệnh phong cách. Hiện tại, khuôn khổ OpenVoice sử dụng mô hình VITS, mặc dù các mô hình khác cũng là một lựa chọn khả thi.

Đến với thành phần thứ hai, Bộ chuyển đổi Màu sắc Giọng nói là một thành phần mã hóa-giải mã có chứa một luồng chuẩn hóa đảo ngược ở trung tâm. Thành phần mã hóa trong bộ chuyển đổi màu sắc giọng nói là một CNN một chiều chấp nhận phổ biến Fourier thời gian ngắn của mô hình TTS người nói cơ bản làm đầu vào. Thành phần mã hóa sau đó tạo ra các bản đồ tính năng làm đầu ra. Bộ trích xuất màu sắc giọng nói là một CNN hai chiều đơn giản hoạt động trên phổ mel của giọng nói đầu vào và tạo ra một vectơ tính năng đơn làm đầu ra, mã hóa thông tin về màu sắc giọng nói. Các lớp luồng chuẩn hóa nhận các bản đồ tính năng tạo ra bởi thành phần mã hóa làm đầu vào và tạo ra một biểu diễn tính năng bảo tồn tất cả các thuộc tính phong cách nhưng loại bỏ thông tin về màu sắc giọng nói. Khuôn khổ OpenVoice sau đó áp dụng các lớp luồng chuẩn hóa theo hướng ngược lại và lấy biểu diễn tính năng làm đầu vào và đầu ra các lớp luồng chuẩn hóa. Khuôn khổ sau đó giải mã các lớp luồng chuẩn hóa thành sóng âm thanh thô bằng cách sử dụng một chồng các convolution một chiều ngược.

Toàn bộ kiến trúc của khuôn khổ OpenVoice là tiến hành thuận mà không sử dụng bất kỳ thành phần tự hồi quy nào. Thành phần bộ chuyển đổi màu sắc giọng nói tương tự như chuyển đổi giọng nói về mặt khái niệm nhưng khác biệt về chức năng, mục tiêu đào tạo và thiên vị cảm nhận trong cấu trúc mô hình. Các lớp luồng chuẩn hóa chia sẻ cùng một cấu trúc với các mô hình giọng nói dựa trên luồng nhưng khác biệt về chức năng và mục tiêu đào tạo.

Hơn nữa, có một phương pháp khác để trích xuất biểu diễn tính năng, phương pháp được thực hiện bởi khuôn khổ OpenVoice cung cấp chất lượng âm thanh tốt hơn. Điều đáng chú ý là khuôn khổ OpenVoice không có ý định phát minh các thành phần trong kiến trúc mô hình, mà cả hai thành phần chính, tức là bộ chuyển đổi màu sắc giọng nói và mô hình TTS người nói cơ bản, đều được lấy từ các công việc hiện có. Mục tiêu chính của khuôn khổ OpenVoice là hình thành một khuôn khổ tách biệt, tách rời việc tạo ngôn ngữ và phong cách giọng nói khỏi việc nhân bản màu sắc giọng nói. Mặc dù phương pháp này khá đơn giản, nhưng nó rất hiệu quả, đặc biệt là trong các nhiệm vụ kiểm soát phong cách và ngôn ngữ mới.

Ở cốt lõi, triết lý chính của khuôn khổ OpenVoice là tách rời việc tạo ngôn ngữ và phong cách giọng nói khỏi việc tạo màu sắc giọng nói. Một trong những điểm mạnh chính của khuôn khổ OpenVoice là giọng nói nhân bản là trôi chảy và có chất lượng cao miễn là mô hình TTS người nói đơn nói một cách trôi chảy.

OpenVoice: Thử nghiệm và Kết quả

Đánh giá các nhiệm vụ nhân bản giọng nói là một việc khó khăn khách quan do nhiều lý do. Trước hết, các công việc hiện có thường sử dụng các dữ liệu đào tạo và kiểm tra khác nhau, điều này làm cho việc so sánh các công việc này trở nên không công bằng. Mặc dù việc đánh giá các chỉ số như Điểm Quan điểm Trung bình có thể được thực hiện thông qua việc huy động đám đông, nhưng độ khó và đa dạng của dữ liệu kiểm tra sẽ ảnh hưởng đến kết quả tổng thể một cách đáng kể. Thứ hai, các phương pháp nhân bản giọng nói khác nhau có các dữ liệu đào tạo khác nhau, và sự đa dạng và quy mô của dữ liệu này ảnh hưởng đến kết quả một cách đáng kể. Cuối cùng, mục tiêu chính của các công việc hiện có thường khác nhau, do đó chúng khác nhau về chức năng.

Do ba lý do trên, việc so sánh các khuôn khổ nhân bản giọng nói hiện có một cách định lượng là không công bằng. Thay vào đó, việc so sánh các phương pháp này một cách định tính có ý nghĩa hơn.

Nhân bản Màu sắc Giọng nói Chính xác

Để phân tích hiệu suất của nó, các nhà phát triển xây dựng một tập kiểm tra với các cá nhân ẩn danh, các nhân vật trò chơi và các nhân vật nổi tiếng tạo thành cơ sở người nói tham chiếu, và có một phân bố giọng nói rộng, bao gồm cả các mẫu trung lập và các giọng nói biểu cảm độc đáo. Khuôn khổ OpenVoice có thể nhân bản màu sắc giọng nói tham chiếu và tạo ra giọng nói trong nhiều ngôn ngữ và giọng cho bất kỳ người nói tham chiếu hoặc người nói cơ bản nào.

Điều khiển Phong cách Giọng nói Linh hoạt

Một trong những mục tiêu của khuôn khổ OpenVoice là kiểm soát phong cách giọng nói linh hoạt bằng cách sử dụng bộ chuyển đổi màu sắc giọng nói, có thể sửa đổi màu sắc giọng nói trong khi bảo tồn tất cả các tính năng và thuộc tính giọng nói khác.

Các thí nghiệm chỉ ra rằng mô hình bảo tồn các phong cách giọng nói sau khi chuyển đổi sang màu sắc giọng nói tham chiếu. Trong một số trường hợp, tuy nhiên, mô hình trung hòa cảm xúc một chút, một vấn đề có thể được giải quyết bằng cách truyền ít thông tin hơn đến các lớp luồng chuẩn hóa để chúng không thể loại bỏ cảm xúc. Khuôn khổ OpenVoice có thể bảo tồn các phong cách từ giọng nói cơ bản nhờ vào việc sử dụng bộ chuyển đổi màu sắc giọng nói. Điều này cho phép khuôn khổ OpenVoice điều khiển mô hình TTS người nói cơ bản một cách dễ dàng để kiểm soát các phong cách giọng nói.

Nhân bản Giọng nói Ngôn ngữ Khác

Khuôn khổ OpenVoice không bao gồm bất kỳ dữ liệu đa ngôn ngữ lớn nào cho ngôn ngữ không nhìn thấy, nhưng nó có thể đạt được nhân bản giọng nói ngôn ngữ khác gần như Zero-Shot. Khả năng nhân bản giọng nói ngôn ngữ khác của khuôn khổ OpenVoice là hai lần:

  1. Mô hình có thể nhân bản màu sắc giọng nói của người nói tham chiếu một cách chính xác khi ngôn ngữ của người nói tham chiếu không nhìn thấy trong tập dữ liệu đa ngôn ngữ đa người nói hoặc MSML.
  2. Hơn nữa, trong cùng một sự kiện ngôn ngữ của người nói tham chiếu không nhìn thấy, khuôn khổ OpenVoice có thể nhân bản giọng nói của người nói tham chiếu và nói trong ngôn ngữ đó với điều kiện mô hình TTS người nói cơ bản hỗ trợ ngôn ngữ đó.

Suy nghĩ Cuối cùng

Trong bài viết này, chúng ta đã thảo luận về OpenVoice, một khuôn khổ nhân bản giọng nói tức thời tương thích, nhân bản giọng nói của bất kỳ người dùng nào và tạo ra giọng nói trong nhiều ngôn ngữ bằng cách sử dụng một mẫu âm thanh ngắn từ người nói tham chiếu. Sự trực giác chính đằng sau OpenVoice là miễn là một mô hình không cần phải thực hiện nhân bản màu sắc giọng nói của người nói tham chiếu, một khuôn khổ có thể sử dụng một mô hình TTS người nói cơ bản để kiểm soát ngôn ngữ và phong cách giọng nói.

OpenVoice chứng tỏ rằng các mô hình Nhân bản Giọng nói Tức thời có thể nhân bản màu sắc giọng nói của người nói tham chiếu và đạt được kiểm soát chi tiết đối với các phong cách giọng nói, bao gồm giọng, nhịp điệu, ngữ điệu, khoảng dừng và thậm chí cả cảm xúc. OpenVoice quản lý để cung cấp kết quả nhân bản giọng nói tức thời vượt trội trong khi vẫn có tính khả thi về mặt tính toán với chi phí hoạt động thấp hơn tới 10 lần so với các API hiện có với hiệu suất kém hơn.

"Một kỹ sư theo nghề nghiệp, một nhà văn theo trái tim". Kunal là một nhà văn kỹ thuật với tình yêu và hiểu biết sâu sắc về AI và ML, dành để đơn giản hóa các khái niệm phức tạp trong các lĩnh vực này thông qua tài liệu hấp dẫn và thông tin của mình.