Bối cảnh và vấn đề nghiên cứu

Truyện tranh (manga/comic) là một loại hình nghệ thuật kể chuyện kết hợp giữa hình ảnh liên tiếp và văn bản ngôn ngữ, nhận được sự quan tâm rộng rãi từ độc giả trên toàn cầu. Tuy nhiên, rào cản ngôn ngữ là một trở ngại lớn đối với người đọc khi tiếp cận các tác phẩm nước ngoài, đặc biệt là các tài liệu tiếng Anh chưa được phát hành bản dịch tiếng Việt. Quá trình dịch thuật truyền thống đòi hỏi nhiều nhân lực, thời gian và kỹ năng biên dịch lẫn xử lý đồ họa (xóa chữ gốc, chèn chữ dịch). Sự phát triển của trí tuệ nhân tạo, cụ thể là các mô hình học sâu (Deep Learning) trong thị giác máy tính và xử lý ngôn ngữ tự nhiên, đã mở ra khả năng tự động hóa chuỗi quy trình này.

Đề tài khóa luận "Ứng dụng mô hình Deep Learning để phát triển công cụ tự động dịch truyện tranh song ngữ Anh-Việt" được thực hiện bởi sinh viên Lê Quang Khải và Lê Thành Hiếu, dưới sự hướng dẫn của ThS. Thái Bảo Trân tại Khoa Hệ thống Thông tin (hoàn thành vào tháng 6 năm 2023), nhằm giải quyết bài toán dịch thuật truyện tranh tự động.

Mục tiêu và nhiệm vụ nghiên cứu của đề tài bao gồm:

  1. Xây dựng chương trình và mô hình tích hợp thị giác máy tính và xử lý ngôn ngữ tự nhiên nhằm hỗ trợ truyền tải nội dung và nâng cao trải nghiệm đọc truyện tranh.
  2. Tự động hóa quá trình nhận diện vùng chứa hộp thoại, trích xuất ký tự chữ từ hình ảnh trang truyện và dịch văn bản từ tiếng Anh sang tiếng Việt.
  3. Đảm bảo tính chính xác và hiệu quả của hệ thống thông qua việc ứng dụng các mô hình học sâu hiện đại và đánh giá bằng các thang đo chuẩn hóa.
  4. Xây dựng ứng dụng web hoàn chỉnh phục vụ hai đối tượng: người dùng đọc truyện song ngữ và quản trị viên quản lý nội dung.
  • Đối tượng nghiên cứu: Các thành phần trong trang truyện tranh (khung hình, hộp thoại thoại, văn bản tiếng Anh) và mô hình dịch máy song ngữ Anh - Việt.
  • Phạm vi nghiên cứu: Bài toán dịch tự động cặp ngôn ngữ Anh - Việt cho dữ liệu truyện tranh, tích hợp kiểm thử thực nghiệm trên nền tảng web tại TP. Hồ Chí Minh (tháng 6/2023).

Cơ sở lý thuyết và phương pháp

Khóa luận kết hợp ba nhóm lý thuyết và kỹ thuật học sâu chính: dịch máy nơ-ron (NMT), nhận dạng ký tự quang học (OCR) và phát hiện đối tượng (Object Detection).

1. Khung lý thuyết và mô hình áp dụng

  • Mô hình dịch máy Fairseq (Transformer): Tác giả phân tích hạn chế của mạng nơ-ron hồi quy (RNN) và LSTM truyền thống, bao gồm tốc độ huấn luyện chậm do tính chất tuần tự (không tận dụng được khả năng tính toán song song của GPU) và hiện tượng suy giảm/bùng nổ gradient (Gradient Vanishing/Exploding) khi xử lý các câu dài. Khóa luận sử dụng kiến trúc Transformer (Vaswani et al., 2017) với các thành phần:
    • Input Embedding & Positional Encoding: Biểu diễn từ thành vector và bổ sung thông tin vị trí thông qua các hàm sóng sin/cos: $$PE_{(pos, 2i)} = \sin\left(\frac{pos}{10000^{2i/d_{model}}}\right)$$ $$PE_{(pos, 2i+1)} = \cos\left(\frac{pos}{10000^{2i/d_{model}}}\right)$$
    • Cơ chế Self-Attention và Multi-Head Attention: Tính toán mức độ liên kết giữa các từ thông qua ba ma trận Query ($Q$), Key ($K$) và Value ($V$): $$Z = \text{softmax}\left(\frac{Q K^T}{\sqrt{d_k}}\right)V$$
    • Masked Multi-Head Attention ở Decoder: Che giấu các từ phía sau trong chuỗi đích để mô hình chỉ dựa vào các từ đã dịch trước đó khi sinh từ tiếp theo.
  • Mô hình nhận dạng ký tự PaddleOCR: Phát triển bởi Baidu, sử dụng kết hợp hai phong cách kiến trúc: Bảng đen (Blackboard) để tích hợp đa thuật toán và Ống dẫn - Bộ lọc (Pipe-and-Filter) để xử lý dữ liệu tuần tự qua 3 bước: Phát hiện văn bản (Text Detection), Phân loại góc/hướng (Angle Classification) và Nhận dạng văn bản (Text Recognition). Hệ thống sử dụng mô hình siêu nhẹ kích thước khoảng 8.4 MB.
  • Mô hình phát hiện đối tượng YOLOv8: Phát hiện vùng hộp thoại (speech bubbles) dựa trên nguyên lý chia lưới ảnh ($S \times S$), gán nhãn vector dự đoán xác suất đối tượng ($P_c$), tọa độ tâm ($B_x, B_y$), kích thước ($B_w, B_h$) và lớp ($C$). Thuật toán sử dụng kỹ thuật Non-Maximum Suppression (NMS) với độ đo giao thoa trên hội (IoU) để loại bỏ các hộp trùng lặp: $$\text{IoU} = \frac{\text{Diện tích giao nhau giữa } B_1 \text{ và } B_2}{\text{Diện tích liên hợp giữa } B_1 \text{ và } B_2}$$ Đồng thời, mô hình ứng dụng Anchor Boxes với thuật toán phân cụm k-means dựa trên khoảng cách $d(box, centroid) = 1 - \text{IoU}(box, centroid)$.

2. Phương pháp nghiên cứu và nguồn dữ liệu

  • Thu thập dữ liệu: Sử dụng thư viện BeautifulSoup và Selenium trên nền tảng Python để cào dữ liệu truyện tranh từ các website, trích xuất cấu trúc danh sách truyện, chapter, đường dẫn ảnh và lưu trữ metadata dưới định dạng JSON.
  • Tiền xử lý và gán nhãn: Huấn luyện mô hình tách từ SentencePiece (SPM) cho mô hình dịch Fairseq; sử dụng nền tảng Roboflow để gán nhãn bounding box cho các hộp thoại truyện tranh, xuất định dạng dữ liệu huấn luyện YOLOv8.
  • Huấn luyện và đánh giá: Huấn luyện mô hình YOLOv8 qua 100 epochs; đánh giá mô hình dịch Fairseq qua các checkpoint huấn luyện trước (pre-trained) và sau khi tinh chỉnh (fine-tune) bằng thang đo BLEU score.

Thiết kế và triển khai

Hệ thống được thiết kế theo mô hình phân tầng hoàn chỉnh, bao gồm pipeline xử lý AI và ứng dụng web quản trị/đọc truyện.

Phân hệ / Thành phần Công nghệ / Công cụ sử dụng Chức năng chi tiết trong hệ thống
Phát hiện hộp thoại YOLOv8, Roboflow Nhận diện tọa độ bounding box của các khung hội thoại trong từng trang truyện tranh.
Nhận dạng chữ (OCR) PaddleOCR (PaddlePaddle) Trích xuất chuỗi ký tự tiếng Anh từ các vùng ảnh hộp thoại đã được cắt.
Dịch máy nơ-ron Fairseq (Facebook AI), SentencePiece Dịch các câu tiếng Anh đã nhận dạng sang tiếng Việt theo ngữ cảnh.
Thu thập dữ liệu Python, BeautifulSoup, Selenium Tự động hóa quá trình cào thông tin truyện, tải chapter và ảnh truyện tranh.
Back-End Web Laravel (PHP), Flask (Python) Laravel xử lý logic điều hướng, xác thực, quản lý CSDL; Flask đóng vai trò API phục vụ các mô hình AI.
Front-End Web HTML, CSS, JavaScript, Bootstrap Xây dựng giao diện đọc truyện đa thiết bị và giao diện trang quản trị.
Cơ sở dữ liệu MySQL Lưu trữ thông tin người dùng, danh mục truyện, trạng thái bản dịch và các chương truyện.
Môi trường & Quản lý mã nguồn Visual Studio Code, GitHub Môi trường lập trình, kiểm thử và hệ thống quản lý phiên bản mã nguồn.

Quy trình thực thi của hệ thống diễn ra tuần tự qua các bước:

  1. Quản trị viên tải ảnh truyện tranh hoặc hệ thống tự động cào ảnh qua crawler.
  2. Mô-đun YOLOv8 quét toàn bộ trang ảnh để phát hiện vị trí các hộp thoại.
  3. PaddleOCR tiến hành xoay chỉnh góc và trích xuất chuỗi văn bản tiếng Anh trong từng hộp thoại.
  4. Chuỗi ký tự được đưa qua mô hình Fairseq (đã fine-tune) để dịch sang tiếng Việt.
  5. Dữ liệu dịch được ghép nối, lưu trữ vào MySQL và hiển thị lên giao diện đọc truyện cho người dùng cuối.

Nội dung chính theo từng chương

Chương 1: Giới thiệu và mô tả đề tài tổng quan

Chương 1 trình bày tổng quan lý thuyết về dịch thuật và nhận diện ảnh. Tác giả phân loại 4 phương pháp dịch máy chính trong lịch sử: dịch máy dựa trên từ điển, dịch máy dựa trên luật ngữ pháp (rule-based), dịch máy dựa trên thống kê (SMT) và dịch máy dựa trên học sâu (NMT). Về nhận diện ảnh, chương phân biệt rõ giữa phân loại hình ảnh (CNN), phát hiện đối tượng (R-CNN, YOLO), phân đoạn hình ảnh (U-Net, Mask R-CNN, PaddleOCR) và mô hình học sâu đa nhiệm. Chương này phân tích các đặc thù của dịch thuật (tính đa chiều, phụ thuộc văn hóa, ngữ cảnh và tính sáng tạo) cùng các yêu cầu của nhận diện ảnh (độ tin cậy, tính thời gian thực, khả năng diễn giải). Cuối chương nêu rõ lý do chọn đề tài xuất phát từ nhu cầu thực tiễn của độc giả truyện tranh và xác định mục tiêu xây dựng công cụ tự động dịch truyện tranh song ngữ Anh-Việt.

Chương 2: Cơ sở lý thuyết và các công nghệ sử dụng

Chương 2 mô tả chi tiết toàn bộ ngăn xếp công nghệ (tech stack) và cấu trúc toán học của các mô hình:

  • Công nghệ phát triển web: Giới thiệu HTML, CSS, JavaScript, Bootstrap cho Front-End; Laravel (mô hình MVC, Eloquent ORM, Blade template, Migration/Seeder) và Flask (Jinja2, tích hợp thư viện Python) cho Back-End; hệ quản trị CSDL MySQL.
  • Công cụ thu thập dữ liệu: Phân tích cơ chế hoạt động của Selenium (WebDriver, Grid, IDE) và BeautifulSoup trong việc bóc tách cây DOM HTML/XML.
  • Kiến trúc Fairseq Transformer: Phân tích cơ chế Self-Attention, công thức Positional Encoding, Multi-Head Attention, khối Residual & Layer Normalization, mạng Feed Forward và cơ chế Masked Attention ở Decoder.
  • Kiến trúc PaddleOCR: Trình bày chi tiết kiến trúc Bảng đen kết hợp Ống dẫn - Bộ lọc, sơ đồ container theo mô hình C4 (PaddleHub Server và thiết bị di động Paddle-Lite), cùng 6 mô-đun luồng dữ liệu (Data, Model, Loss, Optimizer, Post-process, Metric).
  • Kiến trúc YOLOv8: Trình bày nguyên lý chia ô lưới, cấu trúc tensor $S \times S \times (B \times 5 + C)$, thuật toán lọc hộp Non-Maximum Suppression (NMS) với ngưỡng IoU và kỹ thuật Anchor Boxes sử dụng k-means.

Chương 3: Phân tích thiết kế và thực nghiệm

Chương 3 tập trung vào quá trình hiện thực hóa giải pháp và tiến hành thực nghiệm:

  • Xử lý mô hình dịch thuật Fairseq: Khởi tạo thư viện, xây dựng và huấn luyện mô hình SentencePiece (SPM), tokenize tập dữ liệu, phân chia tập train/test, đánh giá 10 checkpoint gần nhất của mô hình pre-trained và thực hiện tinh chỉnh (fine-tuning).
  • Thu thập dữ liệu thực tế: Sử dụng BeautifulSoup truy cập danh sách truyện, lấy thông tin từng chapter, tải ảnh truyện tranh tự động và xuất dữ liệu thông tin dưới dạng file JSON.
  • Huấn luyện nhận diện hộp thoại YOLOv8: Đưa dữ liệu ảnh lên nền tảng Roboflow, tiến hành gán nhãn bounding box cho từng ảnh, xuất bộ dữ liệu chuẩn định dạng YOLOv8 và chạy thực nghiệm huấn luyện qua 100 epochs với các biểu đồ độ đo đánh giá.
  • Thiết kế hệ thống và giao diện: Xây dựng biểu đồ tuần tự (Sequence Diagram) cho các luồng xử lý Admin/User; thiết kế cơ sở dữ liệu bảng; xây dựng giao diện hiển thị danh sách tập truyện, trang đọc truyện và các trang quản trị (quản lý truyện, quản lý người dùng, thêm truyện mới, cập nhật tình trạng truyện, quản lý tập truyện).

Chương 4: Kết quả đạt được và hướng phát triển

Chương 4 tổng kết các kết quả đạt được của khóa luận: xây dựng thành công ứng dụng tự động dịch truyện tranh Anh - Việt tích hợp chuỗi mô hình học sâu (YOLOv8 phát hiện hộp thoại, PaddleOCR nhận dạng văn bản, Fairseq Transformer dịch máy) cùng hệ thống web Laravel/Flask trực quan. Chương cũng chỉ ra các định hướng phát triển tiếp theo nhằm hoàn thiện ứng dụng.


Kết quả và đóng góp

1. Kết quả thực nghiệm chính

  • Xây dựng pipeline xử lý tự động hoàn chỉnh: Kết nối thành công luồng xử lý liên tục từ ảnh truyện tranh đầu vào $\rightarrow$ phát hiện hộp thoại (YOLOv8) $\rightarrow$ bóc tách ký tự tiếng Anh (PaddleOCR) $\rightarrow$ dịch thuật ngữ cảnh sang tiếng Việt (Fairseq Transformer).
  • Huấn luyện mô hình YOLOv8: Hoàn thành quy trình gán nhãn dữ liệu hộp thoại trên Roboflow và huấn luyện mô hình phát hiện đối tượng qua 100 epochs, đạt các chỉ số hội tụ ổn định trên tập kiểm thử.
  • Tinh chỉnh mô hình dịch Fairseq: Huấn luyện thành công mô hình SPM (SentencePiece) cho việc tokenize dữ liệu song ngữ, thực hiện fine-tuning từ mô hình pre-trained và đánh giá chất lượng qua 10 checkpoint gần nhất bằng độ đo BLEU score.
  • Triển khai ứng dụng web quản trị và đọc truyện: Hoàn thiện hệ thống web đa chức năng với đầy đủ các phân hệ quản lý người dùng, quản lý truyện, cập nhật tập truyện và giao diện đọc truyện song ngữ thân thiện.

2. Đóng góp của đề tài

  • Tác giả đã tổng hợp và tích hợp các kỹ thuật hiện đại trong thị giác máy tính và xử lý ngôn ngữ tự nhiên để giải quyết bài toán dịch truyện tranh song ngữ mang tính đặc thù.
  • Đề xuất một kiến trúc hệ thống kết hợp linh hoạt giữa hai framework Back-End: Laravel (quản lý người dùng, CSDL, giao diện web) và Flask (phục vụ xử lý các tác vụ AI chuyên sâu).
  • Cung cấp tài liệu chi tiết về quy trình cào dữ liệu truyện tranh, chuẩn hóa dữ liệu hộp thoại bằng Roboflow và phương pháp triển khai kiến trúc Transformer/PaddleOCR trong thực tế.

Hạn chế và hướng nghiên cứu tiếp

1. Hạn chế

Dựa trên phạm vi và nội dung được trình bày trong khóa luận:

  • Quá trình nhận dạng chữ (OCR) có thể gặp sai sót đối với các trang truyện sử dụng font chữ nghệ thuật cách điệu, chữ viết tay hoặc văn bản nằm ngoài hộp thoại (sound effects/SFX).
  • Mô hình dịch máy phụ thuộc vào chất lượng của chuỗi ký tự đầu ra từ bước OCR; lỗi nhận diện ký tự sẽ dẫn đến việc dịch sai ngữ nghĩa câu thoại.
  • Pipeline xử lý qua nhiều mô hình nối tiếp (YOLO $\rightarrow$ OCR $\rightarrow$ NMT) đòi hỏi tài nguyên tính toán và thời gian xử lý nhất định trên từng trang ảnh.

2. Hướng nghiên cứu tiếp

  • Nâng cao độ chính xác của mô hình phát hiện hộp thoại và nhận diện ký tự trên các bố cục truyện tranh phức tạp và font chữ đa dạng.
  • Mở rộng tập dữ liệu huấn luyện song ngữ chuyên ngành truyện tranh để nâng cao chỉ số BLEU score và độ tự nhiên của văn bản tiếng Việt.
  • Tối ưu hóa hiệu năng xử lý của toàn bộ pipeline để giảm độ trễ, hướng tới khả năng dịch tức thời trong thời gian thực.
  • Mở rộng hỗ trợ thêm nhiều cặp ngôn ngữ khác (ví dụ: Nhật - Việt, Hàn - Việt, Trung - Việt) và phát triển ứng dụng trên nền tảng di động.

Giá trị tham khảo

Báo cáo khóa luận này là tài liệu tham khảo hữu ích cho:

  • Sinh viên và nghiên cứu sinh ngành Hệ thống Thông tin, Khoa học Máy tính và Trí tuệ Nhân tạo: Cung cấp tài liệu tổng quan và chuyên sâu về cơ chế toán học của Transformer (Self-Attention, Multi-Head Attention, Positional Encoding), kiến trúc phần mềm của PaddleOCR (Blackboard, Pipe-and-Filter, C4 Model) và nguyên lý hoạt động của YOLO.
  • Người phát triển ứng dụng AI thực tế: Cung cấp hướng dẫn thực hành từ việc cào dữ liệu (BeautifulSoup, Selenium), xử lý gán nhãn (Roboflow), huấn luyện/tinh chỉnh mô hình (YOLOv8, Fairseq với SentencePiece) đến việc đóng gói và tích hợp vào hệ thống web (Laravel, Flask, MySQL).

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

1. Khóa luận sử dụng mô hình nào để định vị hộp thoại trong trang truyện tranh?
Tác giả sử dụng mô hình YOLOv8, được huấn luyện qua 100 epochs trên tập dữ liệu ảnh truyện tranh đã được gán nhãn bounding box thông qua nền tảng Roboflow.

2. Cơ chế nào giúp kiến trúc Transformer trong Fairseq khắc phục hạn chế của RNN và LSTM?
Transformer loại bỏ tính tuần tự bằng cách đưa toàn bộ câu vào cùng một lúc, tận dụng khả năng tính toán song song của GPU. Đồng thời, cơ chế Self-Attention cho phép mô hình nắm bắt trực tiếp mối quan hệ giữa các từ ở khoảng cách xa trong câu mà không bị ảnh hưởng bởi hiện tượng suy giảm gradient (Gradient Vanishing) như trên RNN/LSTM.

3. Kiến trúc phần mềm của thư viện PaddleOCR được thiết kế dựa trên các mẫu kiến trúc nào?
PaddleOCR kết hợp hai mẫu kiến trúc phần mềm: kiến trúc Bảng đen (Blackboard) để phối hợp nhiều nguồn tri thức/thuật toán giải quyết một bài toán cụ thể và kiến trúc Ống dẫn - Bộ lọc (Pipe-and-Filter) để xử lý tuần tự qua các công đoạn: phát hiện văn bản, phân loại góc và nhận dạng ký tự.

4. Dữ liệu huấn luyện cho mô hình dịch máy Fairseq được tiền xử lý như thế nào?
Dữ liệu song ngữ được tiền xử lý và tách từ bằng mô hình SentencePiece (SPM), sau đó tiến hành tokenize, chia tập train/test và thực hiện fine-tuning trên nền các checkpoint của mô hình pre-trained.

5. Hệ thống kết hợp những framework nào ở phía Back-End?
Hệ thống sử dụng đồng thời hai framework: Laravel (PHP) theo mô hình MVC để xử lý giao diện web, điều hướng, bảo mật và quản lý cơ sở dữ liệu MySQL; kết hợp cùng Flask (Python) để xây dựng dịch vụ API thực thi các mô hình Deep Learning.


Kết luận

Khóa luận tốt nghiệp của sinh viên Lê Quang Khải và Lê Thành Hiếu đã giải quyết thành công bài toán tự động hóa dịch truyện tranh song ngữ Anh - Việt bằng cách tích hợp chuỗi mô hình học sâu gồm YOLOv8, PaddleOCR và Fairseq Transformer. Đề tài không chỉ làm rõ cơ sở lý thuyết toán học và kiến trúc phần mềm của các mô hình thị giác máy tính và xử lý ngôn ngữ tự nhiên, mà còn hiện thực hóa thành công một hệ thống web hoàn chỉnh với Laravel, Flask và MySQL. Kết quả nghiên cứu mang lại giá trị ứng dụng thực tiễn cao, hỗ trợ đắc lực cho độc giả tiếp cận truyện tranh nước ngoài và cung cấp tài liệu tham khảo kỹ thuật giá trị cho các bài toán tích hợp AI vào công nghệ phần mềm.