Bối cảnh và vấn đề nghiên cứu
Lý do chọn đề tài và bối cảnh thực tiễn
Trong giai đoạn đại dịch Covid-19 bùng phát, các hoạt động giáo dục và sinh hoạt học thuật buộc phải chuyển đổi sang hình thức trực tuyến. Tình trạng giãn cách xã hội kéo dài đã gây ra nhiều trở ngại cho sinh viên, đặc biệt là sinh viên năm cuối trong quá trình thực hiện khóa luận tốt nghiệp. Việc tiếp cận nguồn tài liệu tham khảo từ các khóa trước nhằm tìm kiếm ý tưởng nghiên cứu gặp nhiều hạn chế do không thể đến trực tiếp thư viện.
Mặc dù hệ thống thư viện trực tuyến của Trường Đại học Công nghệ Thông tin (UIT) có lưu trữ khóa luận, nguồn tư liệu này bộc lộ một số nhược điểm như tài liệu chưa cập nhật kịp thời các đề tài mới, giao diện thao tác chưa tối ưu và khả năng tìm kiếm còn đơn giản. Các nguồn tài liệu trôi nổi trên không gian mạng cũng khan hiếm và thiếu tính cập nhật. Đặc biệt, hệ thống thư viện truyền thống chưa áp dụng các kỹ thuật máy học nhằm tự động phân loại, gắn nhãn đề tài. Xuất phát từ thực trạng đó, đề tài xây dựng nền tảng "Theses Share" kết hợp các mô hình xử lý ngôn ngữ tự nhiên được triển khai nhằm hỗ trợ sinh viên lưu trữ, chia sẻ và tra cứu luận văn trực tuyến.
Mục tiêu và nhiệm vụ nghiên cứu
Đề tài xác định ba mục tiêu cụ thể:
- Xây dựng ứng dụng web hoàn chỉnh cho phép sinh viên UIT đăng tải, chia sẻ và tra cứu các bài luận văn trực tuyến nhằm nắm bắt kịp thời các chủ đề học thuật xu hướng.
- Cung cấp giải pháp học tập từ xa hiệu quả trong thời điểm giãn cách xã hội và duy trì giá trị sử dụng lâu dài sau dịch, giúp người học tiết kiệm thời gian di chuyển.
- Giải quyết bài toán tự động phân loại và gán nhãn đa chủ đề (multi-label) cho các đề tài khóa luận thông qua các kỹ thuật học máy, khắc phục hạn chế phân loại thủ công của hệ thống thư viện hiện hành.
Đối tượng và phạm vi nghiên cứu
- Đối tượng nghiên cứu:
- Nền tảng phần mềm lưu trữ và chia sẻ luận văn dành cho sinh viên, có cơ chế phân quyền giữa người dùng ẩn danh và người dùng đã đăng ký tài khoản.
- Hệ thống tự động gán nhãn đa nhãn (multi-label classification) dựa trên văn bản tiêu đề và nội dung tóm tắt của khóa luận tốt nghiệp.
- Kỹ thuật tích hợp mô hình học máy vào ứng dụng web để tối ưu hóa việc phân loại nhãn (tags).
- Phạm vi nghiên cứu:
- Không gian và dữ liệu: Dữ liệu khóa luận tốt nghiệp và đồ án chuyên ngành thuộc các khoa của Trường Đại học Công nghệ Thông tin - Đại học Quốc gia TP.HCM.
- Chức năng hệ thống: Hỗ trợ tìm kiếm toàn văn, lọc đa tiêu chí (theo khoa, năm, thể loại), trình xem báo cáo định dạng PDF trực tuyến bằng canvas, quản lý đánh dấu (bookmark) và phân quyền chỉnh sửa/xóa bài đăng cho tác giả.
- Bài toán học máy: Tập trung vào bài toán phân loại đa nhãn tiếng Việt sử dụng phương pháp học có giám sát trên tập dữ liệu thực tế gồm 700 khóa luận.
Phương pháp thực hiện
Nhóm tác giả áp dụng quy trình nghiên cứu bao gồm:
- Áp dụng phương pháp học có giám sát (Supervised Learning).
- Khảo sát các mô hình xử lý ngôn ngữ tự nhiên tiên tiến (State-of-the-Art - SOTA), đặc biệt là các mô hình dựa trên kiến trúc Transformer và mạng nơ-ron hồi quy.
- Thu thập, gán nhãn thủ công và tiền xử lý tập dữ liệu khóa luận tiếng Việt.
- Tinh chỉnh (Fine-tuning) mô hình PhoBERT và huấn luyện mô hình LSTM để so sánh hiệu năng.
- Đóng gói mô hình học máy thành dịch vụ độc lập và tích hợp vào hệ thống web thông qua REST API.
Cơ sở lý thuyết và phương pháp
Khung lý thuyết và các bài toán phân loại văn bản
Hệ thống dựa trên nền tảng của Trí tuệ nhân tạo (AI), Máy học (Machine Learning) và Xử lý ngôn ngữ tự nhiên (NLP). Nhiệm vụ phân loại văn bản được chia thành ba dạng chính:
- Phân loại nhị phân (Binary Classification): Đầu ra thuộc một trong hai lớp đối nghịch (0 hoặc 1).
- Phân loại đa lớp (Multi-class Classification): Dữ liệu được phân vào duy nhất một trong số $K$ lớp ($K > 2$), với tổng xác suất dự đoán của các lớp bằng 100%.
- Phân loại đa nhãn (Multi-label Classification): Mỗi mẫu dữ liệu có thể đồng thời thuộc về nhiều lớp/nhãn khác nhau ($C \ge 0$). Tổng xác suất phân bố của các nhãn không bắt buộc bằng 100%. Đề tài lựa chọn hướng tiếp cận này vì một đề tài khóa luận trong ngành CNTT có thể bao hàm nhiều lĩnh vực đồng thời (ví dụ: vừa thuộc mảng IoT, vừa thuộc mảng Web hoặc Mobile).
Ngữ cảnh trong biểu diễn từ và các kiến trúc mô hình
Sự phát triển của kỹ thuật biểu diễn từ (word embedding) trong NLP được phân cấp theo khả năng nắm bắt ngữ cảnh:
- Non-context (Không bối cảnh): Các mô hình đời đầu như Word2Vec, GloVe, FastText chỉ gán một vector cố định cho mỗi từ mà không thay đổi theo ngữ cảnh xuất hiện.
- Uni-directional (Một chiều): Tiêu biểu là ELMo dựa trên mạng BiLSTM, phân tích ngữ cảnh theo từng chiều độc lập (trái sang phải hoặc phải sang trái).
- Bi-directional (Hai chiều): Tiêu biểu là BERT (Bidirectional Encoder Representation from Transformer) do Google giới thiệu năm 2018. BERT sử dụng thành phần Encoder của Transformer với cơ chế Self-Attention, đọc toàn bộ chuỗi ký tự đồng thời theo cả hai chiều. Mô hình được huấn luyện qua hai tác vụ: Masked Language Model (MLM - che ngẫu nhiên 15% số từ để dự đoán) và Next Sentence Prediction (NSP).
- PhoBERT: Mô hình ngôn ngữ tiền huấn luyện dành riêng cho tiếng Việt dựa trên kiến trúc RoBERTa, tối ưu hóa quá trình huấn luyện bằng cách chỉ sử dụng tác vụ MLM và loại bỏ tác vụ NSP. PhoBERT được huấn luyện trên 20GB dữ liệu văn bản tiếng Việt (1GB Wikipedia tiếng Việt và 19GB tin tức). Mô hình có hai phiên bản: $\text{PhoBERT}{\text{base}}$ (12 transformer blocks) và $\text{PhoBERT}{\text{large}}$ (24 transformer blocks).
- RNN và LSTM: Mạng nơ-ron hồi quy (RNN) xử lý dữ liệu tuần tự nhưng gặp hiện tượng mất mát thông tin khi xử lý phụ thuộc xa (long-term dependencies). Mạng bộ nhớ dài-ngắn (LSTM) được thiết kế bổ sung các cổng kiểm soát luồng thông tin nhằm duy trì trạng thái ngữ cảnh qua các chuỗi văn bản dài.
+-----------------------------------------------------------------------------------+
| TỔNG QUAN CÁC NGHIÊN CỨU TIỀN ĐỀ |
+------------------------------------+-------------------------+--------------------+
| Công trình nghiên cứu | Phương pháp / Mô hình | Kết quả đạt được |
+------------------------------------+-------------------------+--------------------+
| Đại học Budi Luhur (Indonesia) | Decision Tree, | kNN đạt độ chính |
| Tác giả: Achmad Solichin | Naive Bayes, kNN | xác cao nhất: |
| Bài toán: Binary Classification | | 96,49% |
+------------------------------------+-------------------------+--------------------+
| Đại học Bumigora (Malaysia) | Naive Bayes | Có TF-IDF: 80,15% |
| Nhóm tác giả: Hairani Hairani | có / không có TF-IDF | Không TF-IDF: |
| Dữ liệu: Khóa luận tiếng Anh | | F1 đạt 90,49% |
+------------------------------------+-------------------------+--------------------+
| Đại học Công nghệ Thông tin (UIT) | Pre-trained Transformers| Tiếng Anh: BERT |
| Tác giả: Hieu Trung Tran | (PhoBERT, BERT, XLM-R, | F1: 62,20% |
| Dữ liệu: ~22.000 tin tuyển dụng | ELMo, FastText...) | Tiếng Việt: PhoBERT|
| Bài toán: Multi-label | | F1: 61,29% |
+------------------------------------+-------------------------+--------------------+
Nguồn dữ liệu và quy trình tiền xử lý
- Bộ dữ liệu: Gồm 700 khóa luận tốt nghiệp và đồ án chuyên ngành được thu thập thực tế tại UIT.
- Quy trình gán nhãn: Được thực hiện thủ công dựa trên nội dung tóm tắt và tiêu đề đề tài.
- Tiền xử lý: Tiến hành chuẩn hóa văn bản, loại bỏ các từ dừng (stopwords), đồng bộ các thuật ngữ và ràng buộc các nhãn (tags) được trích xuất phải có nguồn gốc từ văn bản đầu vào.
Thiết kế và triển khai hệ thống
Kiến trúc hệ thống
Hệ thống Theses Share được xây dựng theo mô hình phân tầng hướng dịch vụ, sử dụng công nghệ đóng gói container (Docker) để cô lập môi trường chạy giữa máy chủ web, máy chủ AI và các hệ quản trị cơ sở dữ liệu:
[ Người dùng / Trình duyệt ]
[ Frontend: NextJS + Material UI ]
[ Cloudinary CDN ] [ Backend: Go-Gin Framework ]
[ PostgreSQL DB ] [ Elasticsearch ] [ AI Server: Docker ]
(Dữ liệu quan hệ, (Tìm kiếm toàn văn (PhoBERT / Fairseq /
giao dịch, tài khoản) Near Real-time) Transformers REST)
- Frontend: Xây dựng bằng NextJS kết hợp thư viện giao diện Material UI (MUI). NextJS hỗ trợ kết xuất phía máy chủ (Server-Side Rendering - SSR), tự động chia tách mã nguồn (Automatic Code Splitting) và nạp trước tài nguyên (Prefetching), tối ưu hóa tốc độ tải trang và hỗ trợ SEO.
- Backend Web Server: Phát triển bằng ngôn ngữ Golang (phiên bản 1.17) với Gin Framework. Gin cung cấp hiệu năng xử lý cao, hỗ trợ middleware kiểm tra tính hợp lệ dữ liệu, bắt lỗi tập trung và phân nhóm định tuyến (route grouping).
- AI Server: Chạy trong Docker container độc lập, sử dụng thư viện Transformers và Fairseq để tiếp nhận văn bản, xử lý vector hóa và trả về các nhãn dự đoán cho backend.
- Tầng lưu trữ dữ liệu:
- PostgreSQL: Đảm nhận vai trò lưu trữ toàn bộ dữ liệu quan hệ có cấu trúc gồm tài khoản, khóa luận, khoa, ngành, nhãn và danh sách lưu trữ cá nhân (bookmark).
- Elasticsearch: Hệ thống tìm kiếm phân tán dựa trên Apache Lucene, thực hiện lập chỉ mục dữ liệu khóa luận để phục vụ tác vụ tìm kiếm toàn văn gần thời gian thực (near real-time), giảm tải truy vấn cho PostgreSQL.
- Cloudinary: Dịch vụ SaaS quản lý tài sản kỹ thuật số (DAM), lưu trữ và phân phối tệp tin PDF thông qua mạng phân phối nội dung (CDN).
- Triển khai thử nghiệm: Sử dụng Ngrok để tạo đường hầm (tunneling) kết nối từ môi trường cục bộ ra mạng Internet phục vụ kiểm thử.
Thiết kế cơ sở dữ liệu quan hệ
Hệ thống xây dựng 5 bảng dữ liệu thực thể chính trong PostgreSQL:
| Tên bảng |
Thuộc tính chính |
Kiểu dữ liệu |
Ý nghĩa |
faculty |
name_vn, name_en
name_short_vn, name_short_en |
string
string |
Tên khoa tiếng Việt/Anh và tên viết tắt tương ứng |
major |
name_vn, name_en
name_short_vn, name_short_en
faculty_id |
string
string
int |
Tên ngành tiếng Việt/Anh, tên viết tắt và khóa ngoại tham chiếu đến bảng khoa |
user |
username, password, email
full_name, gender, age
university, academic_year
major_id, created_at, updated_at |
string
string, int
string, int
int, datetime |
Thông tin định danh tài khoản, thông tin sinh viên, khóa ngoại tham chiếu ngành học và thời gian tạo/cập nhật |
tag |
name_vn, name_en
name_short_vn, name_short_en |
string
string |
Tên thể loại/chủ đề khóa luận tiếng Việt/Anh và tên viết tắt |
thesis |
name, slug, type
authors, teachers
format, language
published_year, tags
link_storage, abstract
faculty_id, user_id |
string
string
string
int, []tag
string, string
int, int |
Tiêu đề đề tài, đường dẫn định danh, loại đề tài (đồ án chuyên ngành/khóa luận), tác giả, GVHD, năm, mảng nhãn, tóm tắt, link file và khóa ngoại tham chiếu |
Nội dung chính theo từng chương
Chương 1. Tổng quan đề tài
Chương mở đầu phân tích bối cảnh ra đời của hệ thống Theses Share từ những khó khăn thực tế trong giai đoạn dịch bệnh Covid-19 tại UIT. Tác giả xác định rõ các mục tiêu cần đạt gồm xây dựng trang web chia sẻ tài liệu và tích hợp máy học để tự động gắn nhãn đa chủ đề. Phạm vi nghiên cứu tập trung vào nguồn tài liệu khóa luận UIT với các tính năng đọc, lọc, tìm kiếm và phân quyền người dùng.
Chương 1 cũng tổng thuật ba công trình nghiên cứu tiền đề:
- Đề tài phân loại khóa luận của Achmad Solichin (Đại học Budi Luhur, Indonesia) áp dụng phân loại nhị phân đạt độ chính xác 96,49% với kNN.
- Đề tài của Hairani Hairani (Đại học Bumigora, Malaysia) phân loại văn bản tiếng Anh bằng Naive Bayes đạt F1-score 90,49%.
- Đề tài phân loại đa nhãn tin tuyển dụng của Hieu Trung Tran (Trường ĐH Công nghệ Thông tin - UIT) trên 22.000 mẫu, chỉ ra PhoBERT cho kết quả F1-score cao nhất (61,29%) đối với ngữ liệu tiếng Việt. Từ đó, nhóm tác giả chọn PhoBERT làm mô hình nghiên cứu trọng tâm.
Chương 2. Cơ sở lý thuyết
Chương 2 trình bày chi tiết nền tảng lý thuyết về học máy và xử lý ngôn ngữ tự nhiên. Tác giả phân tích cơ chế phân cấp ngữ cảnh từ các thuật toán không bối cảnh (Word2Vec, GloVe), thuật toán một chiều (ELMo) đến thuật toán hai chiều dựa trên Transformer.
Nội dung chương đi sâu vào nguyên lý hoạt động của mô hình BERT, cơ chế che từ Masked Language Model, dự đoán câu kế tiếp Next Sentence Prediction, cùng các thông số kiến trúc:
- $\text{BERT}_{\text{base}}$: $L=12, H=768, A=12$ (110 triệu tham số).
- $\text{BERT}_{\text{large}}$: $L=24, H=1024, A=16$ (340 triệu tham số).
Chương này cũng giải thích mô hình ngôn ngữ tiếng Việt PhoBERT, mạng nơ-ron hồi quy RNN và cấu trúc tế bào nhớ dài-ngắn LSTM. Phần công nghệ giới thiệu đặc tính kỹ thuật của ngôn ngữ Golang, web framework Gin, hệ quản trị cơ sở dữ liệu PostgreSQL, công cụ tìm kiếm Elasticsearch, nền tảng lưu trữ Cloudinary, framework NextJS, thư viện Material UI và giải pháp mạng Ngrok.
Chương 3. Quá trình hiện thực
Chương 3 trình bày toàn bộ quá trình xây dựng hệ sinh thái phần mềm và triển khai mô hình học máy. Nhóm tác giả xây dựng sơ đồ phân rã chức năng (xác thực, người dùng, luận văn, lọc, tìm kiếm, sắp xếp, bookmark, trình xem PDF dạng canvas). Sơ đồ use case được thiết kế chi tiết cho từng nhóm đối tượng: người dùng ẩn danh (xem, tìm kiếm, đọc luận văn canvas) và người dùng đăng nhập (đăng tải, chỉnh sửa, xóa khóa luận của mình, lưu bookmark).
Mô hình dữ liệu quan hệ được chi tiết hóa qua các bảng thực thể (faculty, major, user, tag, thesis). Về phần học máy, chương mô tả quy trình xây dựng tập dữ liệu gồm 700 mẫu khóa luận, kỹ thuật làm sạch dữ liệu, xử lý loại bỏ stopwords và thống nhất từ điển thay thế. Nhóm tác giả thiết kế cấu trúc các tầng mạng (layers) cho mô hình PhoBERT và hai biến thể mô hình LSTM (LSTM-1, LSTM-2), thiết lập quy trình tinh chỉnh mô hình để thực hiện bài toán phân loại đa nhãn.
Chương 4. Kết quả thực nghiệm
Chương 4 trình bày quá trình huấn luyện và đánh giá mô hình học máy trên nền tảng điện toán đám mây Google Colab. Nội dung thể hiện các bảng thông số thực nghiệm, đo lường hiệu năng của mô hình PhoBERT và LSTM thông qua các thang đo độ chính xác và chỉ số F1-score trên từng tập nhãn dự đoán. Các biểu đồ so sánh thể hiện sự chênh lệch về hiệu năng giữa kiến trúc Transformer (PhoBERT) và mạng nơ-ron tuần tự (LSTM) trong bài toán phân loại đa nhãn dữ liệu học thuật tiếng Việt.
Chương 5. Tổng kết và hướng phát triển
Chương cuối cùng tổng kết các kết quả đạt được trong việc phát triển ứng dụng Theses Share và triển khai mô hình học máy tự động gán nhãn. Khóa luận nêu rõ những đóng góp chính, các khó khăn kỹ thuật gặp phải trong quá trình thu thập, xử lý dữ liệu và vận hành hệ thống, đồng thời đề xuất các giải pháp khắc phục cũng như định hướng mở rộng hệ thống trong tương lai.
Kết quả và đóng góp
Kết quả thực nghiệm mô hình học máy
Thực nghiệm được thiết lập trên môi trường Google Colab để so sánh hai kiến trúc: PhoBERT và LSTM (Long Short Term Memory) đối với bài toán phân loại đa nhãn trên bộ dữ liệu 700 khóa luận UIT:
| Tiêu chí / Mô hình |
Mô hình PhoBERT |
Mô hình LSTM |
| Kiến trúc cốt lõi |
Transformer Encoder (Pre-trained RoBERTa tiếng Việt) |
Recurrent Neural Network với cổng kiểm soát nhớ |
| Nhiệm vụ huấn luyện |
Masked Language Model (MLM) |
Sequence-to-Sequence / Classification layers |
| Đặc điểm xử lý ngữ cảnh |
Hai chiều toàn vẹn (Bi-directional) |
Tuần tự qua chuỗi thời gian (Sequential) |
| Hiệu năng gán nhãn |
Vượt trội về khả năng dự đoán đúng tập nhãn đa chủ đề |
Gặp giới hạn khi số lượng nhãn tăng và khoảng cách từ xa |
| Chỉ số đánh giá |
Đạt F1-score cao hơn trên hầu hết các nhãn chuyên ngành |
F1-score thấp hơn, phụ thuộc nhiều vào độ dài chuỗi |
Đóng góp chính của khóa luận
- Xây dựng bộ dữ liệu chuyên ngành: Thu thập, làm sạch, tiền xử lý và gán nhãn thủ công tập dữ liệu gồm 700 khóa luận tốt nghiệp tiếng Việt của sinh viên Trường Đại học Công nghệ Thông tin.
- Ứng dụng thành công mô hình ngôn ngữ tiếng Việt: Tinh chỉnh và chứng minh tính hiệu quả của mô hình PhoBERT trong bài toán phân loại đa nhãn cho văn bản học thuật chuyên sâu.
- Phát triển nền tảng phần mềm hoàn chỉnh: Xây dựng hệ thống Theses Share kết hợp kiến trúc Golang (Gin), NextJS, PostgreSQL, Elasticsearch và Cloudinary, cung cấp công cụ đọc tài liệu trực tuyến dạng canvas và tìm kiếm thông minh phục vụ cộng đồng sinh viên.
Hạn chế và hướng nghiên cứu tiếp
Hạn chế của đề tài
- Quy mô tập dữ liệu: Bộ dữ liệu huấn luyện còn giới hạn ở mức 700 khóa luận, tập trung chủ yếu vào các ngành thuộc khối Công nghệ thông tin của UIT, chưa bao quát đầy đủ các chuyên ngành khác.
- Trích xuất nội dung văn bản: Định dạng PDF của các khóa luận tải lên có cấu trúc trình bày đa dạng, gây khó khăn cho quá trình trích xuất tự động toàn văn nội dung và tóm tắt.
- Tài nguyên triển khai: Việc duy trì cùng lúc các container chứa mô hình Transformer lớn đòi hỏi tài nguyên tính toán (GPU/RAM) đáng kể khi phục vụ số lượng người dùng truy cập đồng thời lớn.
Hướng phát triển tiếp theo
- Mở rộng quy mô tập dữ liệu bằng cách thu thập thêm các đề tài khóa luận qua các năm học mới và mở rộng sang các trường đại học thành viên trong khối Đại học Quốc gia TP.HCM.
- Cải tiến thuật toán tiền xử lý để tự động bóc tách thông tin từ các tệp PDF phức tạp hơn.
- Tối ưu hóa mô hình AI thông qua các kỹ thuật nén mô hình (Distillation, Quantization) nhằm giảm dung lượng và tăng tốc độ suy luận khi triển khai thực tế.
- Bổ sung các tính năng nâng cao cho ứng dụng web: hệ thống gợi ý đề tài thông minh theo sở thích cá nhân, tính năng tương tác học thuật (bình luận, thảo luận) và hỗ trợ đa dạng định dạng tệp tin.
Giá trị tham khảo
Tài liệu khóa luận mang lại giá trị tham khảo thiết thực cho các nhóm đối tượng:
- Sinh viên ngành Mạng máy tính, Khoa học máy tính và Công nghệ phần mềm: Cung cấp tài liệu tham khảo thực tế về cách thức xây dựng một hệ thống phần mềm hướng dịch vụ kết hợp giữa Backend bằng Golang (Gin Framework) với Frontend React/NextJS hiện đại.
- Người nghiên cứu lĩnh vực Xử lý ngôn ngữ tự nhiên (NLP) tiếng Việt: Cung cấp quy trình cụ thể từ việc thu thập, làm sạch văn bản học thuật, gán nhãn đa nhãn cho đến cách áp dụng và tinh chỉnh pre-trained model PhoBERT so sánh với kiến trúc LSTM.
- Kỹ sư hệ thống và cơ sở dữ liệu: Cung cấp mô hình kiến trúc lưu trữ kết hợp giữa hệ quản trị cơ sở dữ liệu quan hệ (PostgreSQL) và công cụ tìm kiếm phân tán (Elasticsearch) để xử lý tác vụ tìm kiếm toàn văn hiệu năng cao.
Câu hỏi thường gặp
1. Tại sao nhóm tác giả lại lựa chọn bài toán phân loại đa nhãn (Multi-label) thay vì phân loại đa lớp (Multi-class)?
Trong thực tế, một khóa luận tốt nghiệp ngành Công nghệ thông tin thường bao quát nhiều lĩnh vực kỹ thuật cùng lúc (ví dụ: một đề tài vừa liên quan đến lập trình Web, vừa ứng dụng Trí tuệ nhân tạo và triển khai trên thiết bị Di động). Mô hình phân loại đa lớp (Multi-class) chỉ cho phép chọn duy nhất một chủ đề (tổng xác suất 100%), trong khi phân loại đa nhãn (Multi-label) cho phép một đề tài được gán đồng thời nhiều nhãn độc lập, phản ánh chính xác nội dung học thuật đa ngành của khóa luận.
2. Mô hình PhoBERT sử dụng trong đề tài có nguồn gốc từ đâu và được huấn luyện trên dữ liệu nào?
PhoBERT là mô hình ngôn ngữ tiền huấn luyện dành riêng cho tiếng Việt do các nhà nghiên cứu phát triển dựa trên kiến trúc RoBERTa của Facebook (sử dụng task Masked Language Model và loại bỏ task Next Sentence Prediction). PhoBERT được huấn luyện trên 20GB ngữ liệu tiếng Việt bao gồm 1GB dữ liệu từ Vietnamese Wikipedia corpus và 19GB từ tập ngữ liệu tin tức tiếng Việt (Vietnamese news corpus).
3. Vai trò của Elasticsearch và PostgreSQL được phân chia như thế nào trong kiến trúc hệ thống?
Hệ thống sử dụng mô hình cơ sở dữ liệu kép:
- PostgreSQL: Chịu trách nhiệm lưu trữ toàn bộ dữ liệu có cấu trúc, quản lý quan hệ thực thể, dữ liệu người dùng, xác thực tài khoản, bookmark và thực thi các truy vấn thêm/sửa/xóa thông thường để đảm bảo tính toàn vẹn dữ liệu.
- Elasticsearch: Chỉ lưu trữ bản sao dữ liệu khóa luận nhằm phục vụ riêng cho các truy vấn tìm kiếm toàn văn (full-text search) gần thời gian thực, giúp tăng tốc độ tìm kiếm và giảm tải tài nguyên xử lý cho PostgreSQL.
4. Dữ liệu tệp PDF khóa luận được lưu trữ và hiển thị cho người dùng như thế nào?
Toàn bộ tệp tin PDF do người dùng đăng tải được chuyển lên lưu trữ trên dịch vụ đám mây Cloudinary thông qua API. Khi người dùng truy cập để đọc tài liệu trên website Theses Share, ứng dụng frontend (NextJS) sẽ lấy tệp PDF từ Cloudinary CDN và hiển thị nội dung trực tiếp trên giao diện trình duyệt thông qua trình xem dạng canvas mà không yêu cầu người dùng phải tải tệp tin về máy tính cục bộ.
5. Khóa luận giải quyết vấn đề trích xuất nhãn từ văn bản như thế nào trong quá trình tiền xử lý?
Trong quá trình tiền xử lý dữ liệu, nhóm tác giả loại bỏ các từ dừng (stopwords), chuẩn hóa các từ đồng nghĩa và áp dụng nguyên tắc bắt buộc: tất cả các nhãn (tags) được gán cho khóa luận phải được trích xuất hoặc suy luận trực tiếp từ nội dung văn bản đầu vào (tiêu đề và tóm tắt đề tài), đảm bảo tính chính xác và tránh hiện tượng gán nhãn không liên quan đến ngữ cảnh của khóa luận.
Kết luận
Khóa luận tốt nghiệp của sinh viên Đôn Khánh Duy và Nguyễn Đình Tuấn Anh đã giải quyết thành công bài toán xây dựng nền tảng Theses Share phục vụ việc lưu trữ, chia sẻ và tra cứu luận văn trực tuyến cho sinh viên UIT. Nghiên cứu đã ứng dụng hiệu quả mô hình xử lý ngôn ngữ tự nhiên PhoBERT vào bài toán phân loại đa nhãn trên tập dữ liệu 700 khóa luận tiếng Việt, chứng minh sự vượt trội của kiến trúc Transformer so với mạng LSTM truyền thống. Hệ thống kết hợp kiến trúc kỹ thuật hiện đại gồm NextJS, Golang Gin, PostgreSQL, Elasticsearch và Cloudinary, mang lại giải pháp công nghệ có giá trị ứng dụng thực tiễn cao trong môi trường học thuật đại học.