MỤC TIÊU
M ỤC TIÊU TỔNG QUÁT
Hậu xử lý văn bản OCR là bước quan trọng trong quy trình OCR, giúp phát hiện, nhận dạng và sửa chữa các lỗi trong văn bản đã được số hóa.
Hình 1.1 Hậu xử lý văn bản OCR là bước cuối cùng của quá trình OCR
Nghiên cứu này giới thiệu một mô hình hậu xử lý văn bản OCR mới, kết hợp giữa các mô hình ngôn ngữ và mô hình lỗi OCR, nhằm phát hiện và sửa lỗi hiệu quả Mô hình sử dụng phương pháp thống kê và thuật toán tối ưu để xác định lỗi OCR và đề xuất từ ngữ sửa chữa phù hợp nhất Đánh giá mô hình sẽ được thực hiện thông qua so sánh với các mô hình khác dựa trên bộ dữ liệu training tiêu chuẩn, phân tích sự khác biệt và ưu điểm của mô hình, cũng như làm rõ các hạn chế (nếu có) Mô hình sẽ được thử nghiệm và huấn luyện trên tập dữ liệu training tiêu chuẩn và được đánh giá trên tập dữ liệu test.
Mô hình hậu xử lý văn bản OCR đề xuất mang lại giải pháp hiệu quả cho việc phát hiện, nhận dạng và sửa lỗi văn bản OCR, đặc biệt là cho chữ viết tay tiếng Việt Các kết quả đạt được từ mô hình này có thể được mở rộng và triển khai thực tế như một công cụ phần mềm hữu ích cho việc xử lý văn bản tiếng Việt.
M ỤC TIÊU CỤ THỂ
Để xây dựng các tập dữ liệu training và test tiêu chuẩn, cần sắp xếp dữ liệu training theo mức từ và mức ký tự giữa các văn bản OCR có chứa lỗi và các văn bản gốc đúng (ground truth - GT) tương ứng.
Để cải thiện độ chính xác của nhận diện ký tự quang học (OCR), cần xây dựng các bảng sửa lỗi ký tự từ các tập dữ liệu training Các bảng này được tạo ra bằng cách xác định các mẫu ký tự đúng từ văn bản gốc để sửa các ký tự sai trong các văn bản OCR bị lỗi Đồng thời, việc thiết kế và viết chương trình để tạo ra các bảng sửa lỗi ký tự cũng rất quan trọng.
Mô hình hậu xử lý văn bản OCR được đề xuất bao gồm các giai đoạn chính: tách từ (tokenization), phát hiện lỗi OCR (error detection), tạo từ sửa lỗi (candidate generation) và tính điểm, xếp hạng từ sửa lỗi (candidate scoring and ranking) Đồng thời, cần thiết kế và lập trình cho từng giai đoạn xử lý trong mô hình này nhằm cải thiện độ chính xác của văn bản sau khi nhận diện.
Bài viết đề xuất các mô hình ngôn ngữ n-gram để phát hiện từ lỗi trong quá trình nhận dạng ký tự quang học (OCR) Đồng thời, nó giới thiệu thuật toán tối ưu nhằm cải thiện quá trình tìm kiếm và sửa lỗi từ, nâng cao chất lượng các từ được sửa và xếp hạng chúng một cách hiệu quả Cuối cùng, bài viết cũng bao gồm thiết kế và lập trình cho các thuật toán và mô hình này.
Mô hình đề xuất được so sánh và đánh giá kết quả phát hiện cũng như sửa lỗi với các mô hình khác thông qua các thông số đánh giá khác nhau Phân tích này làm nổi bật tính khác biệt và ưu điểm của mô hình đề xuất, đồng thời chỉ ra những hạn chế (nếu có) so với các mô hình hiện có.
TỔNG QUAN TÌNH HÌNH NGHIÊN CỨU
Gần đây, các mô hình và giải pháp cho bài toán sửa lỗi văn bản OCR được phân loại thành hai nhóm chính: nhóm giải pháp dựa trên kho ngữ liệu và nhóm giải pháp hybrid.
Nhóm giải pháp đầu tiên dựa trên thông tin n-gram từ các kho ngữ liệu như Google Web để đề xuất và xếp hạng từ sửa lỗi Mặc dù phương pháp này dễ thực hiện, nó có những hạn chế trong khả năng sửa lỗi Đầu tiên, bộ từ điển n-gram không bao gồm tất cả từ trong ngôn ngữ, như danh từ riêng hay thuật ngữ kỹ thuật Thứ hai, các giải pháp dựa trên corpus chỉ sử dụng thông tin n-gram mà không xem xét đặc tính lỗi OCR, dẫn đến khả năng sai sót trong việc lựa chọn từ sửa lỗi.
Nhóm giải pháp hybrid kết hợp các đặc điểm ngôn ngữ và lỗi OCR, trong đó một số giải pháp sử dụng ma trận nhầm lẫn và đặc điểm n-gram để xếp hạng từ sửa lỗi Các mô hình học máy như Support Vector Regressor, Multiple Layer Perceptron, Random Forest và AdaBoost được áp dụng để lựa chọn từ sửa lỗi hiệu quả Giải pháp gần đây sử dụng thuật toán tiến hóa Self-Organizing Migrating Algorithm (SOMA) nhằm tạo và xếp hạng từ sửa lỗi Ngoài ra, các công nghệ dịch máy thống kê (SMT) và dịch máy nơron (NMT) cũng được sử dụng để chuyển đổi văn bản OCR bị lỗi thành văn bản chính xác Tuy nhiên, các giải pháp dựa trên dịch máy ở mức ký tự gặp hạn chế về từ vựng đúng, trong khi giải pháp ở mức từ thường cho kết quả tốt hơn Cuối cùng, các giải pháp hybrid thường phức tạp và đòi hỏi nhiều công sức trong việc ứng dụng và triển khai.
Hiện nay, nghiên cứu về hậu xử lý văn bản OCR tiếng Việt còn hạn chế Nghiên cứu của chúng tôi áp dụng các mô hình ngôn ngữ n-gram dựa trên kho ngữ liệu VietTreeBank để phát hiện và sửa lỗi OCR Trong khi đó, nhóm tác giả Vũ Hoàng et al sử dụng hai mô hình khác nhau để xử lý lỗi chính tả và ngữ cảnh Mô hình đầu tiên dựa vào tính tương tự và tần suất từ, còn mô hình thứ hai sử dụng độ hỗn loạn để sửa lỗi theo ngữ cảnh Mặc dù mô hình thứ hai sử dụng thuật toán Depth First Traversal để kiểm tra các kết hợp từ sửa lỗi, nhưng chi phí tính toán cao khiến tốc độ xử lý chậm Hơn nữa, việc đánh giá trên tập dữ liệu riêng của các tác giả gây khó khăn cho việc so sánh với các giải pháp khác.
PHƯƠNG PHÁP NGHIÊN CỨU, KỸ THUẬT SỬ DỤNG
C ÁCH TIẾP CẬN
Chúng tôi đã xây dựng các bộ dữ liệu training và test tiêu chuẩn cùng với từ điển n-gram nhằm hỗ trợ nhận dạng và sửa lỗi văn bản OCR cho ngôn ngữ tương ứng Nghiên cứu của chúng tôi tập trung vào việc phát triển các mô hình tự động phát hiện và sửa lỗi văn bản OCR, kết hợp giữa phương pháp thống kê và thuật toán tối ưu để nâng cao hiệu quả sửa lỗi Các mô hình này được thiết kế để mở rộng và có thể ứng dụng thực tế, đặc biệt cho văn bản tiếng Việt Kết quả nghiên cứu sẽ được công bố qua bài báo khoa học trên các tạp chí/hội nghị quốc tế, bao gồm phần Introduction mô tả vấn đề nghiên cứu và tính cần thiết, phần Proposed Model giới thiệu chi tiết các giai đoạn và phương pháp sử dụng, phần Experiments and Results phân tích kết quả thí nghiệm và so sánh với các mô hình khác, cùng với phần Conclusions tóm tắt kết quả và hướng phát triển tiếp theo.
P HƯƠNG PHÁP NGHIÊN CỨU , KỸ THUẬT SỬ DỤNG
Thu thập dữ liệu văn bản OCR từ các nguồn như cơ sở dữ liệu của các cuộc thi nhận dạng và sửa lỗi văn bản OCR, thư viện mở toàn cầu và các nguồn dữ liệu ngôn ngữ chia sẻ khác.
Nghiên cứu giải pháp canh hàng giữa văn bản OCR và văn bản gốc GT bằng cách chèn ký tự đặc biệt nhằm đảm bảo số lượng từ và ký tự giữa hai văn bản này là tương đương.
Nghiên cứu tập trung vào việc trích xuất đặc tính lỗi OCR từ tập dữ liệu huấn luyện bằng cách so sánh các cặp mẫu ký tự khác nhau giữa văn bản OCR và văn bản GT Chiều dài mẫu ký tự được giới hạn tối đa là hai hoặc ba ký tự, dựa trên thống kê cho thấy lỗi OCR chủ yếu liên quan đến các chỉnh sửa mẫu ký tự ngắn.
Nghiên cứu đề xuất mô hình hậu xử lý văn bản OCR tự động với các giai đoạn tách từ, phát hiện lỗi, tạo từ sửa lỗi và sửa lỗi Mô hình sử dụng thuật toán tối ưu để tạo và xếp hạng các từ sửa lỗi Hàm mục tiêu tính điểm từ sửa lỗi dựa trên đặc điểm ngôn ngữ và tính chất lỗi OCR.
Thiết kế và lập trình cho mô hình hậu xử lý văn bản OCR được thực hiện nhằm thử nghiệm và huấn luyện trên tập dữ liệu training tiêu chuẩn, đồng thời đánh giá mô hình trên tập dữ liệu test Các thí nghiệm ban đầu sử dụng tập dữ liệu training/test thu gọn để nhanh chóng đánh giá mô hình, được thực hiện trên máy tính thông thường với Python và các package cần thiết Đối với tập dữ liệu training/test lớn, các thí nghiệm sẽ được tiến hành trên máy GPU cấu hình mạnh để tiết kiệm thời gian chạy chương trình.
T ÍNH MỚI , TÍNH ĐỘC ĐÁO , TÍNH SÁNG TẠO
Đề xuất một mô hình mới nhằm tự động sửa lỗi văn bản OCR, sử dụng các mẫu ký tự sửa lỗi ngẫu nhiên kết hợp với thuật toán tối ưu Mô hình này hứa hẹn mang lại giải pháp hiệu quả cho việc cải thiện độ chính xác của văn bản được quét.
Mô hình sửa lỗi văn bản OCR đề xuất kết hợp đặc tính ngôn ngữ qua từ điển n-gram và đặc tính lỗi OCR từ tập dữ liệu huấn luyện Các mẫu ký tự sửa lỗi được học trực tiếp từ dữ liệu training, giúp đơn giản hóa việc học các đặc tính lỗi OCR so với các phương pháp phức tạp như machine learning hoặc SMT/NMT.
Mô hình đề xuất áp dụng thuật toán tối ưu kết hợp với hàm mục tiêu, dựa trên các đặc tính ngôn ngữ quan trọng và đặc tính lỗi OCR, nhằm xác định và lựa chọn các từ ngữ sửa lỗi có xếp hạng cao nhất.
Kết quả thí nghiệm của mô hình được so sánh với các giải pháp và mô hình mới nhất đã được công bố, sử dụng cùng một tập dữ liệu tiêu chuẩn.
Mô hình đề xuất có thể được áp dụng như một công cụ hiệu quả để phát hiện, nhận dạng và sửa lỗi cho các tài liệu và văn bản OCR trong nhiều lĩnh vực khác nhau Nó cũng có thể được tích hợp vào các hệ thống OCR trong giai đoạn hậu xử lý văn bản, nâng cao độ chính xác và chất lượng của kết quả nhận dạng.
NỘI DUNG ĐÃ THỰC HIỆN
Các nội dung và công việc thực hiện của đề tài được trình bày chi tiết trong Bảng 4.1
Bảng 4.1 Các nội dung thực hiện và kết quả đạt được
TT Các nội dung, công việc thực hiện Kết quả đạt được
1 Xây dựng thuyết minh chi tiết được duyệt
- Thu thập, nghiên cứu tài liệu và sách báo liên quan đến lĩnh vực sửa lỗi văn bản OCR
Phân tích và đánh giá tình hình nghiên cứu trong lĩnh vực sửa lỗi văn bản OCR
- Xây dựng thuyết minh đề cương và cập nhật, chỉnh sửa theo góp ý của các thành viên nhóm đề tài và hội đồng xét duyệt đề tài
Hoàn thành thuyết minh đề cương được duyệt
Xây dựng các tập dữ liệu training và test tiêu chuẩn là bước quan trọng để huấn luyện và đánh giá mô hình Dữ liệu văn bản trong tập training cần được canh hàng theo mức từ và mức ký tự để đảm bảo tính chính xác và hiệu quả trong quá trình học của mô hình.
- Chuẩn bị, tìm kiếm các tập dữ liệu tiêu chuẩn Hoàn thành tìm kiếm và lựa chọn các tập dữ liệu tiêu chuẩn
Xây dựng văn bản OCR từ các tập dữ liệu tiêu chuẩn và thực hiện sắp xếp canh hàng ký tự giữa các văn bản OCR (chứa lỗi OCR) và văn bản GT cho toàn bộ tập dữ liệu training theo phương pháp thống nhất.
- Hoàn thành xây dựng các văn bản OCR và các văn bản
- Hoàn thành sắp xếp canh hàng theo bản GT
3 Nghiên cứu và xây dựng các bảng sửa lỗi ký tự từ tập dữ liệu training, và viết chương trình tạo bảng sửa lỗi ký tự tương ứng
- Nghiên cứu và đề xuất các phép chỉnh sửa ký tự khác nhau (cho các phép toán chỉnh sửa ký tự như xóa, chèn, thay thế)
Hoàn thành đề xuất các phép chỉnh sửa ký tự
- Thiết kế và viết chương trình tạo bảng sửa lỗi ký tự
Hoàn thành chương trình tạo bảng sửa lỗi ký tự
- Chạy, kiểm tra và sửa lỗi chương trình trên tập dữ liệu training rút gọn và tiêu chuẩn
Hoàn thành tạo bảng sửa lỗi ký tự cho tập dữ liệu training tiêu chuẩn
Nghiên cứu và xây dựng mô hình post-processing bao gồm các bước quan trọng như xử lý tách từ, phát hiện lỗi từ, tạo từ sửa lỗi và xếp hạng từ sửa lỗi Ngoài ra, việc viết chương trình để chạy mô hình tương ứng cũng là một phần thiết yếu trong quy trình này.
Thiết kế và phát triển một chương trình nhằm tạo ra các bộ từ điển n-gram, bao gồm unigram, bigram và trigram, dựa trên tập dữ liệu ngữ liệu tiếng Anh "One billion word benchmark".
Hoàn thành xây dựng các bộ từ điển n-gram
- Nghiên cứu và đề xuất mô hình hậu xử lý văn bản OCR (OCR post-processing) và chi tiết hóa việc thực hiện các bước xử lý ở trên
Hoàn thành mô hình hậu xử lý văn bản OCR
- Thiết kế và viết chương trình cho mô hình đề xuất cho toàn bộ các bước xử lý
Hoàn thành chương trình cho mô hình đề xuất
- Chạy, kiểm tra và sửa lỗi chương trình trên tập dữ liệu training rút gọn; đánh giá và điều chỉnh mô hình sao cho đạt kết quả mong muốn
- Hoàn thành kiểm tra và sửa lỗi chương trình
- Hoàn thành điều chỉnh mô hình
Đề xuất 5 mô hình áp dụng thuật toán tối ưu nhằm phát hiện và tạo từ sửa lỗi, đồng thời viết chương trình cho các mô hình này Những mô hình này sẽ giúp cải thiện hiệu suất trong việc phát hiện lỗi và tối ưu hóa quá trình sửa chữa từ ngữ, mang lại kết quả chính xác hơn trong việc xử lý ngôn ngữ Việc ứng dụng thuật toán tối ưu không chỉ nâng cao chất lượng sản phẩm mà còn tiết kiệm thời gian và công sức cho người dùng.
- Nghiên cứu và đề xuất thuật toán tối ưu Hill
Climbing (HC) kết hợp với bước tạo từ sửa lỗi
Hoàn thành mô hình tạo từ sửa lỗi dựa trên thuật toán tối ưu
Thiết kế và phát triển chương trình cho quá trình tạo từ sửa lỗi sử dụng thuật toán tối ưu hóa HC; đồng thời tiến hành thử nghiệm và đánh giá hiệu quả so với các thuật toán khác nhau.
Hoàn thành chương trình với thuật toán tối ưu HC
- Chạy, kiểm tra và sửa lỗi chương trình trên tập dữ liệu training rút gọn; đánh giá và điều chỉnh thuật toán sao cho đạt kết quả mong muốn
- Hoàn thành kiểm tra và sửa lỗi chương trình
- Hoàn thành điều chỉnh thuật toán/mô hình
Mô hình đề xuất đã được so sánh và đánh giá kết quả phát hiện và sửa lỗi với các mô hình khác Phân tích cho thấy mô hình này có những điểm khác biệt nổi bật, với nhiều ưu điểm như độ chính xác cao hơn và khả năng phát hiện lỗi hiệu quả hơn Tuy nhiên, cũng cần lưu ý một số hạn chế của mô hình, như yêu cầu về dữ liệu đầu vào và thời gian xử lý Sự khác biệt này làm nổi bật giá trị của mô hình đề xuất trong bối cảnh ứng dụng thực tế.
Chạy thí nghiệm và thu thập kết quả để phát hiện và sửa lỗi, hoàn thành quá trình thử nghiệm với tập dữ liệu đánh giá Cập nhật và chỉnh sửa các chương trình, đồng thời thực hiện thêm các thí nghiệm nếu cần thiết, sau đó tích hợp và so sánh kết quả với các mô hình khác.
7 Tổng hợp, xử lý số liệu và viết bài báo khoa học Bài báo được chấp nhận công bố trên tạp chí/hội nghị quốc tế
CÁC KẾT QUẢ THU ĐƯỢC
M Ô HÌNH ĐỀ XUẤT
The proposed model (Figure 5.1) consists of four sequential processing stages: tokenization, error detection, candidate generation for error correction, and the final error correction stage.
Mô hình đề xuất bao gồm nhiều giai đoạn xử lý, bắt đầu bằng việc tạo ra các từ điển n-gram từ bộ ngữ liệu “Bộ từ tiếng Anh tiêu chuẩn một tỷ từ” Các từ điển này bao gồm unigram cho từ đơn, bigram cho ngữ cảnh hai từ và trigram cho ngữ cảnh ba từ Để nâng cao độ chính xác, các từ điển n-gram được mở rộng từ tập dữ liệu huấn luyện của cuộc thi ICDAR 2017 Chúng được sử dụng để phát hiện lỗi, tạo từ sửa lỗi, tính điểm và xếp hạng các từ sửa lỗi.
5.1.1 Tách từ Ở giai đoạn này, các từ trong văn bản OCR được tách theo ký tự khoảng trắng (space character) và không hạn chế dấu chấm câu xuất hiện trong từ; ngoại trừ các dấu chấm câu như dấu chấm (.), dấu phẩy (,), dấu chấm phẩy (;), dấu hai chấm (:), dấu ngoặc kép (”), dấu chấm hỏi (?), dấu chấm than (!), xuống dòng (\n) nằm ở cuối từ sẽ bị loại bỏ Những dấu chấm câu này nằm ở ký tự cuối của các từ n-gram cũng sẽ bị loại bỏ khi xây dựng các từ điển n-gram
Các lỗi OCR được xác định thông qua từ điển unigram, trong đó mỗi từ trong văn bản OCR sẽ được coi là lỗi nếu không xuất hiện trong từ điển này Một số ví dụ về lỗi OCR bao gồm “i”, “faU”, “devdl”, và “caU’d”.
Giai đoạn tách từ không giới hạn dấu chấm câu hay ký tự đặc biệt, dẫn đến sự xuất hiện của các ký tự này trong các từ lỗi OCR như "empire,had" và "c!ose".
“hopeless~y”, “u?gage”, “tp~MM?~”, “~0!ppor”, “.PAi∼ot!6∼M”…
Trước tiên, một bảng chỉnh sửa mẫu ký tự (Pattern Substitution Table - PST) được tạo ra Tập dữ liệu huấn luyện bao gồm các văn bản cần thiết cho quá trình này.
Các văn bản OCR và GT đã được căn hàng theo ký tự để xác định các cặp mẫu ký tự khác nhau có chiều dài một hoặc hai ký tự Trong bảng PST, mỗi mẫu ký tự lỗi trong văn bản OCR được liên kết với một hoặc nhiều mẫu ký tự sửa lỗi từ văn bản GT, kèm theo tần suất xuất hiện trong tập dữ liệu huấn luyện Quá trình sửa lỗi diễn ra bằng cách kiểm tra từng từ lỗi OCR và thay thế các mẫu ký tự lỗi bằng các mẫu ký tự sửa lỗi, nhằm tạo ra các từ sửa lỗi chính xác hơn.
Bảng 5.1 Ví dụ các văn bản OCR-GT được canh hàng ở mức ký tự
Văn bản OCR ban đầu Warming up to their w 1 the StvKiUion fm wards kept up a steady pressuro upon the vjsiuviV goal
Văn bản OCR được canh hàng
Warming up to their w 1 the StvKiUion fm wards kept up a steady pressuro upon the vjsi@uviV goal
Văn bản GT được canh hàng
Warming up to their w@ork
############# forwards kept up a steady pressure upon the visitors' goal
Ký tự “@” được dùng làm ký hiệu đệm trong văn bản OCR và GT Các từ được đánh dấu bằng ký tự “#” trong văn bản GT sẽ không được tính khi đánh giá kết quả.
Trong quá trình sửa lỗi, ký hiệu “@” sẽ bị loại bỏ khỏi văn bản GT Đồng thời, văn bản OCR và văn bản GT sẽ không được căn hàng trong tập dữ liệu đánh giá.
Các từ sửa lỗi được hình thành thông qua các phép chỉnh sửa mẫu ký tự, bao gồm xóa, chèn và thay thế Ký hiệu “→” biểu thị rằng mẫu ký tự lỗi bên trái được chỉnh sửa thành mẫu ký tự sửa lỗi bên phải.
“→” Phép chỉnh sửa chuyển vị x x → xx có thể được xem là một trường hợp
“reinemb.ered” chứa hai phép chỉnh sửa, phép xóa dấu chấm “.” và phép thay thế “in” → “m”
Bảng 5.2 Các phép chỉnh sửa mẫu ký tự
Phép chỉnh sửa Mẫu ký tự chỉnh sửa
Trong giai đoạn xử lý, việc tìm kiếm các từ sửa lỗi được thực hiện qua các vòng lặp tiến hóa Chúng tôi đề xuất thuật toán tối ưu HC để điều khiển quá trình này Các từ sửa lỗi được đánh giá và xếp hạng dựa trên hàm mục tiêu f score (w c ) nhằm lựa chọn từ sửa lỗi tốt nhất cho các từ lỗi OCR.
Thuật toán leo đồi HC bắt đầu từ một vị trí ký tự ngẫu nhiên trong chuỗi w e, và các bước thực hiện của thuật toán được mô tả chi tiết như sau.
Trong bước đầu tiên, thuật toán HC thay thế ký tự lỗi ở vị trí bắt đầu của từ "we" bằng một mẫu ký tự sửa lỗi ngẫu nhiên từ bảng PST, tạo ra từ sửa lỗi tiềm năng Nếu từ này có trong một trong các từ điển n-gram, nó sẽ được xác nhận là từ sửa lỗi đúng; ngược lại, từ sẽ bị loại bỏ.
Trong các bước tiếp theo, mẫu ký tự lỗi ở bước 1 được thay thế bằng các mẫu ký tự sửa lỗi ngẫu nhiên khác để tạo ra các từ sửa lỗi tiềm năng cho đến khi đạt số lượng tối đa Những từ sửa lỗi này sẽ được kiểm tra để xác định xem có từ nào là từ sửa lỗi đúng Có hai trường hợp xảy ra: nếu tìm thấy từ sửa lỗi đúng, thuật toán sẽ chọn từ có điểm số cao nhất và tiếp tục với nó; nếu không tìm thấy, thuật toán vẫn sẽ tiếp tục với từ lỗi ban đầu Từ được sử dụng để leo đồi trong cả hai trường hợp được gọi là từ cơ sở Khi thuật toán xác định được một từ cơ sở, một vòng lặp tiến hóa đã hoàn thành.
Bắt đầu vòng lặp tiến hóa mới, một vị trí ký tự ngẫu nhiên được chọn Các mẫu ký tự sửa lỗi ngẫu nhiên sẽ thay thế mẫu ký tự lỗi tại vị trí đó Qua đó, các từ sửa lỗi mới và từ cơ sở mới được hình thành bằng cách lặp lại quy trình Tương tự, từ cơ sở mới sẽ tiếp tục áp dụng các phép chỉnh sửa mẫu ký tự trong vòng lặp tiến hóa tiếp theo.
K ẾT QUẢ THÍ NGHIỆM VÀ THẢO LUẬN
5.2.1 Tập dữ liệu đánh giá
Tập dữ liệu đánh giá trong cuộc thi hậu xử lý văn bản OCR 2 tại hội nghị ICDAR 2017 bao gồm văn bản chuyên khảo và tạp chí định kỳ, với một nửa là tiếng Anh và nửa còn lại là tiếng Pháp Các văn bản này được thu thập từ nhiều nguồn khác nhau, bao gồm các thư viện quốc gia Anh và Pháp, và là một phần của bộ ngữ liệu trong dự án AmeliOCR Bộ cơ sở dữ liệu chứa các văn bản OCR có lỗi và văn bản GT tương ứng, được canh hàng ở mức ký tự, và mô hình đề xuất được đánh giá trên tập văn bản chuyên khảo tiếng Anh.
Cuộc thi hậu xử lý văn bản ICDAR 2017 sử dụng 666 văn bản để huấn luyện mô hình và 81 văn bản cho đánh giá Cuộc thi chia thành hai phần: phát hiện lỗi và sửa lỗi OCR Phần phát hiện lỗi yêu cầu xác định vị trí và chiều dài của từ lỗi trong văn bản OCR, trong khi phần sửa lỗi tạo ra các từ sửa lỗi và xếp hạng chúng dựa trên xác suất Chất lượng sửa lỗi được đánh giá qua tỷ lệ cải thiện khoảng cách Levenshtein (LV) giữa văn bản sửa lỗi và văn bản gốc đúng GT Khoảng cách LV trung bình (AvgDist Cor) được tính bằng tổng có trọng số của các khoảng cách LV giữa các từ sửa lỗi và từ gốc GT tương ứng, chỉ chọn từ sửa lỗi có điểm cao nhất cho mỗi từ lỗi, nhằm tối ưu hóa khoảng cách trung bình cho tất cả các từ lỗi.
Độ tin cậy của từ sửa lỗi cao nhất, ký hiệu là p i, tương ứng với từ gốc GT, trong khi n là số từ lỗi do OCR gây ra và N là tổng số ký tự trong các văn bản được sử dụng Mẫu số N đóng vai trò quan trọng trong việc so sánh kết quả trên các tập dữ liệu đánh giá có kích thước khác nhau.
Tiếp theo, khoảng cách LV trung bình giữa văn bản OCR và văn bản gốc
GT (ký hiệu AvgDist OCR) được tính tương tự Tỷ lệ phần trăm cải thiện khoảng cách LV, hay còn gọi là tỷ lệ cải thiện lỗi, được trình bày dưới đây.
Trong cuộc thi ICDAR, có tổng cộng 13 nhóm tham gia đã đưa ra các giải pháp cho việc xử lý hậu kỳ văn bản OCR trên tập dữ liệu văn bản tiếng Anh.
Năm 2017, một số giải pháp đã được đề xuất nhằm cải thiện chất lượng sửa lỗi OCR, phản ánh những thách thức trong việc hậu xử lý văn bản OCR từ các nguồn lịch sử khác nhau Các giải pháp này bao gồm mô hình ngôn ngữ và mô hình lỗi thống kê như WFST-PostOCR, EFP, Anavec, cùng với mô hình học máy Modified-prob.SLM Ngoài ra, còn có dịch máy thống kê và mạng nơron như CLAM, MMDT, Char-SMT/NMT, cũng như các thuật toán tiến hóa PST/SOMA và mô hình PST/HC.
Kết quả sửa lỗi OCR trên tập dữ liệu tiếng Anh được trình bày trong Bảng 5.4, chỉ các giải pháp cải thiện chất lượng sửa lỗi trên 20% được xem xét Mô hình Char-SMT/NMT cho kết quả sửa lỗi tốt nhất, kết hợp giữa các mô hình dịch máy thống kê và mạng nơron học sâu ở mức ký tự Mô hình này sử dụng ngôn ngữ n-gram ở mức từ và thuật toán HC để tạo và xếp hạng từ sửa lỗi Kết quả cho thấy mô hình của chúng tôi cải thiện lỗi tốt hơn các giải pháp khác, ngoại trừ Char-SMT/NMT Hơn nữa, mô hình sử dụng thuật toán SOMA và mô hình với thuật toán HC cho kết quả tương đương, cho thấy khả năng tìm và xếp hạng từ sửa lỗi một cách chính xác và hiệu quả của cả hai mô hình.
Bảng 5.4 Kết quả sửa lỗi văn bản OCR trên tập văn bản chuyên khảo tiếng Anh
Giải pháp Tỷ lệ cải thiện lỗi (%)
* Sử dụng bộ trọng số (p 1 , p 2 , p 3 , p 4 , p 5 ) với các giá trị (0.1, 0.1, 0.1, 0.2, 0.5)
5.2.3.1 Các bộ trọng số mô hình
Dựa trên các trọng số p1, p2, p3, p4 và p5 của hàm mục tiêu, cần tiến hành thêm thí nghiệm để kiểm chứng các giả thuyết Tính năng xác suất chỉnh sửa ký tự có vai trò quan trọng trong việc tạo ra các từ sửa lỗi trong mô hình đề xuất, do đó trọng số của tính năng này (p5) được đặt cao hơn so với các tính năng khác Đồng thời, các tính năng n-gram cũng đóng góp tương đương vào tổng trọng số.
Chúng tôi thực hiện nhiều thí nghiệm với bộ trọng số (p1, p2, p3, p4, p5) nhằm xác định giá trị bộ trọng số nào mang lại hiệu quả sửa lỗi cao nhất Đồng thời, chúng tôi cũng phân tích vai trò và mức độ đóng góp của từng yếu tố trong quá trình này.
Các cài đặt giá trị cho các trọng số được xác định như sau: p1, p2, p3, p4 đều có các giá trị {0.1, 0.2, 0.3, 0.4}, trong khi p5 có các giá trị {0.4, 0.5, 0.6, 0.7, 0.8, 0.9} Mỗi sự kết hợp của các trọng số này tạo ra một cấu hình khác nhau cho mô hình sử dụng thuật toán HC, dẫn đến tổng cộng 15 bộ trọng số với điều kiện p1 + p2 + p3 + p4 + p5 = 1.
Mục tiêu là xác định bộ trọng số tối ưu nhằm cải thiện chất lượng sửa lỗi của mô hình đề xuất Dưới đây là kết quả sửa lỗi từ 15 bộ trọng số khác nhau (Bảng 5.5).
Bảng 5.5 Kết quả sửa lỗi của mô hình đề xuất cho các bộ trọng số khác nhau
( p 1 , p 2 , p 3 , p 4 , p 5 ) Tỷ lệ cải thiện lỗi
Trong Bảng 5.5, các bộ trọng số với trọng số của tính năng xác suất chỉnh sửa ký tự (p) bằng 0.5 đã cho kết quả sửa lỗi tốt nhất trong các thí nghiệm từ STT 1 đến 15, cụ thể là các bộ trọng số có STT 11, 12, 13.
14) Chúng có kết quả tương đương nhau, với tỷ lệ cải thiện lỗi khoảng 33.7%
Nghiên cứu cho thấy rằng với trọng số p5 bằng 0.5, sự thay đổi ở các trọng số khác không ảnh hưởng nhiều đến kết quả sửa lỗi, cho thấy tính tương tự và các tính năng n-gram có vai trò tương đương trong quá trình sửa lỗi Đối với các bộ trọng số với p5 là 0.4, hai trường hợp của p1 được quan sát: khi p1 là 0.1, tỷ lệ cải thiện lỗi chỉ đạt khoảng 2%, nhưng khi p1 từ 0.2 trở lên, chất lượng sửa lỗi tăng lên đáng kể, đạt khoảng 33.7% Điều này chứng minh rằng các thay đổi trong giá trị trọng số của các tính năng n-gram chỉ tạo ra sự khác biệt nhỏ trong chất lượng sửa lỗi Cuối cùng, bộ trọng số (0.1, 0.1, 0.1, 0.1, 0.6) cũng chỉ mang lại kết quả cải thiện lỗi thấp (2.74%) Để hiểu rõ hơn về sự tương tác giữa tính năng xác suất sửa ký tự và tính tương tự, chúng tôi đã thử nghiệm với các cấu hình trọng số khác, trong đó p1 và p5 được điều chỉnh từ 0.1 đến 0.9, trong khi bỏ qua các tính năng n-gram.
Khi chọn p5 là 0.8, các trọng số còn lại là p1 = 0.2, p2 = p3 = p4 = 0 Kết quả trong Bảng 5.6 cho thấy mô hình không hoạt động hiệu quả nếu thiếu các tính năng n-gram Điều này nhấn mạnh rằng các tính năng n-gram vẫn rất quan trọng cho việc sửa lỗi và cần được tích hợp vào mô hình.
Bảng 5.6 Kết quả sửa lỗi của mô hình đề xuất cho các kết hợp khác nhau của tính năng chỉnh sửa ký tự và tính tương tự
( p 1 , p 5 ) Tỷ lệ cải thiện lỗi
Chúng tôi đã thử nghiệm các cấu hình trọng số đặc biệt, trong đó các tính năng n-gram chiếm ưu thế Cụ thể, chúng tôi thiết lập p2 = p3 = p4 = 0.3, và p1, p5 trong tập giá trị {0.03, 0.05, 0.07} Một ví dụ về cấu hình trọng số là (p1, p2, p3, p4, p5) = (0.03, 0.3, 0.3, 0.3, 0.07) Kết quả sửa lỗi từ các bộ trọng số này được trình bày trong Bảng 5.7, cho thấy chất lượng sửa lỗi rất thấp, không cải thiện tình hình, thậm chí văn bản sau sửa lỗi còn kém hơn văn bản OCR ban đầu.
Bảng 5.7 Kết quả sửa lỗi của mô hình đề xuất cho các kết hợp đặc biệt của các tính năng n-gram
( p 1 , p 2 , p 3 , p 4 , p 5 ) Tỷ lệ cải thiện lỗi