Vietnamese OCR Text Correction

Xem dạng PDF

Gửi bài giải

Điểm: 98,00 (OI)
Giới hạn thời gian: 60.0s
Giới hạn bộ nhớ: 64M

Tác giả:
Dạng bài
Ngôn ngữ cho phép
Output Only

1. Bối cảnh thực tế & Mục tiêu

Các hệ thống OCR tiếng Việt trong thực tế thường tạo ra nhiều lỗi do:

  • Ảnh scan mờ, nhiễu hoặc chất lượng thấp.
  • Font chữ đa dạng.
  • Văn bản bị méo, lệch hoặc mất dấu.
  • OCR engine nhận diện sai ký tự hoặc sai dấu tiếng Việt.

Ví dụ:

nhim hūu han, công ty cô phàn mói

Cần được sửa thành:

nhiệm hữu hạn, công ty cổ phần mới

Trong đề thi này, thí sinh sẽ xây dựng hệ thống Vietnamese OCR Text Correction nhằm tự động sửa lỗi văn bản OCR tiếng Việt.

Đây là bài toán quan trọng trong:

  • Số hóa tài liệu tiếng Việt.
  • Hậu xử lý cho hệ thống OCR.
  • Khôi phục văn bản lịch sử hoặc scan chất lượng thấp.
  • Xây dựng NLP cho tiếng Việt low-resource và noisy text.

2. Nhiệm vụ

Mục tiêu: Dự đoán phiên bản văn bản đã được sửa lỗi từ đầu vào OCR bị nhiễu.


Bài toán

Đầu vào:

  • Một đoạn văn bản OCR chứa lỗi.

Đầu ra:

  • Phiên bản văn bản đã được sửa lỗi.

Ví dụ:

Input:

vn tiép tuc thyc hin quyěn và nghía vu

Output:

vẫn tiếp tục thực hiện quyền và nghĩa vụ

Đây là bài toán Text Correction / Sequence-to-Sequence.


3. Quy định & Giới hạn

Để đảm bảo tính công bằng, cuộc thi áp dụng các quy định sau:

Được phép

  • Sử dụng:

    • torch
    • torchvision
    • transformers
    • sentencepiece
  • Được phép tự xây dựng model từ đầu (train from scratch).


Không được phép

  • Không được sử dụng dữ liệu ngoài dưới mọi hình thức. Chỉ được sử dụng dataset do BTC cung cấp tại link Google Drive ở Mục 5.
  • Không được sử dụng pretrained model dưới mọi hình thức.
  • Không được finetune từ checkpoint pretrained.
  • Không được sử dụng pretrained embeddings từ bên ngoài.
  • Không được sử dụng dữ liệu test cho training, validation hoặc pseudo-labeling.
  • Không được can thiệp thủ công vào prediction của test set.

4. Tiêu chí đánh giá

Metric chính:

Character Error Rate (CER)

CER đo khoảng cách chỉnh sửa giữa prediction và ground truth ở cấp độ ký tự.

$$ CER = \frac{S + D + I}{N} $$

Trong đó:

  • S: số ký tự bị thay thế
  • D: số ký tự bị xóa
  • I: số ký tự được chèn thêm
  • N: số ký tự trong ground truth

CER càng thấp càng tốt.

Lưu ý: trên leaderboard, điểm số sẽ được tính là 1 - CER.


5. Data và Baseline


6. Dataset và Submission Format

Cấu trúc Dataset

dataset/
│
├── train.csv
└── test.csv

6.1 Training Format

File train.csv:

id,input,corrected_text
0,"nhim hūu han","nhiệm hữu hạn"
1,"vn tiép tuc","vẫn tiếp tục"
2,"Doi voi cac","Đối với các"

Trong đó:

  • input: văn bản OCR lỗi
  • corrected_text: văn bản đúng

6.2 Test Format

File test.csv:

id,input
0,"Doi voi cac bo tuong tac"
1,"5. Soan thao va ky van ban"
2,"7. Dai chet cua he thong"

6.3 Submission Format

File nộp bài:

id,corrected_text
0,"Đối với các bộ tương tác"
1,"5. Soạn thảo và ký văn bản"
2,"7. Dải chết của hệ thống"

Quy định

  • File phải ở định dạng .csv
  • Header bắt buộc:
id,corrected_text
  • Không được thay đổi id.
  • Prediction phải là chuỗi Unicode hợp lệ UTF-8.

7. Lưu ý

  • OCR noise có thể bao gồm:

    • Sai dấu tiếng Việt
    • Thiếu ký tự
    • Thừa ký tự
    • Sai khoảng trắng
    • Sai chữ hoa/thường
    • Ký tự Unicode bất thường
  • CER rất nhạy với lỗi thiếu/thừa ký tự.

  • Các submission lỗi format sẽ bị từ chối tự động.

8. Acknowledgement

Một phần dữ liệu được curate và xử lý lại từ các nguồn dữ liệu public phục vụ nghiên cứu về OCR text correction tiếng Việt.

Chúc các bạn xây dựng thành công hệ thống sửa lỗi OCR tiếng Việt!


Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.