VietASI.comVietASI
Tổng hợp giọng nói và nhân bản giọng

Ngữ điệu và ngắt nghỉ của giọng đọc máy tiếng Việt: vì sao nghe đều đều

Giọng đọc máy tiếng Việt đúng từng chữ mà vẫn đều đều, ngắt sai chỗ, đọc câu hỏi như câu kể. Nguyên nhân nằm ở tách từ, dấu câu, tầm nhìn một câu, và cách khắc phục.

Low angle shot of a Vietnamese radio presenter in a small studio leaning toward a microphone, one hand raised mid-gesture, dim warm lamp, acoustic foam softly out of focus

Giọng đọc máy tiếng Việt nghe đều đều chủ yếu vì mô hình đọc từng câu riêng lẻ, không biết câu nào là ý chính của đoạn, không biết từ nào cần nhấn, và chỉ dựa vào dấu câu để quyết định chỗ ngắt; khi văn bản thiếu dấu hoặc tách cụm từ sai, ngắt nghỉ rơi vào giữa một từ ghép và câu nghe vô nghĩa. Ngữ điệu, tức phần lên xuống, nhanh chậm, mạnh nhẹ của cả câu, là phần còn lại khó nhất sau khi máy đã đọc đúng từng chữ.

Người nghe có thể bỏ qua một chữ đọc sai, nhưng sẽ mệt rất nhanh với một giọng ngắt nghỉ vô lý suốt mười phút. Bài này tách ngữ điệu thành các thành phần cụ thể, chỉ ra đặc thù của tiếng Việt khiến máy dễ sai, và đưa ra những cách sửa trong tầm tay người làm nội dung lẫn người làm sản phẩm.

Ngữ điệu gồm những gì

Ngắt nghỉ. Chỗ dừng và độ dài của khoảng dừng. Người đọc giỏi dừng ngắn giữa các cụm ngữ pháp, dừng dài hơn giữa các câu, dài hơn nữa giữa các đoạn. Khoảng dừng cũng có thể chỉ là một chỗ kéo dài âm tiết cuối cụm, không có khoảng lặng thật.

Nhịp độ. Tốc độ thay đổi trong câu: cụm thông tin mới đọc chậm hơn, cụm quen thuộc đọc nhanh, phần chú thích trong ngoặc đọc nhanh và hạ giọng. Máy thường đọc mọi phần cùng tốc độ.

Nhấn. Từ mang thông tin trọng tâm được đọc to hơn, dài hơn, với khoảng cao độ rộng hơn. Trong "Hội thảo dời sang thứ Năm, không phải thứ Tư", từ "thứ Năm" cần được nhấn; máy không hiểu nghĩa sẽ nhấn đều.

Đường cao độ của cả câu. Ngoài thanh điệu từng chữ, cả câu có một đường cao độ chung: câu kể thường hạ dần về cuối, câu cảm có thể nâng cao độ chung lên, phần liệt kê có kiểu ngữ điệu "còn tiếp" ở mỗi mục trừ mục cuối. Ở tiếng Việt, đường chung này phải chồng lên thanh điệu mà không làm hỏng thanh, nên biên độ cho ngữ điệu hẹp hơn tiếng Anh.

Tách từ và cụm: gốc của những chỗ ngắt sai

Chữ viết tiếng Việt đặt dấu cách giữa các âm tiết chứ không phải giữa các từ. "Học sinh học sinh học" có năm âm tiết và có thể chia thành "học sinh / học / sinh học". Một hệ thống không biết ranh giới từ thì không biết ngắt ở đâu cho đúng, và một chỗ ngắt giữa "học" và "sinh" của "học sinh" đủ làm người nghe khựng lại. Đây là lý do bài toán tách từ, vốn rất quen thuộc với giới xử lý ngôn ngữ tiếng Việt qua các công cụ như VnCoreNLP, có ảnh hưởng trực tiếp đến giọng đọc.

Ở mức cao hơn từ là cụm ngữ pháp. Câu "Bộ trưởng cho biết kế hoạch triển khai trong quý tới sẽ được công bố" có thể ngắt sau "cho biết", nhưng không nên ngắt giữa "kế hoạch triển khai" và "trong quý tới" nếu "trong quý tới" bổ nghĩa cho "triển khai". Hệ thống ngắt theo số âm tiết hay theo xác suất thô sẽ ngắt bừa ở giữa. Mô hình nơ-ron học từ dữ liệu ghi âm có ngắt nghỉ tự nhiên làm tốt hơn đáng kể, nhưng vẫn dựa vào dấu câu làm tín hiệu mạnh nhất.

Một biến thể đặc biệt của vấn đề là câu thiếu dấu câu: tiêu đề, chú thích ảnh, văn bản mạng xã hội, văn bản đầu ra từ nhận dạng giọng nói. Những câu này không có dấu phẩy nào để bám, nên máy hoặc đọc một hơi dài không thở, hoặc tự đặt chỗ ngắt sai. Nếu sản phẩm của bạn đọc loại văn bản này, khâu tự thêm dấu câu (cũng là một mô hình riêng) đáng đầu tư không kém bản thân giọng đọc.

Câu hỏi, câu cảm, câu liệt kê: tiếng Việt khác tiếng Anh ở đâu

Nhiều mô hình được thiết kế hoặc tiền huấn luyện trên tiếng Anh, rồi mang thói quen ngữ điệu tiếng Anh sang tiếng Việt. Bảng dưới đây so sánh những chỗ dễ bị "lai".

Kiểu câuTiếng Anh thường dùngTiếng Việt thường dùngLỗi khi máy mang thói quen tiếng Anh
Câu hỏi có/khôngcao độ lên mạnh ở cuối câutiểu từ cuối câu như "không", "chưa", "à", "hả" mang chức năng hỏi; cao độ cuối có nâng nhưng bị thanh điệu giới hạnkéo chữ cuối lên cao làm đổi thanh: "không" nghe gần "khống"
Câu hỏi có từ để hỏicao độ thường hạ cuối câutừ để hỏi ("ai", "gì", "bao giờ") đủ báo câu hỏi, cuối câu không cần lênthêm cao độ lên cuối câu thừa, nghe như hỏi lại
Câu cảmkhoảng cao độ rộng, nhấn mạnhtiểu từ "quá", "thật", "ghê" cùng nhịp chậm và độ mạnhnâng cao độ chung làm méo thanh của từ cảm
Liệt kêmỗi mục lên nhẹ, mục cuối xuốngtương tự, nhưng phải giữ đúng thanh từng mụcmục có thanh nặng hoặc huyền bị kéo lên thành thanh khác

Điểm chung là ở tiếng Việt, cao độ đã bận làm thanh điệu, nên phần lớn chức năng ngữ pháp được giao cho tiểu từ và nhịp. Một giọng đọc tiếng Việt tốt biểu đạt câu hỏi bằng cách đọc rõ tiểu từ, có khoảng dừng hợp lý, chứ không vặn cao độ cuối câu như người nói tiếng Anh. Khi tự kiểm một giọng, hãy thử riêng nhóm câu hỏi có tiểu từ "không" và "chưa" ở cuối, vì đây là chỗ lộ lỗi rõ nhất.

Vì sao đọc từng câu thì ổn mà cả đoạn lại chán

Phần lớn mô hình tổng hợp giọng nói xử lý mỗi lần một câu, hoặc một đoạn ngắn. Mỗi câu được đọc với ngữ điệu "trung tính trung bình" mà mô hình học được. Một câu riêng lẻ nghe ổn, nhưng ghép mười câu liền nhau thì câu nào cũng cùng một kiểu mở, cùng một kiểu kết, và người nghe cảm thấy như nghe đọc danh sách. Người đọc thật thì biết câu nào là câu chủ đề, câu nào là ví dụ, câu nào là kết luận, và thay đổi nhịp, cao độ chung, độ dài khoảng dừng tương ứng.

Có những hướng nghiên cứu đưa ngữ cảnh rộng hơn vào mô hình: cho mô hình nhìn cả câu trước và sau, dùng biểu diễn ngữ nghĩa từ một mô hình ngôn ngữ để đoán từ nào là thông tin mới, hoặc dùng mô hình sinh âm thanh kiểu mô hình ngôn ngữ lớn vốn xử lý chuỗi dài hơn. Các hướng này cải thiện được độ sinh động, nhưng đi kèm rủi ro mới như đọc sót, lặp chữ, hay ngữ điệu kịch tính không đúng chỗ. Chưa có cách nào được công nhận là giải quyết trọn vẹn ngữ điệu ở mức đoạn văn cho tiếng Việt.

Với sách nói và nội dung dài, đây là lý do nhiều nhà làm nội dung vẫn dùng người đọc thật cho phần chính, hoặc dùng giọng máy nhưng có người biên tập ngữ điệu từng đoạn. Tổng hợp giọng nói hiện đã đủ tốt cho thông báo, tin ngắn, nội dung tham khảo; còn văn chương, nơi nhịp điệu là một phần của nghĩa, vẫn là vùng khó.

Sửa ngữ điệu từ phía văn bản: việc người làm nội dung làm được

Không phải ai cũng có quyền chỉnh mô hình, nhưng ai cũng sửa được văn bản đầu vào. Các bước sau giúp giọng đọc máy nghe tự nhiên hơn rõ rệt, với bất kỳ công cụ nào.

  1. Viết câu ngắn hơn bản để mắt đọc. Câu dài nhiều mệnh đề phụ là thứ máy ngắt sai nhiều nhất; tách thành hai ba câu thường cải thiện ngay.
  2. Đặt dấu phẩy ở chỗ bạn muốn máy ngắt, kể cả khi ngữ pháp văn viết không bắt buộc. Dấu phẩy là tín hiệu mạnh nhất mọi mô hình đều tôn trọng.
  3. Đưa phần chú thích trong ngoặc ra thành câu riêng, hoặc bỏ, vì máy thường đọc ngoặc đơn với cùng ngữ điệu như phần chính.
  4. Với câu hỏi, giữ tiểu từ hỏi ở cuối và đặt dấu chấm hỏi rõ ràng; tránh câu hỏi chỉ dựa vào ngữ điệu kiểu "Anh đi rồi?" vì máy khó đọc đúng.
  5. Nếu công cụ hỗ trợ SSML, dùng thẻ break để chèn khoảng ngừng có độ dài cụ thể giữa các ý, và thẻ emphasis hoặc prosody cho từ cần nhấn. Mức hỗ trợ các thẻ này cho tiếng Việt khác nhau giữa các dịch vụ, cần thử trước.
  6. Nghe lại toàn bộ ở tốc độ thật, đánh dấu chỗ ngắt sai, sửa văn bản chứ đừng chỉ chỉnh tốc độ; tăng giảm tốc độ không sửa được chỗ ngắt sai.

Phần lớn các bước này cũng là nguyên tắc viết cho phát thanh, có từ trước khi có máy đọc. Một kịch bản viết tốt cho tai người nghe sẽ cho kết quả tốt với cả người đọc lẫn máy.

Đánh giá ngữ điệu: nghe theo tiêu chí, không nghe theo cảm giác

Khi so hai giọng đọc, người ta hay nhận xét chung "giọng này tự nhiên hơn". Nhận xét đó dễ bị chi phối bởi chất giọng, như giọng trầm ấm hay trong, chứ không phản ánh ngữ điệu. Để tách riêng, bạn có thể chấm theo ba câu hỏi cho mỗi đoạn: có chỗ ngắt nào làm sai nghĩa hoặc làm khựng không; câu hỏi và câu liệt kê có được đọc khác câu kể không; nghe hết đoạn có thấy mệt vì đều đều không.

Nên tách riêng nhóm câu thử cho từng kiểu ngữ điệu: năm câu hỏi có tiểu từ cuối, năm câu hỏi có từ để hỏi, năm câu liệt kê, năm câu có thông tin cần nhấn (như ngày giờ đổi lịch), và một đoạn văn dài khoảng ba trăm tiếng. Mỗi nhóm phơi bày một loại lỗi khác. Một giọng có thể đọc câu liệt kê rất tốt nhưng hỏng ở câu hỏi, và nếu chỉ nghe một đoạn văn chung chung, bạn sẽ không biết điều đó cho đến khi khách hàng phàn nàn. Bộ câu này cũng nên giữ cố định để so sánh qua các lần cập nhật.

Câu hỏi thứ ba khó đo nhất nhưng quan trọng nhất với nội dung dài. Một cách đơn giản là cho người nghe nghe đoạn ba đến năm phút rồi hỏi họ nhớ được ý chính nào. Giọng có ngữ điệu tốt giúp người nghe nhớ nhiều hơn, vì nhấn đúng chỗ là cách người đọc chỉ ra đâu là thông tin quan trọng. Đây là một phép thử thô, không thay được nghiên cứu nghe có kiểm soát, nhưng đủ để phân biệt hai giọng khác nhau rõ rệt. Khi làm, nhớ đổi thứ tự nghe giữa các người nghe để giọng nghe trước không luôn được lợi thế.

Câu hỏi thường gặp

Vì sao máy đọc câu hỏi tiếng Việt nghe như câu kể?

Có hai khả năng: máy không nhận ra tiểu từ hỏi ở cuối câu nên đọc với ngữ điệu câu kể, hoặc máy mang thói quen tiếng Anh, chỉ dựa vào dấu chấm hỏi để nâng cao độ cuối, làm đổi thanh chữ cuối. Đặt dấu chấm hỏi rõ và giữ tiểu từ hỏi thường giúp cải thiện.

Tách từ có ảnh hưởng gì đến giọng đọc?

Tiếng Việt viết cách theo âm tiết, không theo từ, nên máy cần biết âm tiết nào thuộc cùng một từ ghép để không ngắt giữa từ. Ngắt giữa "học" và "sinh" của "học sinh" làm người nghe khựng lại. Tách từ tốt cũng giúp quyết định cụm nào cần đọc liền.

Tăng tốc độ đọc có làm ngữ điệu kém đi không?

Thường có, nếu công cụ tăng tốc bằng cách nén thời gian đồng đều. Người nói nhanh thật rút ngắn khoảng dừng và âm tiết hư nhiều hơn âm tiết mang nghĩa. Một số mô hình điều khiển độ dài từng âm khi đổi tốc độ nên giữ được tự nhiên hơn, cần nghe thử.

Có nên dùng giọng máy cho sách nói văn học không?

Tuỳ yêu cầu. Giọng máy hiện đọc đúng chữ và khá trôi, nhưng ngữ điệu ở mức đoạn, cảm xúc nhân vật, nhịp văn vẫn kém người đọc giỏi. Với văn học, nhiều nhà làm sách chọn người đọc thật hoặc có người biên tập ngữ điệu kỹ; với tài liệu tham khảo, giọng máy thường đủ dùng.

Thẻ break trong SSML dùng thế nào?

Thẻ break chèn một khoảng ngừng vào chỗ đặt nó, có thể ghi độ dài theo mili giây hoặc theo mức mạnh yếu. Dùng ít và đúng chỗ, như giữa hai ý hoặc trước thông tin quan trọng. Chèn quá nhiều khoảng ngừng làm giọng nghe ngập ngừng, kém tự nhiên hơn cả khi không chèn.

Văn bản từ nhận dạng giọng nói đưa thẳng vào máy đọc có ổn không?

Thường không ổn, vì văn bản nhận dạng hay thiếu dấu câu và viết hoa, nên máy đọc một hơi hoặc ngắt bừa. Nên cho qua khâu tự thêm dấu câu, rồi người biên tập soát lại trước khi tổng hợp. Bài về nhận dạng giọng nói trên trang có bàn khâu chấm câu này.

Cần tư vấn cụ thể cho trường hợp của bạn?

Chúng tôi sẽ liên hệ trong vòng 24 giờ.

Đăng ký tư vấn ngay

Bài viết liên quan

Bạn cần hỗ trợ thêm?

Để lại thông tin, chúng tôi sẽ liên hệ trong 24 giờ.

hoặc
Gọi ngay 0926 138 138