Phân hệ phân lớp văn bản đƣợc cài đặt nhƣ thiết kế trình bày ở hình 5.2. Các bƣớc thực hiện nhƣ sau:
Bƣớc 1: Huấn luyện
- Chuẩn bị huấn luyện:
+ Các văn bản huấn luyện của từng nhóm văn bản đƣợc đƣa vào từng thƣ mục con Y tế, Giáo dục, Công nghệ, Thể thao trong thƣ mục Nhóm Văn Bản ở thƣ mục gốc của chƣơng trình.
+ Chạy module Tokenizer để tạo các tập tin tách từ của các nhóm văn bản trên.
+ Chạy module SelectTerm để tạo tập tin đặc trƣng của các nhóm văn bản.
+ Chạy module CalWVector để tạo vector trọng số W của các từ đặc trƣng của từng nhóm văn bản.
- Huấn luyện:
+ Chạy modul SVM-NN để huấn luyện các bộ phân lớp 2 lớp SVM- NN cho từng cặp nhóm văn bản: (Công nghệ – Giáo dục), (Công nghệ - Thể thao), (Công nghệ - Y tế), (Giáo dục – Thể thao), (Giáo dục – Y tế), (Thể thao – Y tế). Chƣơng trình sẽ tạo ra các tập tin kết quả huấn luyện nằm trong thƣ mục resource.
Cấu trúc các thư mục dữ liệu
+ Cho bƣớc chuẩn bị huấn luyện đƣợc tổ chức nhƣ sau: Thƣ mục Nhóm văn bản chứa các thƣ mục con:
Y te: chứa các văn bản huấn luyện lĩnh vực Y tế.
Giao duc: chứa các văn bản huấn luyện lĩnh vực Giáo dục.
Cong nghe: chứa các văn bản huấn luyện lĩnh vực Công nghệ.
The thao: chứa các văn bản huấn luyện lĩnh vực Thể thao. + Cho bƣớc sau khi chuẩn bị huấn luyện đƣợc tổ chức nhƣ sau:
Trong mỗi thƣ mục của các nhóm văn bản có hai thƣ mục con:
Parse: chứa các tập tin tách từ khi chạy module Tokenizer.
DacTrung: chứa tập tin “dac trung.txt” là tập tin chứa các từ đặc trƣng của nhóm văn bản khi chạy modul SelectTerm, tập tin “Wvector.txt” chứa trọng số của các từ đặc trƣng tính theo phƣơng pháp nghịch đảo tần số văn bản (IDF) khi chạy module CalWVector.
Thƣ mục resource chứa các tập tin dữ liệu cần cho quá trình huấn luyện. Trong thƣ mục resource có thƣ mục con svm-nn chứa các tập tin kết quả sau khi huấn luyện, gồm các tập tin:
“svm-nn_ congnghe_giaoduc.txt”: Bộ phân lớp giữa lĩnh vực công nghệ và giáo dục.
“svm-nn_ congnghe_ thethao.txt”: Bộ phân lớp giữa lĩnh vực công nghệ và thể thao.
“svm-nn_ congnghe_yte.txt”: Bộ phân lớp giữa lĩnh vực công nghệ và y tế.
“svm-nn_giaoduc_thethao.txt”: Bộ phân lớp giữa lĩnh vực giáo dục và thể thao.
“svm-nn_giaoduc_yte.txt”: Bộ phân lớp giữa lĩnh vực giáo dục và y tế.
“svm-nn_thethao_yte.txt”: Bộ phân lớp giữa lĩnh vực thể thao và y tế.
Bƣớc 2: Tiến hành phân lớp các văn bản
- Chạy module Tokenizer để tạo các tập tin tách từ của các văn bản cần phân lớp.
- Sau đó, đối với từng văn bản cần phân lớp:
+ Chạy modul SVM-NN trên từng bộ phân lớp 2 lớp đã đƣợc tạo ra trong quá trình huấn luyện, để thực hiện các phân lớp 2 lớp SVM-NN cho từng văn bản đó.
+ Chạy modul Classify để thực hiện phân lớp đa lớp cho từng văn bản đó.
- Kết quả phân lớp của toàn bộ các văn bản cần phân lớp đƣợc lƣu trong tập tin chứa kết quả phân lớp ketquaphanlop.txt.
Lƣu ý: Tập tin chứa kết quả phân lớp ketquaphanlop.txt sẽ đƣợc sử dụng làm dữ liệu đầu vào cho phân hệ truy tìm văn bản.