Hành trình phát triển Quizzman Fanqie Engine: Từ một công cụ tra cứu đến nền tảng tính toán âm vận học

Hành trình phát triển Quizzman Fanqie Engine: Từ một công cụ tra cứu đến nền tảng tính toán âm vận học

Chuỗi Quizzman Fanqie Engine — Phần 11

Quizzman Fanqie Engine không được xây dựng trong một lần. Phiên bản hiện nay là kết quả của nhiều năm nghiên cứu về phản thiết, âm Hán Việt và tiếng Hán Trung Cổ. Trong quá trình phát triển, kiến trúc của engine đã thay đổi nhiều lần. Mỗi phiên bản đều giải quyết một nhóm vấn đề mới, loại bỏ những giới hạn của phiên bản trước và đưa hệ thống tiến gần hơn tới mục tiêu ban đầu: mô hình hóa quá trình hình thành âm Hán Việt bằng thuật toán thay vì lưu trữ kết quả dưới dạng từ điển.

Mục tiêu ban đầu

Ý tưởng đầu tiên của Quizzman Fanqie Engine khá đơn giản.

Có thể suy ra cách đọc Hán Việt chỉ từ phản thiết hay không?

Thoạt nhìn, đây giống một bài toán tra cứu.

Chỉ cần:

  • lấy thanh mẫu;
  • lấy vận;
  • ghép lại.

Tuy nhiên, sau khi bắt đầu triển khai, một vấn đề lớn nhanh chóng xuất hiện.

Một phản thiết không chỉ chứa:

  • thanh mẫu;
  • vận.

Nó còn kéo theo:

  • nhiếp;
  • đẳng;
  • khai khẩu;
  • hợp khẩu;
  • Bình thanh, Thưởng thanh, Khứ thanh, Nhập thanh;
  • lịch sử biến đổi của tiếng Việt;
  • nhiều lớp Hán Việt khác nhau.

Điều này khiến bài toán lớn hơn rất nhiều so với tưởng tượng ban đầu.

Phiên bản đầu tiên

Các phiên bản đầu tiên tập trung vào mục tiêu cơ bản nhất.

  • Phân tích phản thiết.
  • Tách thanh mẫu.
  • Tách vận.
  • Sinh âm Hán Việt.

Đây là giai đoạn chứng minh ý tưởng.

Engine đã có thể xử lý nhiều phản thiết cơ bản.

Tuy nhiên, số lượng ngoại lệ vẫn còn khá lớn.

Các quy luật chưa được mô hình hóa đầy đủ.

Nhiều trường hợp vẫn phải dựa vào dữ liệu hỗ trợ.

Khi dữ liệu ngày càng nhiều

Sau một thời gian phát triển, số lượng phản thiết và dữ liệu Hán Việt tăng rất nhanh.

Lúc này xuất hiện một câu hỏi quan trọng.

Có nên tiếp tục thêm dữ liệu?

Hay nên quay lại hoàn thiện quy luật?

Đây là một quyết định ảnh hưởng toàn bộ kiến trúc sau này.

Nếu tiếp tục thêm dữ liệu, engine sẽ dần trở thành một từ điển lớn.

Nếu quay lại xây dựng quy luật, tốc độ phát triển sẽ chậm hơn nhưng khả năng suy luận sẽ mạnh hơn rất nhiều.

Quizzman lựa chọn hướng thứ hai.

Chuyển từ Data-driven sang Rule-driven

Đây là bước ngoặt lớn nhất của toàn bộ dự án.

Thay vì ghi nhớ:

字 A

↓

âm A
字 B

↓

âm B

Engine bắt đầu lưu:

Quy luật A
Quy luật B
Quy luật C

Mỗi quy luật có thể áp dụng cho hàng trăm hoặc hàng nghìn chữ Hán.

Đây cũng là thời điểm khái niệm Pure Projection bắt đầu hình thành.

Tách Middle Chinese khỏi Hán Việt

Một thay đổi quan trọng khác là việc đưa Middle Chinese thành một tầng độc lập.

Ban đầu, nhiều bước phục dựng và suy diễn Hán Việt được thực hiện cùng lúc.

Điều này khiến:

  • khó kiểm thử;
  • khó mở rộng;
  • khó giải thích.

Sau khi tách Middle Chinese thành một tầng riêng, kiến trúc trở nên rõ ràng hơn.

Phản thiết

↓

Middle Chinese

↓

Hán Việt

Sự thay đổi này mang lại rất nhiều lợi ích.

Ví dụ:

  • dễ kiểm thử từng bước;
  • dễ thay đổi mô hình phục dựng;
  • dễ bổ sung Pinyin;
  • dễ nghiên cứu các hệ đọc khác.

Đây là nền tảng của toàn bộ kiến trúc hiện nay.

Tách quy luật và từ điển

Một trong những thay đổi quan trọng nhất của các phiên bản sau là tách hoàn toàn:

Quy luật âm vị

khỏi

Lớp từ vựng

Hai tầng này có mục tiêu hoàn toàn khác nhau.

Quy luật âm vị trả lời:

Âm tiết sẽ phát triển như thế nào?

Trong khi lớp từ vựng trả lời:

Người Việt thực tế đang sử dụng cách đọc nào?

Nếu trộn hai tầng này lại, engine sẽ rất khó bảo trì.

Chính vì vậy, Quizzman Fanqie Engine đưa chúng thành hai bước độc lập.

Pure Projection

↓

Lexical Normalization

Đây là một trong những thay đổi quan trọng nhất của toàn bộ kiến trúc.

Hệ thống thanh điệu được viết lại

Một trong những thành phần được thay đổi nhiều nhất là thuật toán thanh điệu.

Các phiên bản đầu xử lý trực tiếp:

  • ngang;
  • huyền;
  • hỏi;
  • ngã;
  • sắc;
  • nặng.

Cách tiếp cận này hoạt động khá tốt nhưng dần bộc lộ nhiều hạn chế.

Sau quá trình nghiên cứu về âm Hán Việt và các công trình của Nguyễn Tài Cẩn, engine chuyển sang mô hình Eight Tone Slot.

Thay vì làm việc trực tiếp với sáu thanh tiếng Việt, hệ thống trước tiên xử lý:

  • Âm Bình
  • Dương Bình
  • Âm Thưởng
  • Dương Thưởng
  • Âm Khứ
  • Dương Khứ
  • Âm Nhập
  • Dương Nhập

Sau đó mới ánh xạ thành sáu thanh bề mặt.

Điều này giúp engine giữ nguyên toàn bộ thông tin lịch sử trong quá trình tính toán.

Candidate Ranking

Một vấn đề khác xuất hiện khi dữ liệu phản thiết ngày càng đầy đủ.

Nhiều chữ Hán có:

  • nhiều phản thiết;
  • nhiều nguồn;
  • nhiều cách phục dựng.

Nếu chọn ngẫu nhiên một phản thiết, kết quả sẽ không ổn định.

Để giải quyết điều này, Quizzman Fanqie Engine bổ sung Candidate Ranking.

Mỗi ứng viên được đánh giá theo nhiều tiêu chí.

Ví dụ:

  • chất lượng nguồn;
  • mức độ phù hợp với quy luật;
  • lớp Hán Việt chuẩn;
  • mức độ phổ biến;
  • độ tin cậy tổng thể.

Nhờ đó, engine có thể đưa ra một kết quả ổn định hơn mà không làm mất thông tin về các phương án còn lại.

Confidence Score

Khi engine ngày càng phức tạp, một câu hỏi mới xuất hiện.

Làm sao người dùng biết kết quả nào đáng tin cậy hơn?

Thay vì chỉ trả về một đáp án, Quizzman Fanqie Engine bổ sung hệ thống đánh giá nhiều tầng.

Ví dụ:

  • Source Confidence
  • Phonological Confidence
  • Lexical Confidence
  • Final Confidence

Mỗi chỉ số phản ánh một khía cạnh khác nhau của quá trình suy luận.

Đây là bước quan trọng giúp engine trở thành một hệ thống có thể kiểm chứng.

Hệ thống kiểm thử cũng thay đổi

Kiến trúc càng lớn thì rủi ro hồi quy càng cao.

Một thay đổi nhỏ trong quy luật có thể ảnh hưởng đến hàng nghìn chữ Hán.

Do đó, các phiên bản sau bổ sung thêm:

  • Golden Fixture;
  • Batch Audit;
  • Regression Test;
  • Stress Test;
  • Tone Audit;
  • Candidate Audit.

Mục tiêu không chỉ là phát hiện lỗi mới.

Quan trọng hơn là đảm bảo một quy luật đã đúng sẽ không bị phá vỡ trong các phiên bản sau.

Từ một engine Hán Việt đến một nền tảng

Ban đầu, Quizzman Fanqie Engine chỉ hướng tới mục tiêu suy diễn Hán Việt.

Tuy nhiên, sau khi Middle Chinese trở thành tầng trung gian độc lập, hệ thống bắt đầu có khả năng mở rộng.

Cùng một hồ sơ Middle Chinese có thể được sử dụng để:

  • sinh Hán Việt;
  • sinh Pinyin;
  • phục vụ nghiên cứu phản thiết;
  • hỗ trợ xử lý ngôn ngữ tự nhiên;
  • cung cấp dữ liệu cho các công cụ từ điển.

Điều này biến Quizzman Fanqie Engine từ một công cụ đơn lẻ thành nền tảng chung cho nhiều ứng dụng khác nhau.

V6: Một bước chuyển từ "tra cứu" sang "suy luận"

Phiên bản V6 đánh dấu sự trưởng thành của toàn bộ kiến trúc.

Đây không chỉ là bản cập nhật bổ sung thêm quy luật.

Quan trọng hơn, V6 hoàn thiện triết lý thiết kế của engine:

  • Middle Chinese là tầng trung gian.
  • Quy luật âm vị độc lập với lớp từ vựng.
  • Eight Tone Slot được mô hình hóa đầy đủ.
  • Candidate Ranking lựa chọn kết quả tối ưu.
  • Confidence Score giúp kiểm chứng từng quyết định.
  • Pure Projection và Hybrid được tách biệt rõ ràng.

Nhờ đó, Quizzman Fanqie Engine không còn là một chương trình ghép âm Hán Việt, mà trở thành một Historical Phonology Inference Engine đúng nghĩa.

Hành trình vẫn tiếp tục

Mặc dù đã đạt được một kiến trúc ổn định, Quizzman Fanqie Engine vẫn chưa phải điểm kết thúc.

Âm vận học là một lĩnh vực còn rất nhiều không gian để mở rộng.

Trong tương lai, cùng một nền tảng Middle Chinese này có thể tiếp tục hỗ trợ:

  • hệ thống đọc Hán Nhật (Kan-on, Go-on);
  • Hán Hàn;
  • các phương ngữ tiếng Hán;
  • phục dựng nhiều tầng lịch sử khác nhau;
  • các ứng dụng NLP và AI xử lý văn bản Hán cổ.

Đó cũng là mục tiêu lâu dài của Quizzman: không chỉ xây dựng một công cụ tra cứu Hán Việt, mà xây dựng một nền tảng tính toán dành cho nghiên cứu lịch sử ngôn ngữ Đông Á.

Mục lục chuỗi Quizzman Fanqie Engine

  1. Phần 1: Quizzman Fanqie Engine là gì?
  2. Phần 2: Lịch sử phản thiết
  3. Phần 3: Âm Hán Việt hình thành
  4. Phần 4: Tái dựng Middle Chinese
  5. Phần 5: Thuật toán suy diễn Hán Việt
  6. Phần 6: Eight Tone Slot
  7. Phần 7: Hệ thống vận mẫu · 16 nhiếp
  8. Phần 8: Lexical Normalization
  9. Phần 9: Độ chính xác · Benchmark
  10. Phần 10: Không phải từ điển Hán Việt
  11. Phần 11: Hành trình phát triển Quizzman Fanqie Engine: Từ một công cụ tra cứu đến nền tảng tính toán âm vận học (bài này)
  12. Phần 12: Từ Middle Chinese đến Pinyin và Hán Việt: Vì sao Quizzman Fanqie Engine có thể sinh nhiều hệ thống đọc từ cùng một dữ liệu?

Chuyên mục: Phiên thiết