Máy đọc tiếng Việt hay sai tên riêng và từ tiếng Anh chêm trong câu vì khâu chuyển chữ thành âm được viết cho quy tắc chính tả tiếng Việt, vốn không áp được cho "Facebook", "deadline" hay họ "Smith"; hệ thống phải nhận ra đâu là từ ngoại, quyết định đọc theo kiểu Anh hay kiểu Việt hoá, rồi tra từ điển hoặc dùng một mô hình chuyển âm riêng, và chỉ cần sai một bước là người nghe nghe ra "phắc-cê-bô-ốc".
Văn bản tiếng Việt ngày nay chêm rất nhiều tiếng Anh: tên công ty, tên ứng dụng, thuật ngữ nghề, khẩu ngữ dân văn phòng. Thêm vào đó là tên người nước ngoài, tên người Việt ở nước ngoài, địa danh. Bài này giải thích vì sao nhóm từ này khó, các cách hệ thống tổng hợp xử lý, và cách người làm nội dung hay làm sản phẩm kiểm soát được kết quả bằng từ điển phát âm.
Vì sao luật chữ thành âm của tiếng Việt không đủ
Chữ Quốc ngữ có quan hệ chữ–âm tương đối đều: biết chính tả thì đoán được cách đọc, với vài ngoại lệ có quy luật như "c, k, q" hay "gi". Vì thế bộ chuyển chữ thành âm (thường gọi tắt G2P, từ grapheme-to-phoneme) cho tiếng Việt có thể viết chủ yếu bằng luật, độ chính xác cao với từ thuần Việt và Hán Việt. Một âm tiết tiếng Việt cũng có cấu trúc cố định: phụ âm đầu, vần, thanh.
Từ tiếng Anh phá vỡ mọi giả định đó. "Facebook" không phải một âm tiết tiếng Việt; chữ "ce" không đọc "xê"; "oo" không phải hai chữ "o". Nếu G2P tiếng Việt cố áp luật, nó hoặc bỏ qua chữ lạ, hoặc đánh vần từng chữ cái, hoặc cắt thành các âm tiết Việt vô nghĩa. Ngay cả việc nhận ra một từ là từ ngoại cũng không đơn giản: "ban" có thể là "ban" tiếng Việt hay "ban" tiếng Anh (cấm), "hot" có thể là tiếng Anh hoặc đã thành từ Việt hoá trong khẩu ngữ.
Tên người Việt cũng có cái khó riêng: phần lớn đọc theo chính tả, nhưng tên người Việt ở nước ngoài có thể không dấu ("Nguyen Van An"), viết theo thứ tự tây ("An Nguyen"), hoặc lai ("Nguyễn Smith"). Văn bản không dấu khiến máy phải đoán dấu, và đoán dấu cho tên riêng là việc dễ sai nhất, vì tên không có ngữ cảnh ngữ nghĩa để dựa vào.
Ba kiểu đọc từ nước ngoài trong câu Việt
Người Việt khi nói không đọc từ tiếng Anh theo một cách duy nhất. Hệ thống tổng hợp phải chọn một trong các kiểu dưới đây, và mỗi kiểu hợp với một loại nội dung.
| Kiểu đọc | Mô tả | Hợp với | Rủi ro |
|---|---|---|---|
| Đọc kiểu Anh | giữ âm tiếng Anh, có trọng âm, âm cuối kiểu Anh | nội dung công nghệ, người nghe trẻ, thuật ngữ quốc tế | chất giọng đột ngột đổi, nghe như hai người đọc; người nghe lớn tuổi khó theo |
| Đọc Việt hoá | chuyển thành chuỗi âm tiết tiếng Việt có thanh: "phây-búc", "đét-lai" | tin tức đại chúng, tổng đài, giọng đọc cho người lớn tuổi | có thể bị coi là quê hoặc sai nếu người nghe quen kiểu Anh |
| Đánh vần | đọc tên từng chữ cái | viết tắt, mã sản phẩm, chuỗi không đọc được thành từ | dài, mệt nếu dùng cho từ thực ra đọc được |
| Thay bằng từ Việt | đọc "hạn chót" thay cho "deadline" | kịch bản được soạn sẵn cho tai nghe | đổi nghĩa hoặc sắc thái; không làm được tự động một cách an toàn |
Trong thực tế, cùng một sản phẩm thường cần kết hợp: tên thương hiệu đọc theo cách chính thương hiệu muốn, thuật ngữ phổ biến đọc Việt hoá, viết tắt đánh vần. Không có thiết lập mặc định nào đúng cho mọi trường hợp, nên khả năng tuỳ biến từng từ quan trọng hơn chất lượng mặc định.
Cách hệ thống tổng hợp xử lý từ ngoại
Phát hiện ngôn ngữ ở mức từ. Trước hết hệ thống cần đoán từ nào là tiếng Việt, từ nào không. Dấu hiệu đơn giản là chuỗi chữ không tạo thành âm tiết tiếng Việt hợp lệ (như "book", "street"), nhưng nhiều từ tiếng Anh ngắn lại trùng âm tiết Việt. Các hệ thống tốt dùng thêm mô hình ngôn ngữ để đoán theo ngữ cảnh.
Tra từ điển trước, đoán sau. Từ phổ biến như tên các ứng dụng, mạng xã hội, thương hiệu lớn, thuật ngữ công nghệ thường được đưa vào một từ điển phát âm có sẵn, ghi cách đọc mong muốn. Từ không có trong từ điển mới đưa qua mô hình đoán cách đọc, thường là một mô hình chuyển âm tiếng Anh rồi ánh xạ sang âm vị tiếng Việt gần nhất.
Ánh xạ âm vị Anh sang Việt. Tiếng Anh có những âm mà tiếng Việt không có, như phụ âm cụm "str", âm cuối "s", "l", "v". Khi Việt hoá, hệ thống phải chèn nguyên âm, bỏ hoặc thay âm cuối, và gán thanh điệu cho mỗi âm tiết mới. Việc gán thanh không có luật chính thức: "Facebook" Việt hoá thường nghe như thanh ngang rồi thanh sắc, nhưng không có quy tắc nào bảo phải thế.
Mô hình đầu-cuối tự học. Với mô hình nơ-ron học thẳng từ chữ, nếu dữ liệu huấn luyện có nhiều câu chêm tiếng Anh do người Việt đọc, mô hình tự học được kiểu đọc phổ biến. Nhưng hành vi này không kiểm soát được và thay đổi khi cập nhật mô hình, nên các sản phẩm cần độ ổn định vẫn giữ lớp từ điển phía trước.
Dựng và quản lý từ điển phát âm cho sản phẩm của bạn
Từ điển phát âm riêng là công cụ mạnh nhất người làm sản phẩm có trong tay. Nhiều dịch vụ cho phép tải lên danh sách từ và cách đọc; nếu không, bạn có thể thay thế ngay trong văn bản trước khi gửi đi.
- Thu thập danh sách từ: tên sản phẩm, tên tính năng, tên đối tác, thuật ngữ nghề, tên người hay xuất hiện (như tên lãnh đạo trong thông báo nội bộ). Quét kịch bản và văn bản thật để tìm từ không phải tiếng Việt.
- Với mỗi từ, quyết định kiểu đọc: kiểu Anh, Việt hoá, hay đánh vần. Hỏi chính chủ thương hiệu hoặc chủ tên nếu có thể; người tên "Nguyễn Smith" có thể muốn đọc "Xờ-mít" hay kiểu Anh.
- Ghi cách đọc bằng một dạng mà công cụ hiểu: chữ Việt phiên âm (như "phây-búc"), ký hiệu IPA nếu công cụ hỗ trợ thẻ phoneme của SSML, hoặc thẻ sub để thay chuỗi đọc. Viết cách đọc bằng chữ Việt dễ cho cả đội kiểm, nhưng không điều khiển được trọng âm kiểu Anh.
- Nghe kiểm từng mục trong một câu có ngữ cảnh, không chỉ nghe từ đứng riêng; cùng một cách ghi có thể nghe khác khi nằm giữa câu.
- Quản lý từ điển như một tài liệu có phiên bản: ai thêm, khi nào, vì sao. Từ điển phình to dễ mâu thuẫn, ví dụ cùng một từ được hai người khai hai cách đọc.
- Sau mỗi lần nhà cung cấp cập nhật mô hình, chạy lại một bộ câu chứa các từ trong từ điển để chắc từ điển vẫn được áp dụng.
Với tên người, cần nhắc thêm về quyền riêng tư: danh sách tên khách hàng, bệnh nhân hay học sinh không nên tải lên một dịch vụ ngoài chỉ để máy đọc đúng. Nếu bắt buộc phải đọc tên, hãy xem dịch vụ có lưu từ điển ở đâu, ai truy cập được, và cân nhắc xử lý tên ở phía mình trước khi gửi.
Tên người Việt không dấu và tên lai: bài toán khôi phục dấu
Văn bản lấy từ hệ thống cũ, từ hộ chiếu, từ biểu mẫu tiếng Anh thường ghi tên không dấu. "Nguyen Thi Hoa" có thể là "Nguyễn Thị Hoa" hay "Nguyễn Thị Hòa"? "Tran Van Dung" có thể là "Dũng" hay "Dung". Máy đọc phải khôi phục dấu trước khi đọc, và với tên, xác suất đoán sai đáng kể vì nhiều tên phổ biến chỉ khác nhau ở dấu. Đọc sai tên một người là lỗi gây khó chịu hơn hẳn lỗi đọc sai một từ thường.
Cách an toàn nhất, nếu có thể, là giữ tên có dấu ngay từ nguồn dữ liệu. Khi không thể, nên cho người dùng xác nhận hoặc tự nhập cách đọc tên mình, như cách một số ứng dụng hỏi người dùng muốn được gọi là gì. Tránh đoán dấu cho tên trong những ngữ cảnh trang trọng như gọi tên lên nhận giải, thông báo kết quả, tin buồn.
Tên lai, tên người nước ngoài và tên người Việt viết theo thứ tự tây thì không có giải pháp tự động đáng tin. Một từ điển tên do con người kiểm, kết hợp với lựa chọn cho phép người được nhắc tên tự khai, là cách làm có trách nhiệm hơn là tin vào khả năng đoán của mô hình. Với địa danh nước ngoài cũng vậy: nhiều tên đã có cách gọi Việt quen thuộc như "Luân Đôn", "Mát-xcơ-va", trong khi tên mới hơn thường đọc theo gốc. Một từ điển địa danh do biên tập viên chọn kiểu gọi sẽ giữ được sự nhất quán mà mô hình tự đoán không bảo đảm.
Thuật ngữ nghề và khẩu ngữ văn phòng: chọn giữa đúng và quen
Một nhóm từ đặc biệt là thuật ngữ nghề và khẩu ngữ dân văn phòng: "deadline", "meeting", "feedback", "KPI", "check mail", "sale". Người trong nghề nói những từ này hằng ngày với cách đọc đã Việt hoá một nửa, không hẳn kiểu Anh, không hẳn kiểu Việt. Một giọng đọc phát âm "feedback" chuẩn Anh Mỹ giữa câu tiếng Việt có thể nghe đúng về ngữ âm nhưng lạc tông với cách người Việt thực sự nói, giống như một người đang nói tiếng Việt bỗng đổi giọng đọc tin tiếng Anh.
Với thuật ngữ chuyên môn trong y khoa, luật, kỹ thuật, câu hỏi khó hơn: tên thuốc, tên bệnh, tên linh kiện thường giữ nguyên gốc Latin hoặc Anh, và người trong ngành có cách đọc quen riêng. Ở đây sai một âm có thể gây hiểu nhầm thật, không chỉ là chuyện nghe lạ. Nếu sản phẩm đọc nội dung chuyên ngành, từ điển nên được người trong ngành soát, và các mục quan trọng nên được người làm nghề nghe lại trong câu thật.
Một phép thử nhanh cho bất kỳ công cụ nào: soạn mười câu văn phòng thường gặp có chêm tiếng Anh, chẳng hạn "Chiều nay team họp review KPI quý, mọi người gửi feedback trước deadline nhé" (ví dụ giả định), cho máy đọc, rồi hỏi vài đồng nghiệp xem nghe có giống người trong công ty nói không. Câu trả lời thường cho bạn biết ngay công cụ ấy hợp với người nghe nào.
Câu hỏi thường gặp
Vì sao máy đọc "Facebook" thành từng âm tiết lạ?
Vì bộ chuyển chữ thành âm của tiếng Việt cố áp quy tắc chính tả Việt cho một từ tiếng Anh, cắt thành các âm tiết Việt không có nghĩa. Công cụ tốt có từ điển cho các từ phổ biến; nếu không, bạn thêm từ đó vào từ điển riêng hoặc viết cách đọc phiên âm ngay trong văn bản.
Nên đọc từ tiếng Anh kiểu Anh hay kiểu Việt hoá?
Tuỳ người nghe. Nội dung công nghệ cho người trẻ thường hợp kiểu Anh; tin đại chúng, tổng đài, nội dung cho người lớn tuổi thường hợp kiểu Việt hoá. Quan trọng nhất là nhất quán trong một sản phẩm và tôn trọng cách đọc mà chủ thương hiệu mong muốn.
G2P là gì?
G2P là viết tắt của grapheme-to-phoneme, khâu chuyển chuỗi chữ viết thành chuỗi âm vị cho máy đọc. Với tiếng Việt, G2P cho từ thuần Việt có thể viết bằng luật khá chính xác; khó khăn nằm ở từ nước ngoài, tên riêng, viết tắt và văn bản không dấu.
Từ điển phát âm có thể ghi bằng chữ Việt được không?
Được, với nhiều công cụ: bạn ghi chuỗi đọc bằng chữ Việt có dấu, như "đét-lai" cho "deadline", và công cụ đọc chuỗi đó thay vì từ gốc. Cách này dễ kiểm nhưng không điều khiển được trọng âm kiểu Anh; muốn chính xác hơn phải dùng ký hiệu IPA nếu công cụ hỗ trợ.
Làm sao để máy đọc đúng tên người không dấu?
Cách tốt nhất là có dữ liệu tên có dấu từ nguồn. Nếu không, cho người được nhắc tên xác nhận hoặc tự nhập cách đọc. Với những ngữ cảnh trang trọng, tránh để máy tự đoán dấu tên, vì nhiều tên phổ biến chỉ khác nhau ở dấu và đoán sai rất dễ gây phật lòng.
Có nên đưa danh sách tên khách hàng vào từ điển của dịch vụ đọc trực tuyến không?
Cần thận trọng vì đó là dữ liệu cá nhân. Xem dịch vụ lưu từ điển ở đâu, ai truy cập được, có dùng để huấn luyện không. Với dữ liệu nhạy cảm, nên xử lý tên ở phía mình, hoặc dùng giải pháp chạy nội bộ, và tham khảo quy định bảo vệ dữ liệu cá nhân hiện hành.