Tổng quan nghiên cứu

Trong kỷ nguyên chuyển đổi số và phát triển thiết bị thông minh, bài toán nhận dạng quang học ký tự đã ghi nhận nhiều bước tiến vượt bậc. Trong khi các giải pháp nhận dạng chữ in tiếng Việt như phần mềm VnDOCR 4.0 đã đạt độ chính xác trên 98% và hệ thống thương mại ABBYY FineReader hỗ trợ nhận diện tới 192 ngôn ngữ khác nhau, thì nhận dạng chữ viết tay tiếng Việt vẫn là một thách thức lớn. Khó khăn bắt nguồn từ sự biến thiên phong phú trong phong cách viết của từng cá nhân, độ nghiêng nét bút không đồng nhất và đặc biệt là hệ thống thanh dấu tiếng Việt rất dễ bị nhầm lẫn với các đốm nhiễu ngẫu nhiên trên màn hình. Bên cạnh đó, việc thực thi các mô hình học máy phức tạp trực tiếp trên các thiết bị di động có cấu hình phần cứng giới hạn đòi hỏi giải thuật phải vừa đạt độ chính xác cao, vừa tối ưu hóa tài nguyên tính toán.

Mục tiêu trọng tâm của nghiên cứu là thiết kế giải thuật và xây dựng hoàn chỉnh một ứng dụng nhận dạng chữ Việt in hoa viết tay rời rạc trên hệ điều hành Android bằng phương pháp máy vector tựa (Support Vector Machines - SVM). Nghiên cứu tập trung vào việc tiếp nhận tín hiệu nét viết trực tiếp từ màn hình cảm ứng điện thoại, thực hiện tiền xử lý, trích xuất đặc trưng và phân lớp cục bộ mà không cần phụ thuộc vào máy chủ hoặc kết nối mạng internet.

Nghiên cứu được triển khai trong mốc thời gian từ tháng 01/2017 đến tháng 06/2017 tại Trường Đại học Bách Khoa – Đại học Quốc gia Thành phố Hồ Chí Minh. Luận văn đã xây dựng thành công bộ cơ sở dữ liệu gồm hơn 1.100 mẫu ký tự chữ viết tay tiếng Việt thực nghiệm. Kết quả thử nghiệm trực tiếp trên môi trường Android cho thấy giải thuật đạt độ chính xác trung bình khoảng 95%, tiết kiệm 100% băng thông truyền dữ liệu và đảm bảo thời gian phản hồi tức thì cho người dùng.

Cơ sở lý thuyết và phương pháp nghiên cứu

Khung lý thuyết áp dụng

Nghiên cứu được xây dựng trên nền tảng toán học vững chắc của lý thuyết học máy thống kê và kỹ thuật xử lý ảnh số hiện đại. Khung lý thuyết chính bao gồm phương pháp máy vector tựa SVM dựa trên nguyên lý cực tiểu hóa rủi ro cấu trúc (Structural Risk Minimization) và lý thuyết chiều Vapnik-Chervonenkis (VC Dimension). Không giống như các mô hình cực tiểu hóa rủi ro thực nghiệm truyền thống dễ rơi vào hiện tượng quá khớp (overfitting), SVM hướng đến việc xác định siêu phẳng tối ưu (Optimal Hyperplane) nhằm cực đại hóa khoảng cách lề (Margin) giữa các lớp dữ liệu phân tách. Đối với bài toán phân lớp phi tuyến, dữ liệu được ánh xạ gián tiếp sang không gian đặc trưng nhiều chiều hơn thông qua các hàm nhân (Kernel Trick) như hàm cơ sở xuyên tâm (Radial Basis Function - RBF) hoặc hàm đa thức.

Hệ thống tích hợp các khái niệm then chốt trong xử lý ảnh và trích chọn đặc trưng hình thái bao gồm: kỹ thuật nhị phân hóa ảnh theo ngưỡng thích nghi, thuật toán chuẩn hóa kích thước dựa trên trọng tâm ảnh, phân tích thành phần liên thông (Connected Components), trích chọn đặc trưng trọng số vùng (Zoning), kỹ thuật phân tích biểu đồ chu tuyến (Contour Profile) và phép biến đổi Wavelet Haar. Trong đó, phép biến đổi Wavelet Haar đóng vai trò then chốt trong việc phân tích ảnh ký tự ở nhiều mức phân giải khác nhau, giúp tạo ra chuỗi vector đặc trưng có tính bất biến cao đối với các biến dạng tỷ lệ và dịch chuyển nét chữ.

Phương pháp nghiên cứu

Dữ liệu nghiên cứu được xây dựng từ nguồn dữ liệu thực nghiệm gồm hơn 1.100 mẫu ký tự chữ Việt in hoa viết tay, thu thập trực tiếp từ nhiều người tham gia thử nghiệm trên màn hình cảm ứng của các dòng điện thoại thông minh chạy hệ điều hành Android. Phương pháp chọn mẫu là lấy mẫu phân tầng ngẫu nhiên (Stratified Random Sampling), đảm bảo độ bao phủ đồng đều cho 29 chữ cái trong bảng chữ cái tiếng Việt cùng các biến thể ký tự có dấu phức tạp.

Về phương pháp phân tích, nghiên cứu áp dụng thuật toán tối ưu hóa tuần tự tối thiểu (Sequential Minimal Optimization - SMO) để giải quyết bài toán quy hoạch toàn phương trong huấn luyện SVM. Đối với bài toán nhận dạng đa lớp, luận văn kết hợp linh hoạt giữa chiến lược phân lớp một chống một (One-Versus-One - OVO) và chiến lược một chống phần còn lại (One-Versus-Rest - OVR) cùng mô hình phân cấp 3 nhóm ký tự. Lý do lựa chọn phương pháp SVM thay vì các giải thuật k-NN hay mạng Neural truyền thống là vì SVM chứng minh được tính ổn định vượt trội trên các tập mẫu huấn luyện có kích thước vừa phải, đảm bảo độ khái quát hóa cao và tiêu hao rất ít bộ nhớ RAM khi vận hành thực tế trên vi xử lý ARM di động. Toàn bộ quy trình từ nghiên cứu thuật toán, thu thập dữ liệu, huấn luyện mô hình đến lập trình đóng gói ứng dụng bằng ngôn ngữ Java được thực hiện xuyên suốt trong timeline 6 tháng, từ tháng 01/2017 đến tháng 06/2017.

Kết quả nghiên cứu và thảo luận

Những phát hiện chính

Quá trình thực nghiệm giải thuật nhận dạng trên ứng dụng Android đã mang lại nhiều kết quả định lượng nổi bật:

Thứ nhất, mô hình nhận dạng chữ Việt in hoa viết tay rời rạc áp dụng bộ phân lớp SVM đạt tỷ lệ nhận dạng chính xác trung bình toàn hệ thống là 95% trên tổng số hơn 1.100 mẫu thử nghiệm thực tế.

Thứ hai, việc đề xuất giải pháp phân tích thành phần liên thông để phân hoạch tập ký tự thành 3 nhóm riêng biệt và tách rời phần thân chữ với phần dấu đã giúp nâng cao độ chính xác nhận dạng của các ký tự có dấu phức tạp như "Ắ", "Ộ", "Ể" lên mức trên 93%. Tỷ lệ nhận diện sai do nhầm lẫn giữa dấu thanh và nhiễu điểm ảnh giảm mạnh xuống dưới 4%.

Thứ ba, phương pháp trích chọn đặc trưng kết hợp giữa Wavelet Haar và kỹ thuật trọng số vùng Zoning giúp rút giảm hơn 60% số chiều của vector đặc trưng đầu vào, trong khi vẫn bảo toàn được 98% thông tin cấu trúc hình thái của nét chữ.

Thứ tư, thời gian thực thi của giải thuật trên thiết bị di động đạt hiệu năng vượt bậc với tốc độ nhận dạng trung bình khoảng 35 miligiây cho một ký tự đơn và dưới 200 miligiây cho việc ghép nối nhận dạng nguyên từ hoàn chỉnh. Ứng dụng vận hành hoàn toàn độc lập, tiết kiệm 100% chi phí dữ liệu viễn thông di động.

Thảo luận kết quả

Độ chính xác ấn tượng 95% đạt được là nhờ sự kết hợp chặt chẽ giữa khối tiền xử lý chuẩn hóa vùng liên thông và khả năng thiết lập siêu phẳng phân lớp tối ưu của SVM. Cơ chế tách riêng phần thân chữ và dấu thanh đã loại bỏ triệt để điểm nghẽn lớn nhất trong nhận dạng chữ tiếng Việt, vốn thường xuyên xảy ra lỗi khi người viết đặt dấu quá sát hoặc quá xa thân chữ. Khoảng 5% tỷ lệ nhận dạng chưa chính xác còn lại chủ yếu rơi vào các trường hợp nét viết bị đứt đoạn quá nhiều hoặc các cặp ký tự có cấu trúc hình học gần như tương đồng tuyệt đối khi viết ẩu.

Dữ liệu thực nghiệm của luận văn được trực quan hóa chi tiết thông qua các biểu đồ ma trận nhầm lẫn (Confusion Matrix) đối với từng ký tự và bảng thống kê đối sánh hiệu năng xử lý. Các bảng dữ liệu cho thấy rõ tốc độ nhận dạng tối ưu nhất khi kích thước ma trận ảnh được chuẩn hóa về khung 32x32 pixel. Khi so sánh với các công trình nghiên cứu cùng thời điểm sử dụng mạng Perceptron đa lớp (MLP) hoặc giải thuật k-NN (thường chỉ đạt độ chính xác khoảng 88% đến 90% và chiếm dụng hơn 150MB bộ nhớ), mô hình SVM đề xuất trong luận văn giúp giảm hơn 70% dung lượng RAM tiêu thụ và tăng từ 5% đến 7% độ chính xác nhận dạng trên môi trường di động.

Đề xuất và khuyến nghị

Dựa trên các kết quả đạt được, luận văn đưa ra 4 nhóm giải pháp kỹ thuật cụ thể nhằm hoàn thiện và mở rộng khả năng ứng dụng thực tiễn của đề tài:

Thứ nhất, mở rộng quy mô cơ sở dữ liệu mẫu chữ viết tay tiếng Việt từ hơn 1.100 mẫu hiện tại lên tối thiểu 50.000 mẫu đa dạng, thu thập từ nhiều lứa tuổi và vùng miền khác nhau. Động thái này cần được thực hiện trong khung thời gian 12 tháng bởi các nhóm nghiên cứu tại các trường đại học và viện công nghệ nhằm nâng độ chính xác nhận dạng toàn diện đạt mức mục tiêu trên 98%.

Thứ hai, tích hợp mô hình ngôn ngữ thống kê N-Grams vào module hậu xử lý của ứng dụng di động. Giải pháp này do các kỹ sư phần mềm phối hợp cùng chuyên gia ngôn ngữ học tính toán thực hiện trong thời hạn 6 tháng, đặt mục tiêu tự động sửa lỗi chính tả theo ngữ cảnh câu, kéo giảm tỷ lệ sai sót nhận dạng từ và câu xuống dưới 2%.

Thứ ba, tái cấu trúc và tối ưu hóa mã nguồn thuật toán SMO trên nền tảng Android NDK bằng ngôn ngữ lập trình C/C++. Nhóm lập trình viên hệ thống di động cần hoàn thành mục tiêu này trong vòng 3 tháng nhằm rút ngắn thời gian xử lý xuống dưới 20 miligiây cho mỗi ký tự, đồng thời giảm 25% mức độ tiêu hao năng lượng pin trên thiết bị.

Thứ tư, phát triển mở rộng giải thuật từ nhận dạng chữ rời rạc sang nhận dạng chữ viết tay liền nét (Cursive Script) và nhận dạng văn bản ngoại tuyến (Off-line OCR) thông qua camera điện thoại. Mục tiêu triển khai trong 18 tháng bởi các doanh nghiệp công nghệ số hóa tài liệu, hướng tới khả năng quét và chuyển đổi toàn bộ 1 trang tài liệu viết tay khổ A4 thành văn bản số chỉ trong thời gian dưới 3 giây.

Đối tượng nên tham khảo luận văn

Nội dung và kết quả nghiên cứu của luận văn mang lại giá trị học thuật và ứng dụng sâu rộng cho 4 nhóm đối tượng trọng tâm:

Nhóm học viên cao học, nghiên cứu sinh và sinh viên ngành Kỹ thuật Viễn thông, Khoa học Máy tính và Trí tuệ Nhân tạo: Luận văn cung cấp tài liệu tham khảo chuẩn mực về cơ sở toán học của máy vector tựa SVM, lý thuyết chiều VC và phép biến đổi Wavelet Haar, giúp người học tiết kiệm khoảng 40% thời gian nghiên cứu nền tảng lý thuyết phân lớp.

Nhóm kỹ sư phát triển ứng dụng di động Android và chuyên gia AI trên thiết bị biên (Edge AI): Tài liệu cung cấp bản thiết kế chi tiết về việc tối ưu hóa vòng đời Activity, quản lý bộ nhớ và triển khai thuật toán học máy chạy ngoại tuyến (On-device Machine Learning) mà không cần phụ thuộc vào dịch vụ đám mây đắt đỏ.

Nhóm doanh nghiệp EdTech, tổ chức tài chính và cơ quan hành chính công: Bản luận văn là tài liệu tham khảo giá trị để phát triển các tính năng nhận diện chữ viết tay trên bảng tương tác thông minh, số hóa biểu mẫu, nhập liệu hóa đơn và xử lý chữ ký điện tử với độ chính xác trên 95%.

Nhóm giảng viên và nhà nghiên cứu trong lĩnh vực xử lý ảnh và nhận dạng mẫu: Sử dụng các phương pháp phân hoạch 3 nhóm ký tự tiếng Việt và bộ dữ liệu thực nghiệm của luận văn làm tài liệu giảng dạy chuyên đề hoặc làm bàn đạp cho các công trình nghiên cứu sâu hơn về thị giác máy tính tiếng Việt.

Câu hỏi thường gặp

Lý do luận văn lựa chọn thuật toán SVM thay vì các mạng nơ-ron tích chập (CNN) là gì? Thuật toán SVM được xây dựng trên nguyên lý cực tiểu hóa rủi ro cấu trúc, cho khả năng khái quát hóa xuất sắc ngay cả khi tập dữ liệu huấn luyện chỉ có hơn 1.100 mẫu. Tại thời điểm năm 2017, việc chạy các mạng nơ-ron sâu trực tiếp trên phần cứng điện thoại di động gây quá tải bộ nhớ, trong khi SVM giúp tiết kiệm hơn 70% dung lượng RAM mà vẫn đảm bảo độ chính xác 95%.

Mô hình xử lý vấn đề dấu thanh tiếng Việt dễ bị nhầm lẫn với nhiễu ảnh bằng cách nào? Hệ thống sử dụng kỹ thuật phân tích các thành phần liên thông để phân loại chữ cái thành 3 nhóm cấu trúc, sau đó tự động tách rời phần thân chữ và phần dấu. Nhờ vậy, dấu thanh được nhận dạng qua một bộ phân lớp chuyên biệt, giúp loại bỏ triệt để nhiễu đốm và nâng độ chính xác của các ký tự có dấu lên trên 93%.

Ứng dụng nhận dạng trên Android có yêu cầu kết nối mạng Wifi hoặc dữ liệu di động không? Hoàn toàn không. Toàn bộ chu trình từ tiền xử lý nét vẽ cảm ứng, trích chọn đặc trưng Wavelet Haar đến phân lớp SVM đều được thực thi cục bộ trên thiết bị di động. Ứng dụng hoạt động ngoại tuyến 100%, bảo vệ tuyệt đối quyền riêng tư dữ liệu của người dùng và đảm bảo tốc độ phản hồi nhanh chỉ khoảng 35 miligiây.

Phép biến đổi Wavelet Haar mang lại lợi ích cụ thể nào trong bài toán trích chọn đặc trưng? Phép biến đổi Wavelet Haar cho phép phân rã ảnh ký tự ở nhiều cấp độ phân giải khác nhau, tạo ra các hệ số đại diện bất biến với các phép co giãn kích thước và tịnh tiến nét viết. Kỹ thuật này giúp cắt giảm hơn 60% số chiều dữ liệu nhưng vẫn bảo lưu được 98% đặc trưng hình thái then chốt.

Mô hình nhận dạng trong luận văn đã có thể ứng dụng trực tiếp vào thương mại hóa chưa? Ứng dụng trong luận văn đã nhận dạng chính xác nguyên từ với độ chính xác trung bình 95% và hoạt động mượt mà trên môi trường Android thực tế. Để thương mại hóa hoàn chỉnh, hệ thống cần được bổ sung thêm từ điển tiếng Việt N-Grams và mở rộng bộ dữ liệu huấn luyện lên quy mô trên 50.000 mẫu.

Kết luận

  • Luận văn đã thiết kế thành công mô hình nhận dạng chữ Việt in hoa viết tay rời rạc trên hệ điều hành Android với độ chính xác trung bình đạt 95%.
  • Đề xuất đột phá giải pháp phân hoạch 3 nhóm ký tự và phân tách thành phần liên thông, nâng tỷ lệ nhận diện các chữ cái có dấu phức tạp lên trên 93%.
  • Ứng dụng hiệu quả kỹ thuật trích chọn đặc trưng Wavelet Haar kết hợp Zoning, giúp giảm hơn 60% số chiều dữ liệu và tối ưu hóa tuyệt đối năng lực tính toán trên thiết bị di động.
  • Hiện thực hóa hoàn chỉnh ứng dụng Android chạy độc lập ngoại tuyến với thời gian phản hồi ấn tượng chỉ 35 miligiây cho mỗi ký tự đơn.
  • Đóng góp cho cộng đồng nghiên cứu bộ cơ sở dữ liệu gồm hơn 1.100 mẫu ký tự chữ viết tay tiếng Việt chuẩn mực được thu thập từ thực nghiệm.

Công trình nghiên cứu hoàn thành đúng tiến độ 6 tháng từ tháng 01/2017 đến tháng 06/2017 dưới sự hướng dẫn khoa học của Tiến sĩ Hà Hoàng Kha tại Đại học Bách Khoa – Đại học Quốc gia Thành phố Hồ Chí Minh, khẳng định tính ứng dụng cao của học máy trên thiết bị di động. Hãy tải về toàn văn luận văn thạc sĩ để nghiên cứu chi tiết cấu trúc giải thuật toán học và ứng dụng các giải pháp tối ưu hóa nhận dạng chữ viết tay vào các dự án công nghệ của bạn ngay hôm nay.