Vì sao phải bắt đầu từ ngôn ngữ học, không phải từ mô hình

Phần lớn đội kỹ thuật khi xây dựng hệ thống giọng nói bắt đầu ngay từ câu hỏi “dùng kiến trúc mạng nơ-ron nào”. BEEDONI bắt đầu từ một câu hỏi khác, nằm ở lớp sâu hơn: dưới góc nhìn hình thức, tiếng Việt được biểu diễn tính toán như thế nào, chính xác đến mức một thuật toán có thể xử lý mà không đánh mất thông tin ngữ âm quan trọng. Đây không phải lựa chọn học thuật xa xỉ. Mọi giới hạn ở tầng biểu diễn này sẽ trở thành trần năng lực (ceiling) không thể vượt qua dù mô hình phía sau có mạnh tới đâu, dữ liệu có nhiều tới đâu.

Ví dụ cụ thể: nếu một hệ thống biểu diễn thanh điệu tiếng Việt chỉ bằng 6 nhãn rời rạc (ngang, huyền, sắc, hỏi, ngã, nặng) mà không giữ thông tin về hình dạng đường nét cao độ thực tế trong từng ngữ cảnh, thì không có lượng dữ liệu huấn luyện nào có thể giúp mô hình TTS phát âm đúng thanh ngã có điểm gãy đặc trưng. Bài viết này trình bày ba trụ cột ngôn ngữ học tính toán mà BEEDONI xây dựng làm nền tảng cho mọi mô hình giọng nói sau này: hình thức hóa hệ thống âm vị và thanh điệu, bản đồ hóa phương ngữ ba miền, và kiến trúc corpus gốc.

Lớp 1. Hình thức hóa hệ thống âm vị và thanh điệu

Tiếng Việt là ngôn ngữ đơn lập (isolating): mỗi âm tiết thường trùng với một hình vị, không biến đổi hình thái theo thì hay số nhiều như tiếng Anh. Về mặt cấu trúc âm tiết, một âm tiết tiếng Việt chuẩn có dạng (phụ âm đầu) + (âm đệm) + nguyên âm chính + (âm cuối), mang một trong sáu thanh điệu áp lên toàn bộ âm tiết. Bộ âm vị (phoneme inventory) được BEEDONI hình thức hóa theo chuẩn IPA (International Phonetic Alphabet) mở rộng, với khoảng 22 phụ âm đầu, một hệ thống nguyên âm đơn và nguyên âm đôi phức tạp, cùng các âm cuối tắc vô thanh không nhả hơi (p, t, k, kˀ) vốn không tồn tại ở tiếng Anh.

Vì sao thanh điệu không thể là nhãn rời rạc

Cách tiếp cận ngây thơ gán mỗi âm tiết một nhãn thanh điệu trong tập {ngang, huyền, sắc, hỏi, ngã, nặng}, xử lý như bài toán phân loại văn bản thông thường. Cách này đủ cho nhận dạng chữ viết nhưng không đủ cho tổng hợp giọng nói tự nhiên, vì mỗi thanh điệu thực chất là một đường nét F0 (tần số cơ bản) liên tục theo thời gian mang hình dạng đặc trưng: thanh huyền có F0 giảm dần đều, thanh sắc có F0 tăng dốc, còn thanh ngã mang một điểm gãy (độ gián đoạn) ở giữa âm tiết kèm hiện tượng thanh quản hóa (creaky voice, dây thanh rung không đều) ở đoạn cuối.

Thanh điệuHình dạng F0 đặc trưngRủi ro nếu hình thức hóa sai
Ngang (33)Bằng phẳng, không dốcDễ nhầm với thanh huyền nếu thu âm có nhiễu
Huyền (21)Giảm dần đều, không gãyMô hình phân loại rời rạc vẫn xử lý tạm ổn
Sắc (35)Tăng dốc về cuốiDễ lẫn với ngữ điệu câu hỏi nếu không tách biệt
Hỏi (313)Giảm rồi tăng nhẹ, đường cong lõmNhầm với thanh ngã ở phương ngữ Nam, Trung
Ngã (35, có điểm gãy)Gãy giữa âm, thanh quản hóa đoạn sauNhãn rời rạc bỏ sót điểm gãy, TTS phát âm sai
Nặng (21, rút ngắn)Giảm nhanh, thanh quản hóa, âm tiết ngắnNhầm với huyền nếu không mô hình hóa độ dài

Lớp 2. Bản đồ hóa phương ngữ ba miền: không phải một tiếng Việt, mà ba hệ thống âm vị học

Sai lầm phổ biến nhất khi xây dựng hệ thống giọng nói cho một ngôn ngữ đa phương ngữ là giả định có một “tiếng Việt chuẩn” duy nhất và coi các biến thể vùng miền là nhiễu cần loại bỏ. Dưới góc nhìn ngôn ngữ học tính toán, ba miền Bắc, Trung, Nam không chỉ khác nhau về phát âm bề mặt, mà khác nhau ở cấu trúc hệ thống âm vị học và thanh điệu học cấp độ sâu hơn.

Khác biệt hệ thống thanh điệu

Phương ngữ Bắc Bộ (lấy Hà Nội làm đại diện) phân biệt đầy đủ sáu thanh điệu. Phương ngữ Nam Bộ và phần lớn Trung Bộ có hiện tượng nhập thanh hỏi và thanh ngã làm một, khiến người nói miền Nam phát âm “mả” (ngôi mộ, thanh hỏi) và “mã” (con ngựa, thanh ngã) gần như giống hệt nhau về mặt âm học, dù người viết vẫn phân biệt đúng chính tả. Một mô hình ASR huấn luyện thuần trên dữ liệu giọng Bắc sẽ liên tục áp sai quy tắc phân biệt hỏi/ngã khi nghe giọng Nam, trong khi một mô hình TTS phát giọng Nam mà vẫn tạo ra hai đường F0 khác biệt cho hỏi/ngã sẽ nghe lệch tông với cảm nhận bản địa.

Khác biệt hệ thống phụ âm đầu

Phụ âm đầu cũng phân kỳ theo vùng miền: cặp “tr” và “ch” tách biệt rõ ở miền Bắc nhưng nhập làm một ở phần lớn miền Nam; tương tự với cặp “s” và “x”, cặp “d”, “gi” và “r”. Ở chiều ngược lại, nhiều phương ngữ miền Nam và Nam Trung Bộ vẫn giữ phân biệt phụ âm cuối “n” và “ng”, “t” và “c” rõ ràng hơn một số cách nói miền Bắc trong giao tiếp nhanh. Không có phương ngữ nào là “đúng” hơn phương ngữ nào; đây là ba hệ thống ngữ âm cùng tồn tại song song.

Đặc trưng ngữ âmBắc BộTrung BộNam Bộ
Phân biệt thanh hỏi / ngãCó, rõ ràngThường nhập làm mộtNhập làm một
Phân biệt tr / chCóBiến thiên theo tiểu vùngThường nhập làm một
Phân biệt s / xCóBiến thiên theo tiểu vùngThường nhập làm một
Âm vực giọng nói đặc trưngCao hơn, nhịp nhanhTrầm, có ngữ điệu riêng (Huế, Nghệ)Trầm hơn, nhịp chậm, kéo dài nguyên âm

Từ bản đồ này, BEEDONI xây dựng một lớp accent embedding riêng biệt khỏi lớp nội dung ngôn ngữ, tách rời câu hỏi “âm tiết này mang nghĩa gì” khỏi câu hỏi “âm tiết này được phát âm theo hệ thống ngữ âm vùng miền nào”, nguyên lý kiến trúc được triển khai chi tiết trong bài viết về mô hình giọng nói ba miền.

Lớp 3. Kiến trúc Corpus gốc: tài sản nền tảng tốn nhiều năm, không thể đi tắt

Một mô hình học sâu chỉ tốt bằng dữ liệu huấn luyện nó. Với ngôn ngữ có thanh điệu và đa phương ngữ như tiếng Việt, việc xây một corpus gốc (nguồn dữ liệu chuẩn, có kiểm định) đúng cách quan trọng hơn bất kỳ lựa chọn kiến trúc mạng nơ-ron nào. BEEDONI thiết kế corpus gốc theo bốn nguyên tắc.

  1. Transcription đa tầng: mỗi câu ghi âm có ba lớp chuẩn hóa song song: chính tả chuẩn, phiên âm IPA ở mức âm vị, và nhãn thanh điệu gắn với đường F0 đo được thực tế, không suy diễn từ chữ viết.
  2. Gán nhãn phương ngữ và nhân khẩu học: mỗi người ghi âm được gắn metadata vùng miền (tới cấp tỉnh khi có thể), độ tuổi, giới tính, để mô hình học được sự biến thiên có hệ thống thay vì học tạp âm cá nhân.
  3. Cân bằng có chủ đích: tỷ lệ mẫu theo vùng miền được thiết kế áp sát phân phối khách hàng thực tế theo ngành, không áp theo tỷ lệ dân số chung, như đã trình bày trong bài viết về streaming ASR tiếng Việt.
  4. Kiểm định chéo (cross-validation) thủ công: một tỷ lệ mẫu được ít nhất hai chuyên gia ngữ âm độc lập xác nhận nhãn thanh điệu và phiên âm, trước khi đưa vào tập huấn luyện chính thức.
json
{
  "utterance_id": "vn-corpus-003281",
  "text": "Cho em hỏi lịch khám sáng mai còn trống không ạ",
  "region": "nam-bo",
  "province": "can-tho",
  "age_group": "25-34",
  "tone_f0_verified": true,
  "phoneme_ipa": "ca̤ʔ˧˧ ɛm˧˧ hɔj˧˩˧ lic̃ˀ˨˩ kʰaːm˧˧ ...",
  "verified_by": ["linguist_01", "linguist_04"]
}
“Một mô hình học sâu chỉ thông minh bằng chính ngôn ngữ mà nó được dạy để nhìn thấy. Nếu bản thân phép hình thức hóa ngôn ngữ đã bỏ sót một đặc trưng, không thuật toán nào, dù hiện đại tới đâu, có thể tự phát minh lại đặc trưng đó từ dữ liệu thô.”

Từ nghiên cứu nền tảng tới sản phẩm vận hành

Ba trụ cột trên không phải nghiên cứu hàn lâm tách biệt khỏi sản phẩm. Chúng là lớp móng mà mọi thành phần của Tổng đài Voice AI BEEDONI đứng trên: bộ mã hóa âm vị dùng trong ASR, bộ dự đoán cao độ trong TTS, và accent embedding phân biệt giọng vùng miền đều kế thừa trực tiếp từ hệ thống hình thức hóa và corpus gốc được trình bày ở đây. Khi một doanh nghiệp hỏi “vì sao AI của các anh hiểu giọng miền Tây tốt hơn đối thủ”, câu trả lời không nằm ở một mẹo kỹ thuật đơn lẻ, mà nằm ở việc nền móng ngôn ngữ học được xây đúng ngay từ đầu.

Phần tiếp theo của chuỗi nghiên cứu này đi sâu vào cách BEEDONI huấn luyện một mô hình giọng nói AI duy nhất phục vụ đồng thời cả ba miền, nén độ trễ xử lý hội thoại xuống dưới 0,8 giây, và xây dựng cơ chế ngắt lời thông minh cho tổng đài thoại.