Nhận dạng ký tự quang học (Optical Character Recognition – OCR) là công nghệ hỗ trợ phát hiện, nhận dạng và trích xuất thông tin từ hình ảnh, vật thể, chữ viết tay, giấy tờ, biểu mẫu… được sử dụng phổ biến thời gian gần đây, nhằm tiết kiệm thời gian và chi phí, cũng như tối ưu hóa các chu trình xử lý thủ tục giấy tờ. Sau khi tiến hành dán nhãn, xử lý hình ảnh, thiết lập thuật toán,… để hoàn thiện mô hình OCR, các nhà nghiên cứu cần đánh giá xem mô hình này có hoạt động hiệu quả hay không, bằng cách sử dụng các chỉ số tiêu chuẩn. Bài viết này cung cấp thông tin về 2 chỉ số được sử dụng phổ biến, bao gồm Tỷ lệ lỗi ký tự (Character Error Rate – CER) và Tỷ lệ lỗi từ (Word Error Rate – WER). Sử dụng tỷ lệ lỗi để xác định mức độ khác nhau giữa văn bản được trích xuất với OCR và văn bản tham chiếu được dán nhãn thủ công.
Các nhóm lỗi cơ bản được xem xét
Với CER và WER có 3 loại lỗi cơ bản cần được xem xét bao gồm
Lỗi thay thế (Substitution): Các ký tự/ từ sai chính tả
Lỗi xóa (Deletion): Các ký tự/ từ bị mất hoặc bị thiếu
Lỗi chèn (Insertion): Các ký tự/ từ không chính xác
Vấn đề ở đây là làm thế nào để đo lường mức độ sai lệch giữa 2 chuỗi văn bản. Thông thường chúng ta sử dụng kỹ thuật Khoảng cách Levenshtein (tên tiếng Anh: Levenshtein distance). Khoảng cách Levenshtein là một kỹ thuật đo lường sự khác biệt giữa hai chuỗi, thông qua thống kê số lần chỉnh sửa một ký tự (hoặc từ) tối thiểu (bao gồm chèn, xóa hoặc thay thế) cần thiết để thay đổi một từ (hoặc câu) thành một từ (hoặc câu) khác.
Ví dụ: khoảng cách Levenshtein giữa “mitten” và “fitting” là 3 vì cần tối thiểu 3 lần chỉnh sửa để biến từ này thành từ kia.
mitten → fitten (thay thế “m” thành “f”)
fitten → fittin (thay thế “e” thành “i”)
fittin → fitting (thêm “g” ở cuối từ)
Chỉ số khoảng cách Levenshtein càng lớn thì hai chuỗi văn bản được xem xét càng có nhiều khác biệt.
Tỷ lệ lỗi ký tự (Character Error Rate – CER)
Công thức tính CER
Tính toán chỉ số CER dựa trên kỹ thuật khoảng cách Levenshtein bằng cách đếm số lượng tối thiểu các hoạt động cấp ký tự cần thiết để chuyển đổi văn bản tham chiếu đầu vào thành tệp đầu ra OCR.
CER được tính theo công thức sau:
Trong đó:
S = Số lần thay thế
D = Số lần xóa
I = Số lần chèn
N = Tổng số ký tự trong văn bản tham chiếu
Mẫu số N có thể được tính theo công thức: N = S + D + C (trong đó C = Số ký tự đúng)
Kết quả của phương trình này đại diện cho tỷ lệ phần trăm ký tự trong đầu ra OCR không chính xác so với văn bản tham chiếu đầu vào. Giá trị CER càng thấp (mô hình hoàn hảo khi CER=0), hiệu suất của mô hình OCR càng tốt.
Ý nghĩa của tỷ lệ lỗi ký tự CER
Tùy thuộc trường hợp sử dụng và điều kiện liên quan, tỷ lệ lỗi ký tự CER được sử dụng để đánh giá mức độ hiệu quả của OCR tương ứng. Các tình huống và độ phức tạp khác nhau (ví dụ: văn bản in so với văn bản viết tay, loại nội dung, v.v.) có thể dẫn đến các hiệu suất OCR khác nhau. Tuy nhiên, chúng ta có thể tham khảo đánh giá độ chính xác của một số tổ chức uy tín tại Úc như sau (đối với văn bản in):
Độ chính xác OCR tốt: CER 1‐2% (tức là chính xác 98–99%)
Độ chính xác OCR trung bình: CER 2-10%
Độ chính xác OCR kém: CER> 10% (tức là độ chính xác dưới 90%)
Đối với các trường hợp phức tạp liên quan đến văn bản viết tay có nội dung không đồng nhất và xa rời từ vựng (ví dụ: đơn đăng ký), giá trị CER cao khoảng 20% có thể được coi là đạt yêu cầu.
Tỷ lệ lỗi từ (Word Error Rate – WER)
Nếu CER thường được sử dụng trong việc phát hiện và trích xuất các tài liệu, chuỗi ký tự có trình tự cụ thể (ví dụ: biển số xe, số điện thoại…) thì WER thường được áp dụng khi liên quan đến việc phiên âm các đoạn văn và câu chứa các từ có nghĩa (ví dụ: các trang sách, báo).
Công thức tính tỷ lệ lỗi từ (WER)
Công thức của WER giống với công thức của CER, nhưng thay vào đó, WER hoạt động ở cấp độ từ. Nó thể hiện số lượng từ thay thế, xóa hoặc chèn cần thiết để chuyển một câu thành câu khác.
WER thường có mối liên quan quan mật thiết với CER (miễn là tỷ lệ lỗi không quá cao), mặc dù giá trị WER luôn luôn ghi nhận cao hơn CER.
Ví dụ: Văn bản tham chiếu gốc: “My name is kenneth”
Đầu ra OCR: “Myy nime iz kenneth”
Ở đây, tỷ lệ lỗi ký tự CER là 16.67%, trong khi tỷ lệ lỗi từ WER là 75%. Rõ ràng WER là 75% vì 3 trong số 4 từ trong câu đã bị phiên âm sai.
Bài viết trên đây đã đề cập đến các khái niệm, công thức tính tỷ lệ lỗi ký tự CER và tỷ lệ lỗi từ WER cũng như cách áp dụng chúng trong thực tế. Mặc dù CER và WER rất tiện dụng nhưng đây không phải là các chỉ số duy nhất khi đo lường sự chính xác của mô hình OCR. Độ chính xác của OCR còn phụ thuộc nhiều yếu tố như chất lượng và tình trạng của tài liệu gốc (ví dụ: tính dễ đọc của chữ viết tay, DPI hình ảnh, v.v.), thế nên các chỉ số chỉ mang tính tương đối.
VinBigData đang phát triển giải pháp VinOCR hỗ trợ việc phát hiện, nhận dạng và trích xuất thông tin từ hình ảnh, vật thể, chữ viết tay, giấy tờ, biểu mẫu… với độ chính xác cao tới 96%, tốc độ xử lý chưa đến 0,1s. Hệ thống ứng dụng cụ thể trong đa lĩnh vực, số hóa trải nghiệm người dùng, tăng tỉ lệ chuyển đổi, giảm rủi ro cho các doanh nghiệp.
Nguồn tham khảo: Towards Data Science