1. Giới thiệu về dự án MMS của Facebook

Trong blog giới thiệu, Facebook đưa ra vấn đề như dưới đây

Việc trang bị cho máy móc khả năng nhận dạng và tạo ra giọng nói, từ đó làm cho thông tin trở nên truy cập được cho nhiều người hơn, bao gồm những người phụ thuộc hoàn toàn vào giọng nói để truy cập thông tin. Tuy nhiên, việc tạo ra các mô hình học máy chất lượng tốt cho những nhiệm vụ này đòi hỏi một lượng lớn dữ liệu được gán nhãn - trong trường hợp này, hàng nghìn giờ âm thanh kèm theo bản ghi chú. Đối với hầu hết các ngôn ngữ, dữ liệu như vậy đơn giản không tồn tại. Ví dụ, các mô hình nhận dạng giọng nói hiện có chỉ bao gồm khoảng 100 ngôn ngữ - chỉ là một phần nhỏ so với hơn 7.000 ngôn ngữ đã biết được sử dụng trên thế giới. Đáng lo ngại hơn nữa, gần một nửa trong số các ngôn ngữ này đang đứng trước nguy cơ biến mất trong đời sống của chúng ta.

Họ cũng cho biết rằng, vấn đề trên được xử lý bằng cách kết hợp wav2vec 2.0, nghiên cứu tiên phong trong việc học tự giám sát và một bộ dữ liệu mới cung cấp dữ liệu được gán nhãn cho hơn 1.100 ngôn ngữ và dữ liệu chưa được gán nhãn cho gần 4.000 ngôn ngữ.

Mô hình đào tạo sẵn và source code được Facebook chia sẻ công khai trên github.

Link gốc bài viết tham khảo dưới đây:

Introducing speech-to-text, text-to-speech, and more for 1,100+ languages
We expanded speech technology from about 100 languages to over 1,000 by building a single multilingual speech recognition model supporting over 1,100...

2. Những thứ MMS có thể làm được

MMS hỗ trợ những chức năng chính sau

LID

Language identification: nhận diện được ngôn ngữ từ một đoạn âm thanh

ASR

Automatic speech recognition: tạo văn bản tự động từ file âm thanh

TTS

Text to speech: chuyển đổi văn bản thành âm thanh

3. Sử dụng thử tính năng TTS của MMS

Các tính năng trên của MMS project được giới thiệu chi tiết trong tài liệu dưới đây.

fairseq/examples/mms/README.md at main · facebookresearch/fairseq
Facebook AI Research Sequence-to-Sequence Toolkit written in Python. - fairseq/examples/mms/README.md at main · facebookresearch/fairseq

Trong bài blog này, chúng ta chỉ đi vào chi tiết một chức năng là text-to-speech.

Để sử dụng được mô hình TTS của MMS, ta cần cài đặt trước thư viện VITS

GitHub - jaywalnut310/vits: VITS: Conditional Variational Autoencoder with Adversarial Learning for End-to-End Text-to-Speech
VITS: Conditional Variational Autoencoder with Adversarial Learning for End-to-End Text-to-Speech - GitHub - jaywalnut310/vits: VITS: Conditional Variational Autoencoder with Adversarial Learning f...

Ta sẽ thử nghiệm chức năng TTS bằng notebook được cung cấp sẵn sau.

GitHub - jaywalnut310/vits: VITS: Conditional Variational Autoencoder with Adversarial Learning for End-to-End Text-to-Speech
VITS: Conditional Variational Autoencoder with Adversarial Learning for End-to-End Text-to-Speech - GitHub - jaywalnut310/vits: VITS: Conditional Variational Autoencoder with Adversarial Learning f...

Việc chạy notebook này khá đơn giản, chỉ cần chú ý đổi mã ngôn ngữ để tạo âm thanh. Ví dụ muốn tạo âm thanh tiếng Việt thì đổi mã sang tiếng Việt.

Kết quả chạy:

Ưu điểm:

  • Tốc độ convert từ text sang speech khá nhanh. Với một đoạn âm thanh dài 30 giây chỉ mất tầm 0.5 giây để convert.
  • Các từ được phát âm một cách chính xác
  • Support nhiều ngôn ngữ khác nhau

Nhược điểm:

  • Chưa có ngắt nghỉ khi gặp các các kí tự đặc biệt như dấu chấm, dấu phẩy, ...
  • Chưa cho phép thay đổi các giọng nói khác nhau
  • Nếu trong đoạn văn bản có chứa từ tiếng Anh thì sẽ không convert được từ đó thành âm thanh chính xác

Kết luận

Project do Facebook chia sẻ có tính ứng dụng cao bởi nó hỗ trợ rất nhiều ngôn ngữ, hơn thế nữa với việc là một mã nguồn mở, khả năng cải thiện, phát triển cũng như tích hợp với các dự án khác là rất lớn. Tuy vậy vẫn còn nhiều vấn đề cần cải thiện để có thể nâng cao chất lượng mô hình.