Các heuristic để cải thiện độ chính xác

Một phần của tài liệu đồ án tốt nghiệp xây dựng chương trình bắt lỗi chính tả tiếng việt (Trang 108 - 112)

3 Cơ sở tin học

4.4.9 Các heuristic để cải thiện độ chính xác

Phân biệt từ gốc và từ phát sinh

Với lưới từ hiện có, ta coi từ gốc và những từ phát sinh là như nhau. Tuy nhiên, trên thực tế ta thường ưu tiên chọn từ gốc hơn là các từ phát sinh, do số lỗi trong câu chỉ chiếm một tỉ lệ nhỏ, phần còn lại là các từ đúng. Việc đánh đồng hai loại từ này làm cho chương trình dễ có khuynh hướng sử dụng từ phát sinh không giới hạn chừng nào những từ này còn tạo ra một câu hợp lý. Tiếng Việt có số lượng từ hạn chế hơn so với tiếng Anh (do đặc điểm ngơn ngữ đơn lập, hình thái từ nằm ngồi từ, nên số lượng từ giảm xuống), những câu phát sinh nghe có vẻ hợp lý cũng nhiều hơn. Nếu không khống chế số lượng từ phát sinh được sử dụng thì khả năng chọn nhầm câu đúng sẽ cao hơn.

Vấn đề đầu tiên có thể được giải quyết bằng cách tăng giá trị các cạnh nối đến từ phát sinh một tỉ lệ nhất định để phản ánh sự khác biệt. Ví dụ, trong hình 4.3 ở trang 98, ta có thể biến đổi giá trị các cạnh nối đến từ “xinh” bằng cách tăng 0,2% giá trị của các cạnh nối đến từ “xinh” đó. Vậy, bất cứ cách tách từ nào chứa từ xinh cũng sẽ bị tăng một khoảng giá trị nhất định, so với

KHOA CNTT –

ĐH KHTN

CHƯƠNG 4. MƠ HÌNH 4.4. BẮT LỖI REAL-WORD

các cách tách từ chứa từ “sinh” vẫn giữa nguyên giá trị gốc. Nhờ vậy, từ gốc sẽ được ưu tiên hơn các từ phát sinh.

Cách này nói chung hạn chế việc sử dụng từ phát sinh, tăng khả năng sử dụng từ gốc. Việc điều chỉnh tỉ lệ tăng cho từ phát sinh cần phải được xem xét cẩn thận. Việc tăng quá nhiều sẽ làm cho chương trình bám lấy từ gốc, giảm khả năng phát hiện lỗi. Nhưng nếu khơng tăng thì chương trình có khả năng tìm nhầm câu đúng, dẫn đến sai lầm dây chuyền trong các bước tiếp theo.

Trên nguyên tắc, độ giảm của các cạnh nên phụ thuộc vào khả năng xuất hiện của các từ phát sinh. Những từ phát sinh có khả năng nhất sẽ ít bị giảm nhất, những từ hiếm gặp nhất sẽ bị giảm nhiều nhất. Việc này sẽ giúp hạn chế lỗi chọn sai từ của mơ hình ngơn ngữ. Tuy nhiên các thơng số về khả năng xuất hiện của các từ phát sinh địi hỏi phải có ngữ liệu sai trong thực tế và ngữ liệu đúng tương ứng để rút trích thơng tin này. Đây là một hướng phát triển trong tương lai.

Chuẩn hố độ dài câu

Do mơ hình ngơn ngữ được tính tốn dựa trên tổng giá trị của các cạnh, nên các câu có ít từ hơn (ít cạnh hơn) thường có xu hướng được chọn vì tổng giá trị sẽ nhỏ hơn. Do đó cần có một cách để chuẩn hoá độ dài câu, loại bỏ sự ảnh hưởng về số lượng từ trong câu lên giá trị của câu.

Việc chuẩn hóa có thể được thực hiện bằng cách lấy giá trị của câu chia cho số lượng từ trong câu. Nếu ta sử dụng Viterbi hay WFST thì chỉ cần chuẩn hoá giá trị mỗi lần duyệt nút kế. Khi áp dụng đồ thị để giải quyết, ta khơng thể làm như vậy vì giá trị các cạnh được ngầm định là khơng thay đổi, và cơng thức tính độ dài đường đi là tổng các cạnh, cũng không thay đổi. Tuy nhiên ta có thể khắc phục bằng cách thay đổi giá trị của các cạnh chưa

KHOA CNTT –

ĐH KHTN

CHƯƠNG 4. MƠ HÌNH 4.4. BẮT LỖI REAL-WORD

được xét. Việc thay đổi giá trị các cạnh chưa được xét sẽ khơng ảnh hưởng đến tính đúng đắn của thuật tốn, vì thuật tốn tính tốn đường đi ngắn nhất dựa vào các cạnh đã xét. Nếu ta không thay đổi giá trị các cạnh đã xét, thuật tốn vẫn khơng đổi.

Giả sử có một đường đi qua n cạnh e1, e2, . . . , en, giá trị đường đi qua các cạnh đó là Pni=1ei. Nếu được chuẩn hóa, giá trị mới sẽ là n1 Pni=1ei. Do

1 n n X i=1 ei = n X i=1 1 nei

ta thấy mỗi cạnh cần phải “co” lại cịn một khoảng n1 (hay nói cách khác, mất đi n−n1) giá trị thực của chính nó. Các cạnh cứ co lại từ từ mỗi khi thêm vào một cạnh mới. Tuy nhiên, do các cạnh đã xét sẽ không thể thay đổi, nên ta sẽ gom tất cả các khoảng giá trị mất đi này trừ vào cạnh sẽ được xét.

Giả sử đã có n cạnh, ta cần thêm cạnh en+1 vào. Độ dài ncạnh trước đó làN (đã chuẩn hố). Ta cần tính N0 là độ dài n+ 1cạnh đã chuẩn hoá

∆ = N0 −N = N n+en+1 n+ 1 −N = en+1 −N n+ 1 N0 = N + ∆

Ta có thể coi cạnh mới, cần được thêm vào là cạnh có giá trị là ∆ = en+1−N

n+1 thay vìen+1 như ban đầu. Tuy nhiên, do∆có thể âm, cần dùng những thuật tốn có thể tìm đường đi trên đồ thị có trọng số âm như Bellman-Ford thay vì dùng PFS. Có thể hình dung đồ thị mới là một loại đồ thị động, các cạnh phía sau càng ngày càng bị thu ngắn lại.

KHOA CNTT –

ĐH KHTN

CHƯƠNG 4. MƠ HÌNH 4.4. BẮT LỖI REAL-WORD

Một vấn đề cần quan tâm là, liệu thuật tốn Bellman-Ford có cịn đúng với một đồ thị động như vậy hay khơng? Giả sử ta tính được giá trị cạnh khi dựa trên đường đi ngắn nhất phía trước nó là A1. Sau đó, vì một lí do nào đó, đường đi ngắn nhất tới điểm đó bị đổi sang A2, dẫn đến giá trị cạnh đã tính khơng cịn hợp lệ. Với một đồ thị tổng qt, thuật tốn có thể khơng cịn chính xác. Tuy nhiên với đồ thị DAG của lưới từ, điều này vẫn cịn đúng. Trong DAG, ta có thể xác định được tập các nút cha của một nút nào đó (những nút nối đến nút đó), tách rời hồn tồn với phần cịn lại của đồ thị. Do đó ta có thể tìm đường đi lớn nhất chỉ trong tập con đó mà thơi. Sau khi tìm được đường đi ngắn nhất trong tập con này, coi như đường đi đã ổn định và không thay đổi nữa, vì vậy việc tính giá trị cạnh kế tiếp sẽ khơng bị thay đổi sau mỗi lần tính tốn. Vì lí do này nên thuật tốn sẽ phải duyệt thứ tự các điểm theo thứ tự tôpô chứ không thể duyệt theo một thứ tự ngẫu nhiên.

Từ phát sinh phụ thuộc ngữ cảnh từ gốc

Mơ hình hiện tại phát sinh từ cho mọi từ trong câu. Thực tế khi đọc một câu, ta thường coi như mọi từ đều đúng. Ta chỉ “phát sinh từ” ở những chỗ có vấn đề trong câu (thường là do từ không phù hợp với ý nghĩa của câu hoặc của đoạn văn). Ta có thể áp dụng ý tưởng này để biến đổi lưới từ nhằm hạn chế những lỗi tìm nhầm câu đúng.

Cách tiếp cận ở đây là tăng giá trị cạnh nối đến những từ phát sinh từ những từ gốc “có vấn đề”. Từ gốc càng có vấn đề thì tỉ lệ tăng càng thấp. Từ gốc càng ít có vấn đề thì tỉ lệ tăng càng cao nhằm giảm khả năng sử dụng từ phát sinh của từ này. Độ đo vấn đề là ngram của liên quan đến các tiếng của từ gốc trong câu. Với bigram, độ đo này là trung bình xác suất của hai bigram nối với tiếng. Với trigram, độ đo này là trung bình xác suất của ba trigram nối với tiếng đó. Độ đo vấn đề của từ là tổng độ đo của các tiếng

KHOA CNTT –

ĐH KHTN

Một phần của tài liệu đồ án tốt nghiệp xây dựng chương trình bắt lỗi chính tả tiếng việt (Trang 108 - 112)

Tải bản đầy đủ (PDF)

(172 trang)