CHƯƠNG 2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN
2.2. Một số kỹ thuật phân loại văn bản
Trong các hệ thống tìm kiếm tài nguyên học tập, đặc biệt các nguồn tài nguyên cĩ quy mơ lớn, giai đoạn đầu tiên của quá trình tìm kiếm là xử lý truy vấn (query) để xác định miền hay chủ đề (topic), từ đĩ tìm trên miền hay chủ đề đĩ. Vì vậy, việc phân loại truy vấn cĩ vai trị quan trọng nhằm giới hạn khơng gian tìm kiếm, tăng tốc độ và nâng cao độ chính xác của kết quả tìm kiếm (Li and Roth, 2002; Hacioglu and Ward, 2003; Zhang and Lee, 2003; Brown, 2004).
Cĩ một số nghiên cứu về phân loại truy vấn theo hướng tiếp cận biểu thức chính quy dựa vào những luật ngữ pháp viết tay (hand-written grammar rulers) để xác định lớp của câu hỏi đầu vào (Van Durme et al., 2003). Tuy nhiên, hướng tiếp cận này vẫn cĩ những hạn chế nhất định (Li and Roth, 2002; Hacioglu and Ward, 2003) như số lớp nhỏ (khoảng 8-10 lớp) khơng thích hợp khi tích hợp vào một hệ thống tìm cĩ quy mơ lớn. Do vậy, một hướng tiếp cận khác để giải quyết bài tốn phân loại câu hỏi là theo hướng tiếp cận xác suất (Brown, 2004) được tổng hợp lại, bao gồm hai cách tiếp cận chính là (1) tiếp cận theo hướng học máy (machine learning) và (2) tiếp cận theo mơ hình ngơn ngữ (language modeling). Đối với bài tốn phân loại câu truy vấn, hướng tiếp cận xác suất bằng học máy (machine learning) được nhiều nhà nghiên cứu quan tâm.
Cĩ nhiều giải thuật cho bài tốn phân loại câu truy vấn theo phương pháp học máy như k láng giềng gần nhất (k Nearest Neighbors - kNN), Nạve Bayes, máy véctor hỗ trợ (Support Vector Machines - SVM), cây quyết định (Decision tree)… để học trên tập câu hỏi mẫu đã được gán nhãn, từ đĩ xây dựng mơ hình phân loại câu truy vấn. Trong đĩ, SVM là kỹ thuật được sử dụng phổ biến và hiệu quả (McCallum and Nigam, 1998; Li and Roth, 2002; Liu and Zheng, 2005).
2.2.1. Phân loại với máy véc-tơ hỗ trợ SVM 2.2.1.1. Phân loại nhị phân với giải thuật SVM 2.2.1.1. Phân loại nhị phân với giải thuật SVM
Giải thuật máy véc-tơ hỗ trợ SVM được giới thiệu lần đầu tiên bởi Cortes and Vapnik (1995). SVM rất hiệu quả để giải quyết các bài tốn với dữ liệu cĩ số chiều lớn như các véc-tơ biểu diễn văn bản. SVM được xem là bộ phân loại chính xác nhất cho bài tốn phân loại văn bản (Chakrabarti, 2002) do tốc độ phân loại rất nhanh và hiệu quả đối với bài tốn phân loại văn bản.
Theo ý tưởng máy véc-tơ hỗ trợ SVM, siêu phẳng tối ưu phải là siêu phẳng tách hai lớp xa nhất cĩ thể. Siêu phẳng trong khơng gian n chiều được biểu diễn bởi véc-tơ pháp tuyến w = (w1, w2, …, wn) và độ lệch b của siêu phẳng so với gốc tọa độ. Máy véc- tơ hỗ trợ SVM tìm siêu phẳng (w, b) để phân chia dữ liệu. Việc chia cắt được thực hiện nhờ vào hai siêu phẳng hỗ trợ song song như Hình 2.1 (Nghị, 2011).
Hình 2.1: Phân loại tuyến tính với SVM
Siêu phẳng hỗ trợ cho lớp dương (+1) là siêu phẳng mà các phần tử thuộc lớp dương (+1) nằm về bên phải của siêu phẳng này. Tương tự, siêu phẳng hỗ trợ cho lớp âm (-1) là siêu phẳng mà các phần tử thuộc lớp âm (-1) nằm về bên trái của siêu phẳng này. Phương trình mặt siêu phẳng chứa véc-tơ x trong khơng gian là w.x + b = 0. Trong đĩ, w là véc-tơ trọng số, b là độ lệch (bias). Hướng và khoảng cách từ gốc tọa độ đến mặt siêu phẳng thay đổi khi thay đổi w và b. Bộ phân loại SVM được định nghĩa bởi
biểu thức 2.1:
𝑦𝑦𝑖𝑖 =�+1,−1, 𝑥𝑥𝑥𝑥𝑖𝑖.𝑤𝑤 ≥ 𝑏𝑏 + 1
𝑖𝑖 .𝑤𝑤 ≤ 𝑏𝑏 – 1 2.1
Gọi yi mang giá trị +1 hoặc -1. Nếu yi = +1 thì x thuộc về lớp (+), ngược lại yi = -1 thì x thuộc về lớp (-). Hai mặt siêu phẳng tách các mẫu thành hai phần được mơ tả bởi các phương trình: w.x + b = 1 và w.x + b = -1. Bằng hình học cĩ thể tính khoảng cách giữa hai mặt siêu phẳng này là: margin = ‖𝑤𝑤‖2 .
Để khoảng cách biên là lớn nhất cần phải tìm giá trị nhỏ nhất của ||𝑤𝑤||; đồng thời, ngăn chặn các điểm dữ liệu rơi vào vùng bên trong biên, cần thêm ràng buộc như biểu thức 2.2:
� 𝑤𝑤.𝑥𝑥𝑖𝑖 + 𝑏𝑏 ≥ 1, với mẫu (+)
𝑤𝑤.𝑥𝑥𝑖𝑖 + 𝑏𝑏 ≤ −1, với mẫu (−) 2.2
Cĩ thể viết lại như sau: 𝑦𝑦𝑖𝑖(𝑤𝑤.𝑥𝑥𝑖𝑖 + 𝑏𝑏)≥ 1, 𝑣𝑣ớ𝑖𝑖 𝑖𝑖 ∈(1,𝑛𝑛)
Khi đĩ, việc tìm siêu phẳng tương đương giải bài tốn tìm Min||w|| với w và b thỏa điều kiện sau: ∀𝑖𝑖 ∈(1,𝑛𝑛): 𝑦𝑦𝑖𝑖(𝑤𝑤.𝑥𝑥𝑖𝑖 +𝑏𝑏) ≥1
2.2.1.2. Phân đa lớp với SVM
Để giải quyết bài tốn phân loại (k lớp, k > 2), chúng ta cĩ thể cải tiến bài tốn phân loại nhị phân với SVM. Hai kỹ thuật được sử dụng phổ biến là: một-tất cả (One- vs-All) hoặc một-một (One-vs-One) (Chakrabarti, 2002). Với kỹ thuật One-vs-All, mỗi mơ hình phân tách một lớp từ các lớp khác, xây dựng k mơ hình cho k lớp như Hình 2.2 (a) (Nghị, 2011). Với kỹ thuật One-vs-One, mỗi mơ hình phân tách hai lớp, xây dựng
k(k-1)/2 mơ hình cho k lớp như Hình 2.2 (b).
(a) (b)
Hình 2.2: SVM đa lớp với One-vs-All (a) và One-vs-One (b)
Ngồi ra, cĩ thể sử dụng phương pháp khác để phân tách hai nhĩm, mỗi nhĩm cĩ thể bao gồm nhiều lớp, xác định cách phân tách nhĩm sao cho cĩ lợi nhất.
2.2.1.3. Áp dụng SVM vào phân loại câu truy vấn
Mục tiêu ban đầu của SVM là dùng cho phân loại nhị phân, tuy nhiên hiện nay đã được cải tiến cho phân loại đa lớp. Đây cũng là phiên bản được sử dụng cho bài tốn phân loại câu truy vấn. Hai cơng việc chuẩn bị dữ liệu khi xây dựng được mơ hình phân loại câu truy vấn dựa trên SVM như sau. Bước thứ nhất là thiết kế mơ hình cây phân cấp (taxonomy) cho tập lớp câu hỏi. Miền ứng dụng của câu hỏi sẽ quyết định độ phức tạp (phân cấp) của taxonomy. Bước thứ hai là xây dựng tập dữ liệu mẫu (corpus) đã được gán nhãn cho từng lớp câu hỏi. Ở bước này, cách lựa chọn đặc trưng để biểu diễn câu hỏi cĩ vai trị quan trọng. Tùy thuộc vào đặc điểm của từng ngơn ngữ mà tập các
đặc trưng được lựa chọn khác nhau. Ví dụ với tiếng Anh thì tập đặc trưng của nĩ là các từ.
Sau khi xây dựng được tập các lớp câu hỏi cùng với tập dữ liệu sẽ tiến hành “học”. Mơ hình học được mơ tả như Hình 2.3.
Hình 2.3: Sơ đồ phân loại câu hỏi với SVM
Trong hình Hình 2.3, bước tiền xử lý thực hiện chức năng làm tinh lọc dữ liệu (loại bỏ từ dừng hay stop words), sau đĩ câu hỏi được rút trích các đặc trưng (các đặc trưng được lựa chọn từ trước), dữ liệu đầu vào của bộ phân loại SVM sẽ là tập các véc-tơ đặc trưng.
2.2.2. Phân loại sử dụng giải thuật cây quyết định và rừng ngẫu nhiên
Giải thuật cây quyết định (Decision Tree) là phương pháp xấp xỉ giá trị các hàm mục tiêu rời rạc (Mitchell, 1997). Giải thuật này là một trong các phương pháp được sử dụng rộng rãi trong học quy nạp từ tập dữ liệu lớn. Trong đĩ, hàm học của phương pháp này là một cây cĩ bậc tùy ý, bao gồm các lá và nhánh, mỗi lá là đại diện cho một lớp và các nhánh là các điều kiện, đặc trưng dẫn đến lớp ở đỉnh lá. Một ưu điểm của phương pháp cây quyết định là cĩ thể chuyển dễ dàng sang dạng cơ sở tri thức là các luật “Nếu…Thì” (If…Then).
Rừng ngẫu nhiên (Random Forest - RF) là thuật tốn học cĩ giám sát được sử dụng cho cả phân loại và hồi quy. Về mặt kỹ thuật, RF là một phương pháp tổng hợp các cây quyết định được tạo ra trên một tập dữ liệu được chia ngẫu nhiên (Tin Kam, 1995).
Thuật tốn của giải thuật RF được mơ tả như sau: 1. Chọn các mẫu ngẫu nhiên từ tập dữ liệu đã cho.
2. Thiết lập cây quyết định cho từng mẫu và nhận kết quả dự đốn từ mỗi cây. 3. Bỏ phiếu bầu cho mỗi kết quả dự đốn.
4. Chọn kết quả được dự đốn nhiều nhất là dự đốn cuối cùng.
Ưu điểm của RF là phương pháp chính xác và mạnh mẽ vì số cây quyết định tham gia vào quá trình này, khơng bị vấn đề quá khớp (overfitting). Tuy nhiên, hạn chế của nĩ là chậm tạo dự đốn do cĩ nhiều cây quyết định.
2.2.3. Phân loại với các kỹ thuật học sâu
Ngồi các kỹ thuật phân loại sử dụng các giải thuật học máy như máy véc-tơ hỗ trợ SVM, k láng giềng gần nhất kNN, mạng Nạve Bayes, cây quyết định hay rừng ngẫu nhiên như trình bày trên, gần đây các phương pháp tiếp cận dựa trên học sâu đã chứng
Tiền xử lý Rút trích đặc
trưng Phân lớp SVMMulti
minh khả năng phân loại với độ chính xác cao và cĩ thể mở rộng trên các tập dữ liệu cĩ quy mơ lớn (Aristodemou and Tietze, 2018). Các cách tiếp cận học sâu tập trung vào thơng tin dạng văn bản và áp dụng các kỹ thuật xử lý ngơn ngữ tự nhiên khác nhau để phát triển các bộ phân loại tự động như mạng nơ-ron tích tập (Convolutional Neural Network - CNN), bộ nhớ ngắn dài hạn (LSTM)... Các kỹ thuật học sâu sẽ được trình bày chi tiết ở nội dung giới thiệu về các kỹ thuật của hệ thống gợi ý, vì một trong những kỹ thuật phổ biến nhất để dự đốn xếp hạng và gợi ý là phân loại.