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

Trong kỷ nguyên số hóa và sự bùng nổ của mạng Internet, khối lượng dữ liệu văn bản được tạo ra và chia sẻ mỗi ngày gia tăng với tốc độ nhanh chóng. Đi kèm với sự phong phú của dữ liệu là thách thức lớn liên quan đến hành vi sao chép nội dung văn bản. Việc sao chép không chỉ làm suy giảm chất lượng thông tin học thuật, nghiên cứu mà còn trực tiếp xâm phạm các quy định về quyền tác giả và đạo đức xuất bản. Trên thực tế, nhiều cá nhân và tổ chức dễ dàng tiếp cận các công cụ kỹ thuật để sao chép văn bản từ nhiều nguồn khác nhau, gây khó khăn cho việc kiểm soát tính nguyên bản và xác minh nguồn gốc xuất xứ của tài liệu.

Trước bối cảnh đó, các giải pháp truyền thống chủ yếu dựa trên kỹ thuật tìm kiếm và so khớp chuỗi (string matching). Tuy nhiên, cách tiếp cận này chỉ mang lại hiệu quả khi đối tượng kiểm tra là các đoạn văn bản sao chép nguyên văn. Khi đối tượng sao chép áp dụng các thủ thuật chỉnh sửa cú pháp, thay đổi trật tự câu từ hoặc thay thế các từ vựng bằng từ đồng nghĩa, các giải pháp so khớp chuỗi gần như mất tác dụng do không nắm bắt được ý nghĩa ngữ nghĩa tiềm ẩn bên dưới bề mặt ký tự. Vì vậy, việc áp dụng các mô hình học máy và đặc biệt là học sâu (deep learning) nhằm giải quyết bài toán đo độ tương đồng văn bản ở mức độ ngữ nghĩa đã trở thành một nhu cầu cấp thiết.

Đồ án tốt nghiệp của sinh viên Cấn Ngọc Bình, thuộc Khoa An toàn thông tin, Học viện Công nghệ Bưu chính Viễn thông (người hướng dẫn: PGS. Hoàng Xuân Dậu, bảo vệ tháng 1/2024), tập trung nghiên cứu đề tài: "Phát hiện độ tương đồng văn bản sử dụng học sâu". Mục tiêu và nhiệm vụ nghiên cứu của đồ án được xác định rõ ràng:

  1. Nghiên cứu tổng quan về bài toán đo độ tương đồng văn bản và phân tích các đặc trưng ngôn ngữ học riêng biệt của văn bản tiếng Việt.
  2. Khảo sát, phân tích các phương pháp biểu diễn văn bản và tính toán khoảng cách vector từ các thuật toán truyền thống đến các mô hình học máy hiện đại.
  3. Nghiên cứu chuyên sâu các kiến trúc mạng nơ-ron học sâu tiên tiến phục vụ xử lý ngôn ngữ tự nhiên, trọng tâm là kiến trúc Transformer, mô hình BERT, RoBERTa và mô hình ngôn ngữ tiếng Việt PhoBERT.
  4. Xây dựng quy trình xử lý, huấn luyện mô hình dựa trên PhoBERT và triển khai thực nghiệm mô-đun phát hiện độ tương đồng giữa các đoạn văn bản tiếng Việt.

Đối tượng nghiên cứu của đồ án là bài toán phát hiện độ tương đồng văn bản tiếng Việt ở các cấp độ từ, câu và đoạn văn bản. Phạm vi nghiên cứu tập trung vào việc xử lý các đặc thù của tiếng Việt (tính không biến hình từ, cấu tạo từ ghép, từ láy, hệ thống thanh điệu và từ đồng nghĩa), áp dụng mô hình biểu diễn ngữ cảnh chuyên sâu PhoBERT kết hợp phép đo tương đồng Cosine, từ đó thực nghiệm và đánh giá trên nền tảng tính toán PyTorch Lightning.

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

Đồ án xây dựng khung cơ sở lý thuyết bao quát từ các phương pháp cổ điển đến các mô hình học sâu hiện đại nhất trong lĩnh vực xử lý ngôn ngữ tự nhiên (NLP):

  • Khái niệm độ tương đồng văn bản: Tác giả phân định rõ hai khái niệm cốt lõi: độ tương đồng cú pháp (dựa trên tỷ lệ từ vựng xuất hiện chung) và độ tương đồng ngữ nghĩa (dựa trên mức độ tương quan về nội dung, ý nghĩa của văn bản). Ở cấp độ câu, bài toán quy về việc tìm giá trị hàm số $S(s_i, s_j) \in [0, 1]$, trong đó giá trị càng tiệm cận 1 thể hiện mức độ tương đồng ngữ nghĩa càng cao.
  • Các độ đo khoảng cách và tương đồng hình học:
    • Độ tương đồng Cosine (Cosine Similarity): Đo góc giữa hai vector đặc trưng $A$ và $B$ trong không gian tích vô hướng: $$\text{Cosine}(A, B) = \frac{\sum_{i=1}^n A_i B_i}{\sqrt{\sum_{i=1}^n A_i^2} \sqrt{\sum_{i=1}^n B_i^2}}$$
    • Khoảng cách Euclid (Euclidean Distance): Được mở rộng từ 1 chiều, 2 chiều đến không gian đa chiều $n$: $$d(p, q) = \sqrt{\sum_{i=1}^n (q_i - p_i)^2}$$
    • Khoảng cách Manhattan: Khoảng cách chuẩn $L_1$ tính bằng tổng giá trị tuyệt đối hiệu tọa độ giữa hai điểm: $$d(p, q) = \sum_{i=1}^n |x_i - y_i|$$
    • Chỉ mục Jaccard (Jaccard Index): Tỷ lệ giữa kích thước tập giao và tập hợp của hai tập văn bản: $$J(A, B) = \frac{|A \cap B|}{|A \cup B|}; \quad d_J(A, B) = 1 - J(A, B)$$
  • Các phương pháp biểu diễn vector văn bản (Word Embedding):
    • TF-IDF (Term Frequency - Inverse Document Frequency): Kết hợp tần suất xuất hiện của từ trong văn bản $TF(t, d)$ và nghịch đảo tần suất xuất hiện trong tập ngữ liệu $IDF(t, D) = \log \frac{|D|}{|{d \in D : t \in d}|}$.
    • Word2Vec: Biểu diễn từ phân tán trong không gian chiều thấp qua hai kiến trúc Skip-gram (dự đoán các từ ngữ cảnh dựa trên từ trung tâm) và CBOW (dự đoán từ trung tâm dựa trên tập từ ngữ cảnh xung quanh).
    • Doc2Vec (Paragraph Vector): Mở rộng từ Word2Vec cho cấp độ văn bản qua hai thuật toán PV-DM (Distributed Memory) và PV-DBOW (Distributed Bag of Words).
  • Mô hình học sâu và mô hình ngôn ngữ dựa trên Transformer:
    • Transformer: Đột phá với cơ chế tự chú ý (Self-Attention) và chú ý đa đầu (Multi-Head Attention), giải phóng sự phụ thuộc tuần tự của các mạng hồi quy RNN/LSTM; cơ chế mã hóa vị trí (Positional Encoding) dựa trên hàm sóng sin và cos; cấu trúc 6 khối Encoder và 6 khối Decoder.
    • BERT (Bidirectional Encoder Representations from Transformers): Mô hình học biểu diễn ngữ cảnh hai chiều qua hai tác vụ tiền huấn luyện là Masked Language Model (MLM - ẩn ngẫu nhiên 15% token) và Next Sentence Prediction (NSP - dự đoán liên kết giữa hai câu liên tiếp qua token đặc biệt [CLS] và [SEP]).
    • RoBERTa (Robustly optimized BERT approach): Phiên bản tối ưu hóa của BERT thông qua việc loại bỏ tác vụ NSP, kéo dài chuỗi dữ liệu đầu vào và huấn luyện trên quy mô ngữ liệu lớn hơn.
    • PhoBERT: Mô hình ngôn ngữ chuyên sâu cho tiếng Việt dựa trên kiến trúc RoBERTa, sử dụng bộ công cụ tách từ VnCoreNLP và thuật toán tách từ con fastBPE.

Phương pháp nghiên cứu thực nghiệm của đồ án được triển khai theo quy trình khoa học: tổng quan tài liệu học thuật quốc tế; thu thập dữ liệu văn bản; tiền xử lý và tách từ tiếng Việt; nạp dữ liệu vào mô hình học sâu để tinh chỉnh (fine-tuning); trích xuất vector biểu diễn ngữ nghĩa của các câu và tính toán độ tương đồng thông qua hàm Cosine similarity.

Nguồn dữ liệu được phân tích trong đồ án gồm hai phần:

  1. Ngữ liệu tiền huấn luyện của PhoBERT: Bao gồm 20GB dữ liệu văn bản tiếng Việt thuần túy, trong đó 1GB trích xuất từ Wikipedia tiếng Việt và 19GB thu thập từ các trang tin tức báo chí tiếng Việt, tạo ra khoảng 145 triệu câu đã tách từ (~3 tỷ đơn vị từ).
  2. Dữ liệu thực nghiệm của đồ án: Tập hợp các cặp câu và đoạn văn bản tiếng Việt được thu thập, tiền xử lý và đưa vào DataLoader để phục vụ quá trình tinh chỉnh và kiểm định mô hình.

Thiết kế và triển khai

Do đồ án thuộc định hướng xây dựng hệ thống phần mềm và ứng dụng mô hình học sâu kỹ thuật, tác giả đã trình bày chi tiết kiến trúc và các mô-đun triển khai thực tế:

  • Kiến trúc tổng thể của hệ thống:
    • Luồng huấn luyện (Training Pipeline): Dữ liệu thô (Raw Data) $\rightarrow$ Tiền xử lý (Data Pre-processing) $\rightarrow$ Tách từ (Tokenizer với VnCoreNLP) $\rightarrow$ Huấn luyện mô hình (Training with PhoBERT) $\rightarrow$ Mô hình hoàn thiện (Trained Model).
    • Luồng so sánh tương đồng (Inference Pipeline): Đầu vào gồm 2 câu hoặc đoạn văn bản $\rightarrow$ Đưa qua mô hình đã huấn luyện (Trained Model) để trích xuất vector biểu diễn (Vector representation of 2 sentences) $\rightarrow$ Tính toán độ tương đồng qua hàm khoảng cách Cosine $\rightarrow$ Xuất ra điểm số tương đồng (Similarity score).
  • Nền tảng công nghệ và thư viện:
    • Ngôn ngữ lập trình: Python.
    • Framework học sâu: PyTorch kết hợp PyTorch Lightning (giúp chuẩn hóa các bước huấn luyện, kiểm thử và tối ưu hóa mã nguồn).
    • Công cụ xử lý tiếng Việt: VnCoreNLP (sử dụng thành phần RDRSegmenter để phân đoạn từ chính xác).
    • Thuật toán mã hóa từ con: fastBPE.
    • Môi trường thực thi: Nền tảng Google Colab liên kết Google Drive để lưu trữ và quản lý tài nguyên.
  • Các mô-đun chương trình thành phần:
    • Mô-đun gắn kết lưu trữ: Kết nối môi trường Google Drive vào Colab để truy xuất mã nguồn và dữ liệu bền vững.
    • Mô-đun tích hợp VnCoreNLP: Tải và khởi chạy công cụ phân đoạn từ tự động cho văn bản tiếng Việt.
    • Mô-đun quản lý dữ liệu (DataLoader): Xử lý định dạng dữ liệu đầu vào, chia lô (batch) và cấp phát dữ liệu đồng bộ cho quá trình đào tạo.
    • Mô-đun huấn luyện (Training Module): Cấu hình chi tiết các hàm thực thi gồm training_step và valid_step trên PyTorch Lightning.
    • Mô-đun phân tích và thống kê: Thống kê và vẽ biểu đồ phân phối độ dài của các từ trong tập dữ liệu thu thập được.
    • Mô-đun kiểm thử và trực quan hóa: Tính toán độ chính xác và vẽ biểu đồ thể hiện sự biến thiên độ chính xác tương ứng với các ngưỡng cắt (threshold) cụ thể.
    • Mô-đun so sánh văn bản: Nhận diện và tính toán độ tương đồng giữa hai đoạn văn bản bất kỳ theo thời gian thực.

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

Chương 1: Tổng quan về phát hiện tương đồng văn bản

Chương 1 mở đầu bằng việc phân tích bối cảnh bùng nổ dữ liệu trực tuyến và những hệ lụy của hành vi sao chép văn bản đối với quyền tác giả. Tác giả chỉ ra nhược điểm cốt tử của các giải pháp so khớp chuỗi ký tự truyền thống khi đối diện với các biến thể văn bản tinh vi.

Tiếp đó, chương tập trung phân tích sâu sắc các đặc trưng ngôn ngữ học của tiếng Việt tác động trực tiếp đến việc xử lý trên máy tính:

  • Đặc điểm cấu tạo: Tiếng Việt là ngôn ngữ đơn lập, không biến hình từ và mang tính âm tiết tính; mỗi "tiếng" là một âm tiết tách rời vừa là đơn vị ngữ âm vừa là đơn vị cơ sở có nghĩa. Từ mới được sản sinh chủ yếu qua hai phương thức ghép từ (đất nước, máy bay, nhà lầu xe hơi) và từ láy.
  • Ngữ pháp tiếng Việt: Không biến đổi hình thái từ, ngữ pháp phụ thuộc chặt chẽ vào trật tự từ, hư từ và ngữ điệu (thường được biểu diễn bằng dấu câu trên văn bản viết).
  • Từ đồng nghĩa: Hiện tượng ngôn ngữ phong phú tạo thành các nhóm từ đồng nghĩa (ví dụ: dễ, dễ dàng, dễ dãi), gây thách thức lớn cho các thuật toán so khớp văn bản không hiểu ngữ cảnh.
  • Đặc điểm chính tả: Tiếng Việt sử dụng bảng chữ cái gồm 29 chữ cái, 6 thanh điệu (ngang, sắc, huyền, ngã, nặng, hỏi), dấu cách dùng để phân tách âm tiết (chứ không phải phân tách từ hoàn chỉnh như tiếng Anh), dấu ngữ tố ("ă", "ơ"), và dấu gạch ngang phân tách từ trong văn cảnh đặc thù.

Chương 1 cũng định nghĩa cụ thể bài toán đo tương đồng văn bản, tương đồng câu với giá trị $S(s_i, s_j) \in [0, 1]$, đồng thời liệt kê 6 lĩnh vực ứng dụng thực tiễn: E-learning và giáo dục, tìm kiếm web, quản lý nội dung mạng xã hội, chấm điểm nghiên cứu khoa học, phân loại sự kiện tin tức, và tối ưu hóa nội dung truyền thông quảng cáo.

Phần tiếp theo của chương trình bày toán học chặt chẽ các công thức đo khoảng cách: Cosine, Euclid (từ 1 chiều đến $n$ chiều), Manhattan và chỉ mục Jaccard. Các phương pháp biểu diễn vector văn bản kinh điển cũng được làm rõ cơ chế: TF-IDF cùng các công thức tính TF, IDF; Word2Vec với hai mô hình mạng nơ-ron Skip-gram và CBOW; Doc2Vec với hai biến thể PV-DM và PV-DBOW. Cuối chương, tác giả tổng thuật hai nghiên cứu học thuật quốc tế tiêu biểu:

  1. Nghiên cứu của Tạp chí quốc tế về những tiến bộ trong tin học thông minh (2018): Khảo sát 4 nhóm thuật toán tương đồng (String-based, Corpus-based, Knowledge-based, Hybrid) và đánh giá trên 3 cặp từ mẫu ("book" - "cook", "car" - "wheel", "antique" - "ancient"). Kết quả khẳng định phương pháp dựa trên ngữ nghĩa mang lại sự thông minh và chính xác cao nhất dù phụ thuộc vào tài nguyên ngôn ngữ.
  2. Nghiên cứu khảo sát từ Tạp chí Khoa học và Công nghệ Ấn Độ (2019): Tổng quan toàn bộ các phương pháp so sánh câu từ cấp độ ký tự, từ, ngữ liệu, nhúng vector cho đến cấu trúc đồ thị tri thức, phân tích rõ ưu nhược điểm về hiệu năng và chi phí tính toán của từng hướng tiếp cận.

Chương 2: Phát hiện độ tương đồng văn bản sử dụng học sâu

Chương 2 đóng vai trò then chốt về mặt lý thuyết mô hình của đồ án. Tác giả mở đầu bằng việc phân biệt rõ giữa học máy (Machine Learning) và học sâu (Deep Learning). Học máy được hệ thống hóa theo hai góc độ: phân loại theo nhiệm vụ (Hồi quy, Phân lớp, Phân cụm) và phân loại theo phương thức học (Học có giám sát, Học không giám sát, Học bán giám sát, Học tăng cường). Điểm vượt trội của học sâu được chỉ rõ là khả năng tự động học các biểu diễn đặc trưng phân phối từ dữ liệu phi cấu trúc phức tạp thông qua các lớp nơ-ron trừu tượng nhiều tầng, loại bỏ sự phụ thuộc vào các bước trích chọn đặc trưng thủ công của con người.

Nội dung trọng tâm tiếp theo là việc mổ xẻ chi tiết các kiến trúc học sâu mang tính cách mạng:

  • Kiến trúc Transformer (Vaswani et al., 2017): Cấu trúc gồm 6 khối Encoder và 6 khối Decoder. Khối Encoder bao gồm hai lớp cơ bản: cơ chế chú ý Multi-Head Attention và mạng nơ-ron truyền thẳng (Feed-Forward Network - FNN), tích hợp các liên kết tắt (skip connection) và chuẩn hóa tầng (Layer Normalization). Cơ chế Scaled Dot-Product Attention được thiết lập theo công thức: $$\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{Q K^T}{\sqrt{d_k}}\right) V$$ Cơ chế Multi-Head Attention mở rộng khả năng học nhiều khía cạnh quan hệ giữa các từ qua nhiều "head" chú ý song song: $$\text{MultiHead}(Q, K, V) = \text{Concat}(\text{head}1, \dots, \text{head}h) W^O$$ Thuật toán Positional Encoding giải quyết bài toán phi tuần tự của Transformer bằng cách tính vector vị trí cộng trực tiếp vào vector nhúng từ: $$PE{(pos, 2i)} = \sin\left(\frac{pos}{10000^{2i/d{model}}}\right); \quad PE_{(pos, 2i+1)} = \cos\left(\frac{pos}{10000^{2i/d_{model}}}\right)$$
  • Mô hình BERT (Google Research, 2018): Kiến trúc tiền huấn luyện hai chiều dựa trên Transformer Encoder. Quá trình tiền huấn luyện tích hợp đồng thời hai chiến lược: Masked LM (MLM - che ngẫu nhiên 15% số từ để mô hình dự đoán từ gốc dựa trên ngữ cảnh hai phía) và Next Sentence Prediction (NSP - dự đoán câu tiếp theo dựa trên nhãn nhị phân IsNextSequence). Tác giả so sánh chi tiết hai phiên bản:
    • BERT-base: 110 triệu tham số, 12 layers, 12 attention heads, kích thước vector nhúng 768 chiều.
    • BERT-large: 340 triệu tham số, 24 layers, 16 attention heads, kích thước vector nhúng 1.024 chiều.
  • Mô hình RoBERTa: Tối ưu hóa BERT bằng cách loại trừ lớp NSP, tăng kích thước lô dữ liệu và độ dài chuỗi văn bản. Tác giả liệt kê các phiên bản: RoBERTa-Base (~125 triệu tham số), RoBERTa-Large (~355 triệu tham số) và RoBERTa-Large-mnli.
  • Mô hình PhoBERT: Phiên bản RoBERTa tối ưu cho tiếng Việt, được đào tạo trên 20GB ngữ liệu (1GB Wikipedia tiếng Việt và 19GB tin tức). Tác giả làm rõ quá trình tiền xử lý của PhoBERT: sử dụng công cụ RDRSegmenter của VnCoreNLP tạo ra 145 triệu câu (~3 tỷ từ) và dùng fastBPE phân đoạn thành các từ con; chiều dài chuỗi tối đa là 256 từ; thuật toán tối ưu hóa Adam; huấn luyện trên 4 GPU V100 16GB với kích thước batch 1.024 hoặc 512 trong 40 epochs. PhoBERT có hai phiên bản gồm PhoBERT-base (12 khối Transformer) và PhoBERT-large (24 khối Transformer).

Cuối chương, tác giả xây dựng mô hình phát hiện tương đồng văn bản tiếng Việt dựa trên PhoBERT: dữ liệu cặp câu sau khi tiền xử lý và tách từ qua VnCoreNLP được đưa vào huấn luyện tinh chỉnh để tạo ra "Trained Model". Khi kiểm tra, hai câu đầu vào được mô hình trích xuất thành hai vector ngữ cảnh và đưa qua hàm tính độ tương đồng Cosine để xác định điểm tương quan.

Chương 3: Cài đặt và triển khai

Chương 3 tập trung vào khía cạnh thực nghiệm kỹ thuật của đề tài:

  • Công cụ và môi trường: Cài đặt toàn bộ hệ thống bằng ngôn ngữ Python, sử dụng hai thư viện học sâu chủ lực là PyTorch và PyTorch Lightning, chạy trên nền tảng máy ảo Google Colab và tích hợp đồng bộ dữ liệu với Google Drive.
  • Xây dựng các mô-đun mã nguồn:
    • Mô-đun tải và khởi chạy thư viện phân tách từ chuyên dụng VnCoreNLP.
    • Mô-đun nạp dữ liệu và cấu hình DataLoader phục vụ quá trình huấn luyện mô hình theo từng batch.
    • Mô-đun cấu hình quá trình huấn luyện gồm training_step và valid_step được chuẩn hóa trên cấu trúc của PyTorch Lightning.
    • Mô-đun thống kê phân tích tập ngữ liệu: thống kê số lượng và độ dài của các từ trong tập dữ liệu thử nghiệm, vẽ biểu đồ phân phối độ dài từ.
  • Kiểm thử và đánh giá mô hình:
    • Tác giả thực hiện khảo sát độ chính xác của mô hình tương ứng với từng giá trị ngưỡng (threshold) cụ thể, trực quan hóa kết quả dưới dạng biểu đồ để xác định ngưỡng cắt tối ưu cho bài toán phân loại tương đồng.
    • Xây dựng mô-đun thử nghiệm tính toán độ tương đồng thực tế giữa hai đoạn văn bản tùy ý, kiểm nghiệm khả năng trích xuất vector ngữ nghĩa và trả về điểm số tương đồng theo thời gian thực.

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

Đồ án đã tổng hợp và trích xuất các thông số kỹ thuật, cấu hình mô hình học sâu và hệ thống các phương pháp đo lường tương đồng văn bản có trong văn bản:

Bảng 1: Bảng so sánh thông số các kiến trúc học sâu được phân tích trong đồ án

Mô hình Số lượng tham số Số khối Encoder (Layers) Số Attention Heads Kích thước ẩn (Hidden Dimension) Đặc điểm huấn luyện cốt lõi
BERT-base ~110 triệu 12 12 768 chiều Pre-training hai chiều với MLM (15% mask) và NSP
BERT-large ~340 triệu 24 16 1.024 chiều Tăng gấp đôi số tầng và kích thước vector biểu diễn
RoBERTa-Base ~125 triệu - - - Loại bỏ NSP, tăng kích thước batch và độ dài chuỗi
RoBERTa-Large ~355 triệu - - - Huấn luyện trên tập ngữ liệu văn bản quy mô lớn
PhoBERT-base - 12 - - Huấn luyện trên 20GB tiếng Việt, tối đa 256 từ/chuỗi
PhoBERT-large - 24 - - Huấn luyện trên 4 GPU V100 16GB, 40 epochs với Adam

Bảng 2: Phân loại các nhóm phương pháp đo lường tương đồng văn bản theo khảo sát lý thuyết của đồ án

Nhóm tiếp cận Đại diện thuật toán tiêu biểu Ưu điểm chính Hạn chế chính
Dựa trên chuỗi (String-based) Jaro-Winkler, khoảng cách Edit, chuỗi con chung dài nhất (LCS) Độc lập với ngôn ngữ, xử lý tốt sao chép nguyên văn Bỏ qua hoàn toàn ngữ cảnh và ý nghĩa ngữ nghĩa của từ
Dựa trên ngữ liệu (Corpus-based) TF-IDF, Word2Vec, khoảng cách phân phối (KL, JS) Có nền tảng thống kê vững, áp dụng được cho nhiều ngôn ngữ Không nắm bắt đầy đủ ngữ nghĩa sâu trong ngữ cảnh cụ thể
Dựa trên kiến thức (Knowledge-based) Khai thác đồ thị tri thức, mạng ngữ nghĩa Hiểu sâu mối liên hệ giữa các khái niệm Phụ thuộc nghiêm ngặt vào chất lượng cơ sở tri thức
Học sâu ngữ nghĩa (Deep Semantic Matching) Transformer, BERT, RoBERTa, PhoBERT Nắm bắt quan hệ từ hai chiều, hiểu sâu ngữ cảnh ngữ nghĩa Đòi hỏi tài nguyên tính toán lớn, tính giải thích còn hạn chế
  • Giải pháp đề xuất của tác giả:
    • Đề xuất áp dụng kiến trúc PhoBERT làm xương sống để trích xuất vector ngữ nghĩa cho văn bản tiếng Việt thay thế cho các kỹ thuật nhúng từ tĩnh hoặc các thuật toán so khớp chuỗi truyền thống.
    • Tích hợp bộ tách từ VnCoreNLP nhằm giải quyết bài toán đặc trưng về âm tiết tính và ranh giới từ ghép/từ láy của tiếng Việt trước khi đưa vào mô hình học sâu.
    • Thiết lập quy trình đo tương đồng kết hợp giữa vector biểu diễn ngữ cảnh chuyên sâu của PhoBERT và hàm khoảng cách Cosine, kết hợp phân tích ngưỡng cắt (threshold) để đưa ra kết luận về mức độ trùng lặp.
  • Đóng góp của đồ án:
    • Hệ thống hóa một cách toàn diện và khoa học toàn bộ cơ sở lý luận về bài toán đo độ tương đồng văn bản từ cấp độ cú pháp đến ngữ nghĩa, từ đại số tuyến tính đến các mô hình mạng nơ-ron phức tạp.
    • Xây dựng hoàn chỉnh luồng thực thi kỹ thuật trên framework PyTorch Lightning, cung cấp giải pháp thực tế có khả năng nhận diện sự tương đồng văn bản tiếng Việt mà không bị đánh lừa bởi các thủ thuật thay từ đồng nghĩa hay biến đổi cấu trúc ngữ pháp.

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

  • Hạn chế:
    • Mô hình PhoBERT sử dụng trong đồ án có giới hạn độ dài chuỗi tối đa là 256 từ trong quá trình tiền huấn luyện, do đó việc xử lý các văn bản có độ dài lớn đòi hỏi phải phân đoạn, gây khó khăn cho việc nắm bắt ngữ cảnh toàn cục của tài liệu dài.
    • Các mô hình học sâu như BERT, RoBERTa và PhoBERT đòi hỏi tài nguyên tính toán phần cứng lớn (bộ nhớ GPU và thời gian huấn luyện cao), gây thách thức cho việc triển khai trên các thiết bị phổ thông hoặc môi trường hạn chế tài nguyên.
    • Phạm vi kiểm thử thực nghiệm trong đồ án chủ yếu tập trung vào việc đánh giá độ tương đồng giữa các câu và các đoạn văn bản ngắn, chưa mở rộng đánh giá chuyên sâu trên các văn bản học thuật hoặc tài liệu pháp lý đa trang phức tạp.
  • Hướng nghiên cứu tiếp:
    • Mở rộng nghiên cứu các cơ chế phân đoạn và tổng hợp vector đặc trưng nhằm xử lý hiệu quả bài toán đo độ tương đồng cho các tài liệu văn bản toàn văn có độ dài lớn.
    • Thực nghiệm và so sánh thêm các hàm khoảng cách hình học khác (khoảng cách Euclid, khoảng cách Manhattan) hoặc các hàm mất mát chuyên biệt cho bài toán tương tự văn bản ngữ nghĩa.
    • Mở rộng tập dữ liệu thử nghiệm trên nhiều lĩnh vực chuyên ngành khác nhau (y tế, pháp luật, kỹ thuật) để kiểm tra tính tổng quát hóa của mô hình.

Giá trị tham khảo

Đồ án tốt nghiệp là tài liệu tham khảo học thuật giá trị đối với các nhóm đối tượng cụ thể:

  • Sinh viên và học viên chuyên ngành An toàn thông tin, Công nghệ thông tin, Khoa học dữ liệu: Cung cấp nền tảng kiến thức bài bản về xử lý ngôn ngữ tự nhiên tiếng Việt, từ việc xử lý đặc thù ngôn ngữ học đến việc làm chủ các mô hình Transformer hiện đại.
  • Các nhà nghiên cứu làm đề tài về phát hiện đạo văn, tìm kiếm thông tin và phân loại văn bản: Đồ án cung cấp một khảo cứu chi tiết về các độ đo khoảng cách toán học, các kiến trúc mô hình ngôn ngữ lớn (BERT, RoBERTa, PhoBERT) và các kết quả khảo sát từ các bài báo khoa học quốc tế uy tín.
  • Kỹ sư phát triển phần mềm ứng dụng AI: Phần đáng tham khảo nhất là Chương 3 với toàn bộ mã nguồn kiến trúc và quy trình cài đặt thực tế trên framework PyTorch Lightning kết hợp bộ công cụ VnCoreNLP, có thể tái sử dụng trực tiếp làm khung sườn cho các ứng dụng so sánh văn bản tiếng Việt.

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

1. Tại sao đồ án không sử dụng các phương pháp so khớp chuỗi truyền thống để phát hiện tương đồng văn bản?
Các phương pháp so khớp chuỗi truyền thống chỉ hoạt động hiệu quả khi văn bản bị sao chép nguyên văn. Khi đối tượng sao chép áp dụng các biện pháp chỉnh sửa như thay thế bằng các từ đồng nghĩa hoặc xáo trộn trật tự câu từ trong đoạn văn, các thuật toán so khớp chuỗi hoàn toàn không thể phát hiện được do không nắm bắt được ý nghĩa ngữ nghĩa của văn bản.

2. Điểm đặc thù trong cấu tạo tiếng Việt nào được tác giả phân tích có ảnh hưởng lớn nhất đến việc xử lý văn bản trên máy tính?
Tiếng Việt là ngôn ngữ đơn lập, không biến hình từ và có tính âm tiết tính; mỗi "tiếng" là một âm tiết tách rời vừa mang tính ngữ âm vừa là đơn vị cơ sở có nghĩa. Từ tiếng Việt được cấu tạo chủ yếu qua phương thức ghép và láy, và dấu cách được dùng để phân tách các âm tiết chứ không phân tách ranh giới từ hoàn chỉnh, do đó bắt buộc phải sử dụng các công cụ phân đoạn từ chuyên dụng như VnCoreNLP trước khi đưa vào mô hình học sâu.

3. Hai chiến lược tiền huấn luyện cốt lõi của mô hình BERT được tác giả trình bày là gì?
Hai chiến lược tiền huấn luyện của BERT bao gồm:

  • Masked LM (MLM): Thay thế ngẫu nhiên 15% số từ trong chuỗi đầu vào bằng token [MASK] và huấn luyện mô hình dự đoán từ gốc dựa trên ngữ cảnh hai chiều xung quanh.
  • Next Sentence Prediction (NSP): Huấn luyện mô hình nhận diện xem câu thứ hai có phải là câu kế tiếp của câu thứ nhất trong văn bản gốc hay không thông qua token phân loại [CLS].

4. Mô hình PhoBERT được tiền huấn luyện trên tập dữ liệu có dung lượng và nguồn gốc như thế nào?
PhoBERT được tiền huấn luyện trên khoảng 20GB dữ liệu văn bản tiếng Việt, bao gồm 1GB ngữ liệu trích xuất từ Wikipedia tiếng Việt và 19GB ngữ liệu tin tức báo chí tiếng Việt. Tập dữ liệu này được phân đoạn bằng công cụ RDRSegmenter của VnCoreNLP, tạo ra khoảng 145 triệu câu đã được tách từ (tương đương khoảng 3 tỷ đơn vị từ).

5. Đồ án sử dụng framework và công cụ nào để triển khai cài đặt các mô-đun huấn luyện và kiểm thử?
Đồ án sử dụng ngôn ngữ lập trình Python, framework PyTorch kết hợp PyTorch Lightning để cấu hình luồng huấn luyện (training_step, valid_step), sử dụng công cụ VnCoreNLP để tách từ tiếng Việt, chạy trên môi trường điện toán đám mây Google Colab kết nối lưu trữ với Google Drive.

Kết luận

Đồ án tốt nghiệp "Phát hiện độ tương đồng văn bản sử dụng học sâu" của sinh viên Cấn Ngọc Bình đã giải quyết một cách bài bản và hệ thống bài toán nhận diện tương đồng văn bản tiếng Việt ở mức độ ngữ nghĩa. Bằng việc phân tích toàn diện các đặc trưng ngôn ngữ học của tiếng Việt và khảo cứu sâu sắc các kiến trúc mạng nơ-ron tiên tiến từ Transformer, BERT đến RoBERTa, tác giả đã đề xuất và triển khai thành công mô hình học sâu dựa trên PhoBERT. Kết quả thực nghiệm trên framework PyTorch Lightning kết hợp công cụ tách từ VnCoreNLP khẳng định tính khả thi và tiềm năng ứng dụng cao của các mô hình học biểu diễn ngữ cảnh trong các bài toán kiểm tra trùng lặp văn bản và bảo vệ bản quyền số.