Bối cảnh và vấn đề nghiên cứu
Nhận diện chữ viết tay (Handwritten Text Recognition - HTR) là một nhánh nghiên cứu quan trọng thuộc lĩnh vực Trí tuệ nhân tạo (AI) và Xử lý ngôn ngữ tự nhiên (NLP) / Thị giác máy tính. Đối với tiếng Việt, bài toán HTR đối mặt với những rào cản kỹ thuật đặc thù xuất phát từ hệ thống chữ viết giàu thanh dấu (dấu phụ - diacritical marks), độ biến thiên hình thái lớn giữa các cá nhân, và thói quen viết tự do không ràng buộc khuôn mẫu.
Khóa luận phân định rõ hai hướng tiếp cận chính:
- Nhận diện trực tuyến (Online HTR): Hệ thống có thể truy cập tín hiệu số thời gian thực từ thao tác bút viết (tọa độ không gian, thứ tự nét, áp lực bút, vận tốc di chuyển).
- Nhận diện ngoại tuyến (Offline HTR): Hệ thống chỉ tiếp nhận đầu vào là các tệp hình ảnh tĩnh đã được thu nhận, quét hoặc chụp trước đó, làm mất hoàn toàn thông tin về trình tự thời gian và áp lực nét bút.
Trong bối cảnh các giải pháp trước đây thường dựa vào việc phân đoạn ký tự tách rời (segmentation-based) gây thất thoát thông tin ngữ cảnh, hoặc sử dụng các mô hình ngôn ngữ lớn ở tầng giải mã (Decoder) gây áp lực lớn lên tài nguyên phần cứng, khóa luận đặt ra các mục tiêu và nhiệm vụ cụ thể:
- Mục tiêu nghiên cứu: Xây dựng mô hình học sâu nhận diện chữ viết tay tiếng Việt ngoại tuyến đạt hiệu suất cao trên bộ dữ liệu chuẩn hóa dạng dòng văn bản
HANDS-VNOnDB2018 Line.
- Nhiệm vụ nghiên cứu:
- Nghiên cứu cơ sở lý thuyết về học sâu, mạng nơ-ron tích chập (CNN), mạng nơ-ron hồi quy (RNN/LSTM/Bi-LSTM), cơ chế chú ý (CBAM) và kiến trúc Transformer.
- Xây dựng quy trình xử lý dữ liệu từ định dạng kỹ thuật số gốc InkML sang tệp hình ảnh đồ họa tiêu chuẩn PNG.
- Thực hiện kỹ thuật tiền xử lý ảnh và mã hóa văn bản ở cấp độ ký tự (character-level tokenization).
- Thiết kế mô hình học sâu kết hợp giữa CRNN và khối chú ý CBAM nhằm tối ưu hóa khâu trích xuất đặc trưng hình ảnh, giảm thiểu tiêu hao tài nguyên tính toán ở khâu giải mã.
- Thiết lập môi trường thử nghiệm và đánh giá chất lượng mô hình.
- Đối tượng và phạm vi nghiên cứu: Đối tượng nghiên cứu là chữ viết tay tiếng Việt ngoại tuyến dạng dòng văn bản; phạm vi thực nghiệm giới hạn trên tập dữ liệu
HANDS-VNOnDB2018 Line.
Cơ sở lý thuyết và phương pháp
Khóa luận xây dựng hệ thống trên nền tảng kết hợp các mô hình nơ-ron sâu chuyên dụng cho xử lý chuỗi và hình ảnh:
- Mạng nơ-ron tích chập (Convolutional Neural Network - CNN): Hoạt động dựa trên phép toán tích chập giữa ma trận ảnh đầu vào $f(x, y)$ và bộ lọc hạt nhân (kernel) $k(u, v)$ kích thước $m \times n$ theo công thức:
$$f(x,y) * k(x,y) = \sum_{u=-m/2}^{m/2} \sum_{v=-n/2}^{n/2} k(u, v) f(x-u, y-v)$$
Mô hình kết hợp các siêu tham số bước trượt ($Stride$), lớp đệm ($Padding$), cùng các hàm kích hoạt phi tuyến như ReLU ($f(x) = \max(0, x)$), Tanh, Sigmoid. Tầng gộp (Pooling) gồm Max Pooling và $L_2$ Pooling giúp giảm kích thước chiều không gian, giảm chi phí tính toán và tạo tính bất biến đối với các phép dịch chuyển, co giãn.
- Khối chú ý tích chập (Convolutional Block Attention Module - CBAM): Do Woo và cộng sự (2018) đề xuất, gồm hai phân hệ nối tiếp:
- Channel Attention Module: Tận dụng đồng thời phép gộp trung bình toàn cục (Global Average Pooling - GAP) và phép gộp tối đa toàn cục (Global Max Pooling - GMP) đưa qua mạng nơ-ron truyền thẳng đa tầng (MLP) để xác định nội dung đặc trưng ("cái gì" quan trọng).
- Spatial Attention Module: Áp dụng GAP và GMP theo chiều kênh, ghép nối dữ liệu và áp dụng bộ lọc tích chập kích thước $7 \times 7$ cùng hàm kích hoạt Sigmoid để xác định vị trí trọng yếu ("ở đâu" trên ảnh).
- Mạng nơ-ron dư (ResNet50) và liên kết tắt (Skip-connections): Sử dụng hàm đồng nhất (identity mapping) để duy trì dòng chảy gradient, khắc phục triệt để hiện tượng suy giảm hoặc biến mất đạo hàm (vanishing gradient) khi tăng độ sâu mạng.
- Mạng nơ-ron hồi quy bộ nhớ dài-ngắn hai chiều (Bi-LSTM): Cải tiến từ mạng RNN với cấu trúc 4 tầng tương tác bên trong tế bào (cell) thông qua ba cổng kiểm soát: cổng vào ($Input\ gate$), cổng quên ($Forget\ gate$) và cổng xuất ($Output\ gate$). Cơ chế xử lý hai chiều (thuận - nghịch) cho phép mô hình thu nhận thông tin ngữ cảnh đầy đủ của cả ký tự đứng trước và ký tự đứng sau trong chuỗi văn bản.
- Mô hình Transformer: Được khảo sát dựa trên kiến trúc gốc của Vaswani và cộng sự (2017), bao gồm cơ chế mã hóa vị trí (Positional Encoding), khối Attention đa đầu (Multi-Head Attention) và mạng truyền thẳng (Feed-Forward Network).
Phương pháp nghiên cứu thực nghiệm bao gồm: thu thập dữ liệu định dạng vector, chuyển đổi đồ họa, tăng cường dữ liệu ảnh, tiền xử lý chuỗi ký tự, và tối ưu hóa hàm mất mát phân loại chuỗi. Nguồn dữ liệu sử dụng là bộ dữ liệu thực nghiệm chuẩn HANDS-VNOnDB2018.
Thiết kế và triển khai
Hệ thống được thiết kế theo mô hình Encoder-Decoder hướng đến sự tinh gọn về phần cứng nhưng đảm bảo khả năng biểu diễn đặc trưng ngôn ngữ phức tạp:
| Thành phần hệ thống |
Kỹ thuật / Công nghệ áp dụng |
Vai trò và thông số chi tiết |
| Dữ liệu gốc |
Định dạng .inkml (Ink Markup Language) |
Chứa chuỗi tọa độ nét viết, áp lực bút theo thời gian số hóa |
| Chuyển đổi dữ liệu |
Xử lý nối điểm đồ họa |
Chuyển đổi toàn bộ dữ liệu tọa độ nét bút sang định dạng ảnh tĩnh .png |
| Tăng cường dữ liệu |
Biến đổi hình học & quang học |
Xoay, co giãn, thay đổi độ sáng, điều chỉnh độ tương phản |
| Xử lý nhiễu ảnh |
Kỹ thuật Gaussian & Wavelet |
Lọc nhiễu ảnh có cấu trúc; chủ động gây nhiễu trắng đen/Gaussian chống overfitting |
| Chuẩn hóa kích thước |
Phân đoạn và Đệm ảnh (Padding) |
Đồng nhất kích thước ảnh đầu vào; đảo màu xen kẽ giữa nền trắng chữ đen và nền đen chữ trắng |
| Mã hóa văn bản |
Character-level Tokenization |
Bộ từ điển gồm 229 token (chữ cái Latinh, dấu thanh, chữ số, ký tự đặc biệt) |
| Chuẩn hóa chuỗi nhãn |
pad_sequences |
Cố định chiều dài chuỗi ở mức 162 token; loại bỏ các mẫu câu có trên 150 ký tự |
| Bộ mã hóa (Encoder) |
CRNN + Khối CBAM + Skip-connections |
Đầu vào ảnh $H \times W \times C \rightarrow$ Tích chập CNN trích xuất đặc trưng $\rightarrow$ Channel & Spatial Attention |
| Bộ giải mã (Decoder) |
Bi-LSTM (2 lớp) + Dense + Softmax |
Trích xuất ngữ cảnh chuỗi 2 chiều $\rightarrow$ Ánh xạ xác suất trên 229 token từ vựng |
| Hàm mất mát & Giải mã |
CTC Loss & CTCGreedyDecoder |
Căn chỉnh chuỗi không đồng bộ giữa khung hình và nhãn văn bản |
Chi tiết quy trình triển khai:
- Xử lý đồ họa từ InkML: Tác giả sử dụng các công cụ lập trình đọc thông tin tọa độ $(x, y)$ và áp lực bút từ các thẻ đánh dấu trong tệp
inkml, tái tạo đường nét chữ viết tay và kết xuất đồng loạt ra định dạng ảnh tĩnh PNG.
- Tiền xử lý nhãn ở cấp độ ký tự: Thay vì phân tách theo cấp độ từ (word level) dễ dẫn đến vấn đề từ ngoài từ điển (out-of-vocabulary), khóa luận xây dựng tập 229 token bao gồm tất cả các chữ cái tiếng Việt, dấu phụ rời, dấu câu và số. Độ dài chuỗi được chuẩn hóa về 162 ký tự. Tác giả phân tích phân bố độ dài cho thấy phần lớn câu dưới 120 ký tự, một số ít đạt 151 ký tự; do đó các câu trên 150 ký tự (chỉ có từ 1-2 mẫu) bị lược bỏ để tránh làm tăng chi phí tính toán không cần thiết cho lớp đệm.
- Cơ chế Encoder: Mạng tích chập trích xuất các bản đồ đặc trưng không gian. Đầu ra đặc trưng được đưa tuần tự qua phân hệ Channel Attention để gán trọng số cho từng kênh đặc trưng, sau đó đi qua phân hệ Spatial Attention (với nhân tích chập $7 \times 7$) để định vị các điểm ảnh có nét chữ, kết hợp kỹ thuật liên kết tắt Skip-connections bảo tồn thông tin từ các lớp nông.
- Cơ chế Decoder: Hai tầng Bi-LSTM tiếp nhận chuỗi mã hóa ẩn từ Encoder, trích xuất ngữ cảnh hai chiều của dòng văn bản. Cuối cùng, tầng Dense kết hợp hàm kích hoạt Softmax chuyển đổi trạng thái ẩn thành phân phối xác suất trên toàn bộ 229 ký tự tại mỗi bước thời gian. Bộ giải mã tham lam CTCGreedyDecoder được áp dụng để loại bỏ các token rỗng và gộp các ký tự lặp.
Nội dung chính theo từng chương
Chương 1: Mở đầu
Chương này giới thiệu bức tranh toàn cảnh về bài toán nhận diện chữ viết tay ngoại tuyến, nêu rõ tính cấp thiết của đề tài đối với tiếng Việt do đặc thù phức tạp của hệ thống thanh dấu. Tác giả xác định mục tiêu trọng tâm là xây dựng mô hình HTR tiếng Việt trên tập dữ liệu dòng chữ HANDS-VNOnDB2018 Line, phác thảo phương pháp nghiên cứu kết hợp giữa lý thuyết học sâu và kỹ thuật tiền xử lý hình ảnh, đồng thời giới thiệu bố cục 7 chương của khóa luận.
Chương 2: Tình hình nghiên cứu
Chương 2 tổng thuật các mốc phát triển của bài toán HTR tiếng Việt. Các nghiên cứu sơ khởi (tài liệu [1]–[4]) tiếp cận theo hướng phân đoạn ký tự và xử lý dấu phụ (diacritical marks - DM) độc lập bằng các bộ phân loại như mạng MLP hay máy vector hỗ trợ (SVM), dẫn đến hạn chế lớn khi dấu viết tay bị xê dịch. Khóa luận phân tích các mô hình Sequence-to-Sequence cận đại:
- Nghiên cứu của Hung Tuan Nguyen và cộng sự: Sử dụng kiến trúc DenseNet kết hợp bộ giải mã LSTM tích hợp Attention.
- Nghiên cứu của Vinh-Loi Ly và cộng sự (2020): Ứng dụng cơ chế Self-attention tương tự Transformer.
Tác giả chỉ ra nhược điểm của các nghiên cứu trước là quá tập trung vào phần giải mã bằng các mô hình ngôn ngữ lớn làm tiêu tốn bộ nhớ và tài nguyên phần cứng, từ đó xác lập hướng tiếp cận mới: tập trung tối ưu hóa tiền xử lý dữ liệu và khối trích xuất đặc trưng hình ảnh bằng mô hình gọn nhẹ.
Chương 3: Cơ sở lý thuyết
Chương này trình bày chi tiết nền tảng toán học của các kiến trúc học sâu:
- Mạng CNN: Trình bày cấu trúc toán học của phép tích chập liên tục, tích chập rời rạc, cơ chế trượt bộ lọc đa chiều (3D), kỹ thuật đệm (Padding) bảo toàn kích thước không gian và các hàm kích hoạt (ReLU, Tanh, Sigmoid). Phân tích chi tiết cơ chế hoạt động của các tầng Pooling (Max pooling, Average pooling, $L_2$ pooling) và tầng kết nối đầy đủ (FC) kết hợp hàm Softmax, hàm mất mát Cross-entropy.
- Mô-đun CBAM: Cung cấp sơ đồ khối và công thức tính toán của hai phân hệ Channel Attention và Spatial Attention.
- Kiến trúc ResNet50: Phân tích cơ chế toán học của khối thặng dư (Residual block) và liên kết tắt (Skip-connection) giúp bảo tồn gradient $\frac{\partial \mathcal{L}}{\partial x}$.
- Kiến trúc mạng hồi quy: Cấu trúc bên trong của ô nhớ LSTM, các cổng điều khiển luồng thông tin, và mô hình Bi-LSTM với cơ chế cộng gộp vector xác suất từ hai hướng duyệt chuỗi ($p_t = p_t^1 + p_t^2$).
- Kiến trúc Transformer: Nguyên lý của Positional Encoding, cơ chế Multi-Head Attention dựa trên không gian biến đổi tuyến tính của bộ ba Query ($Q$), Key ($K$) và Value ($V$).
Chương 4: Phương pháp nhận diện chữ viết tay ngoại tuyến
Chương 4 đóng vai trò trung tâm kỹ thuật của công trình:
- Trình bày giải pháp đọc và chuyển đổi tệp định dạng vector InkML sang ảnh PNG.
- Mô tả các kỹ thuật xử lý ảnh số: tăng cường dữ liệu (xoay, co giãn, đổi sáng), lọc nhiễu Gaussian/Wavelet, chủ động gây nhiễu chống quá khớp, đệm kích thước ảnh và kỹ thuật đảo màu nền/chữ.
- Thiết lập bảng mã hóa 229 token ký tự tiếng Việt kèm kỹ thuật đệm chuỗi
pad_sequences với độ dài ngưỡng 162 ký tự.
- Trình bày kiến trúc kết hợp CRNN + CBAM trong bộ mã hóa Encoder và hệ thống 2 tầng Bi-LSTM cùng tầng Dense trong bộ giải mã Decoder.
Chương 5: Các kỹ thuật đánh giá
Chương này mô tả các tiêu chuẩn đo lường và hàm mất mát được áp dụng trong bài toán:
- Hàm mất mát CTC Loss (Connectionist Temporal Classification Loss): Tự động căn chỉnh và ánh xạ chuỗi nhãn không đồng bộ giữa các khung hình đặc trưng và chuỗi ký tự mục tiêu.
- Thuật toán giải mã CTCGreedyDecoder.
- Thước đo tỷ lệ lỗi từ (Word Error Rate - WER) nhằm định lượng hiệu suất nhận diện chính xác ở cấp độ từ ngữ trong câu.
Chương 6: Dữ liệu, thực nghiệm và đánh giá
Chương 6 trình bày thiết lập môi trường thực nghiệm phần cứng, phần mềm và bảng thông số cấu hình huấn luyện chi tiết (Bảng 1 trong văn bản: thông số kích thước batch, tốc độ học, số lượng epoch, kích thước bộ lọc). Thực hiện huấn luyện và kiểm thử mô hình trên tập dữ liệu dòng văn bản HANDS-VNOnDB2018 Line.
Chương 7: Kết luận và hướng phát triển
Tổng kết toàn bộ các kết quả đạt được về mặt mô hình hóa hệ thống nhận diện chữ viết tay ngoại tuyến tiếng Việt, đánh giá mức độ hoàn thành nhiệm vụ nghiên cứu và đề xuất các phương hướng hoàn thiện trong tương lai.
Kết quả và đóng góp
Dựa trên các nội dung được trình bày trong toàn bộ tài liệu, công trình đạt được các kết quả và đóng góp cụ thể:
- Giải pháp chuyển đổi dữ liệu toàn diện: Hoàn thiện quy trình tiếp nhận, đọc và chuyển đổi dữ liệu chữ viết từ cấu trúc thẻ điểm tọa độ
inkml sang tập ảnh đồ họa phẳng png, tạo tiền đề cho việc xử lý ảnh tĩnh ngoại tuyến.
- Xây dựng bộ mã hóa ký tự chuyên biệt cho tiếng Việt: Thiết lập hoàn chỉnh không gian token ở cấp độ ký tự (Character token level) với quy mô 229 token, xử lý triệt để toàn bộ hệ thống nguyên âm mang thanh dấu tiếng Việt cùng các ký hiệu chuyên biệt trên tập dữ liệu
HANDS-VNOnDB2018.
- Đề xuất kiến trúc học sâu tối ưu tài nguyên: Khác với các công trình đi trước phụ thuộc vào các bộ giải mã ngôn ngữ lớn (Decoder) gây tốn kém năng nguyên tính toán, tác giả đã kết hợp thành công khối trích xuất đặc trưng CRNN với mô-đun chú ý CBAM (kết hợp liên kết tắt Skip-connections), ghép nối với tầng giải mã 2 lớp Bi-LSTM tinh gọn. Kiến trúc này tập trung giải quyết bài toán biểu diễn hình ảnh sắc nét mà không đòi hỏi hạ tầng phần cứng cồng kềnh.
Hạn chế và hướng nghiên cứu tiếp
- Hạn chế:
- Phạm vi thực nghiệm của mô hình mới chỉ tập trung và đánh giá trên bộ dữ liệu
HANDS-VNOnDB2018 Line, chưa được kiểm chứng mở rộng trên các tập dữ liệu thực tế đa nguồn khác.
- Quá trình tiền xử lý chuỗi phải cắt bỏ các mẫu dữ liệu có độ dài vượt quá 150 ký tự (dù chỉ chiếm tỷ lệ rất nhỏ từ 1–2 câu) để duy trì hiệu quả xử lý cho hàm
pad_sequences.
- Hướng phát triển trong tương lai:
- Triển khai thử nghiệm và đánh giá độ bền vững của mô hình trên nhiều tập dữ liệu chữ viết tay tiếng Việt phong phú khác.
- Tối ưu hóa sâu hơn nữa các siêu tham số của mạng nơ-ron nhằm cải thiện tốc độ hội tụ và giảm độ trễ tính toán khi triển khai thực tế.
Giá trị tham khảo
Tài liệu là nguồn tham khảo chuyên môn hữu ích cho sinh viên, học viên cao học và các kỹ sư thuộc các ngành Công nghệ Thông tin, Khoa học Máy tính, Trí tuệ Nhân tạo và Kỹ thuật Dữ liệu đang theo đuổi các đề tài liên quan đến Nhận dạng mẫu (Pattern Recognition) và Xử lý ảnh số (OCR/HTR).
Các phần nội dung có giá trị tham khảo nổi bật bao gồm:
- Phương pháp kỹ thuật chuyển đổi từ định dạng tọa độ bút viết InkML sang hình ảnh bitmap PNG (Mục 4.1).
- Nguyên lý xây dựng tập từ điển Character-level Tokenizer cho tiếng Việt và chiến lược chuẩn hóa độ dài chuỗi bằng padding (Mục 4.2).
- Phương thức tích hợp hai khối Channel Attention và Spatial Attention của CBAM vào dòng dữ liệu mạng CRNN (Mục 4.3).
Câu hỏi thường gặp
1. Khóa luận sử dụng cấp độ mã hóa nào cho nhãn văn bản và từ điển có bao nhiêu token?
Tác giả sử dụng mã hóa ở cấp độ ký tự (Character token level) thay vì cấp độ từ (word level). Tập từ điển bao gồm 229 token, bao quát đầy đủ bảng chữ cái tiếng Việt, các ký tự nguyên âm có dấu thanh, chữ số và các ký tự đặc biệt xuất hiện trong bộ nhãn.
2. Độ dài chuỗi chuẩn hóa được thiết lập là bao nhiêu và tác giả đã xử lý các câu quá dài như thế nào?
Độ dài chuỗi token được chuẩn hóa cố định là 162 ký tự thông qua hàm pad_sequences. Đối với các câu có độ dài vượt quá 150 ký tự, do số lượng trong tập dữ liệu chỉ xuất hiện từ 1 đến 2 câu, tác giả quyết định loại bỏ các câu này để tránh làm suy giảm hiệu năng xử lý của mô hình do chuỗi đệm bị kéo quá dài.
3. Kiến trúc Encoder và Decoder của mô hình đề xuất gồm những thành phần cụ thể nào?
Bộ mã hóa (Encoder) gồm mạng tích chập trích xuất đặc trưng CRNN kết hợp với khối chú ý CBAM (tuần tự gồm Channel Attention và Spatial Attention) cùng kỹ thuật liên kết tắt Skip-connections. Bộ giải mã (Decoder) gồm 2 lớp mạng hồi quy Bi-LSTM nối tiếp và kết thúc bằng một tầng kết nối đầy đủ (Dense) sử dụng hàm kích hoạt Softmax.
4. Vì sao tác giả không sử dụng các mô hình ngôn ngữ lớn (LLM) ở phần giải mã như các nghiên cứu trước đó?
Theo phân tích của tác giả ở Chương 2, việc sử dụng các bộ giải mã dựa trên mô hình ngôn ngữ lớn khiến hệ thống tiêu hao lượng tài nguyên phần cứng và bộ nhớ tính toán rất lớn. Đề tài lựa chọn hướng tiếp cận tối ưu hóa chất lượng trích xuất đặc trưng hình ảnh ở phần Encoder thông qua CRNN và CBAM, kết hợp bộ giải mã Bi-LSTM nhẹ hơn nhằm giảm tải tài nguyên thiết bị mà vẫn giữ được độ chuẩn xác của mô hình.
Kết luận
Khóa luận tốt nghiệp của sinh viên Khổng Tín Hào đã giải quyết trọn vẹn bài toán nhận diện chữ viết tay tiếng Việt ngoại tuyến dạng dòng văn bản trên bộ dữ liệu HANDS-VNOnDB2018 Line. Bằng việc kết hợp kiến trúc CRNN với khối chú ý hai giai đoạn CBAM và bộ giải mã Bi-LSTM hai chiều, công trình đã đề xuất một mô hình học sâu vừa tối ưu hóa năng lực trích xuất đặc trưng dấu ngữ âm tiếng Việt, vừa tiết kiệm tài nguyên tính toán phần cứng so với các hệ thống giải mã ngôn ngữ cồng kềnh. Toàn bộ quy trình từ chuyển đổi định dạng tệp InkML sang ảnh PNG, xử lý nhiễu ảnh, thiết lập từ điển 229 ký tự cho đến kiểm thử bằng CTC Loss tạo nên một tài liệu kỹ thuật có tính hệ thống cao cho chuyên ngành Trí tuệ nhân tạo.