Kiến trúc tổng quan của hệ thống phân loại câu hỏi cĩ giám sát

Một phần của tài liệu (LUẬN văn THẠC sĩ) một số mô hình học máy trong phân loại câu hỏi (Trang 34 - 40)

2.2. Thuật tốn Nạve Bayes 2.2.1. Định lý 2.2.1. Định lý

Thuật tốn Nạve Bayes dựa trên định lý Bayes được phát biểu như sau:

Trong đĩ:

* P(X): Xác suất của sự kiện X xảy ra, khơng quan tâm đến Y * P(Y): Xác suất của sự kiện Y xảy ra, khơng quan tâm đến X

* P(X|Y): Xác suất (cĩ điều kiện) của sự kiện X xảy ra, nếu biết rằng sự kiện Y xảy ra

* P(Y|X): Xác suất hậu nghiệm của Y nếu biết X

Nạve Bayes classifer là một bộ phân loại xác suất dựa trên việc ứng dụng định lý Bayes với giả định độc lập bền vững [13]. Một Nạve ayes classifer độc lập điều kiện giả định rằng sự hiện diện (hay khơng hiện diện) của một đặc trưng của một lớp học là khơng liên quan đến sự cĩ mặt (hay thiếu vắng) của bất kỳ đặc trưng nào khác. Áp dụng cho bài tốn phân loại, các dữ kiện cần cĩ:

* D: tập dữ liệu huấn luyện đã được vector hĩa dưới dạng * Ci: phân lớp i, với i={1,2,…,m}

* Các thuộc tính x1,x2,…,xn độc lập điều kiện đơi một với nhau Theo định lý Bayes:

Theo tính chất độc lập điều kiện:

Khi đĩ, luật phân lớp cho các tài liệu mới là:

Trong đĩ:

* P(Ci): được tính dựa trên tần suất xuất hiện tài liệu trong tập huấn luyện. * P(xk|Ci): được tính từ những tập thuộc tính đã được tính trong quá trình huấn luyện.

2.2.2. Thuật tốn

Các bước thực hiện thuật tốn Nạve ayes như sau: ước 1: Huấn luyện Nạve Bayes dựa vào tập dữ liệu:

 Tính xác suất P(Ci)  Tính xác suất P(xk|Ci) ước 2: Xnew

Cùng xem xét một ví dụ sau: ví dụ dự đốn xem quyết định của người chơi cĩ đi chơi tennis hay khơng với các điều kiện về thời tiết đã được biết trước. Trong ví dụ này, ta cĩ một bảng dữ liệu huấn luyện như sau:

Bảng 2.1: Bảng dữ liệu huấn luyện của ví dụ người chơi tennis

Day Outlook Temp. Humidity Wind Playtennis

D1 Sunny Hot High Weak No

D2 Sunny Hot High Strong No

D3 Overcast Hot High Weak Yes

D4 Rain Mild High Weak Yes

D5 Rain Cool Normal Weak Yes

D6 Rain Cool Normal Strong No

D7 Overcast Cool Normal Weak Yes

D8 Sunny Mild High Weak No

D9 Sunny Cold Normal Weak Yes

D10 Rain Mild Normal Strong Yes

D11 Sunny Mild Normal Strong Yes

D12 Overcast Mild High Strong Yes

D13 Overcast Hot Normal Weak Yes

D14 Rain Mild High Strong No

ước 1:

 Tính các xác suất P(Ci)

Với C1 = “yes” : P(C1) = P(“yes”) = 9/14 Với C2 = “no”: P(C2) = P(“no”) = 5/14  Tính các xác suất P(xk|Ci)

- Với thuộc tính Outlook: cĩ các giá trị sunny, overcast, rain P(sunny|yes) = 2/9

P(sunny|no) = 3/5 P(overcast|yes) = 4/9

P(overcast|no) = 0/5 P(rain|yes) = 3/9 P(rain|no) = 2/5

- Với thuộc tính Temp: cĩ các giá trị Hot, Cold, Mild P(hot|yes) = 2/9 P(hot|no) = 2/5 P(cold|yes) = 3/9 P(cold|no) = 1/5 P(mild|yes) = 4/9 P(mild|no) = 2/5

- Với thuộc tính Humidity: cĩ các giá trị Normal, High P(normal|yes) = 6/9

P(normal|no) = 1/5 P(high|yes) = 3/9 P(high|no) = 4/5

- Với thuộc tính Wind: cĩ các giá trị Weak, Strong P(weak|yes) = 6/9

P(weak|no) = 2/5 P(strong|yes) = 3/9 P(strong|no) = 3/5

ước 2: Phân lớp Xnew = {sunny, cool, high, strong} Tính các xác suất:

P(yes) * P(Xnew|yes) = 0.005 P(no) * P(Xnew|no) = 0.021 Vậy Xnew thuộc vào lớp “no”

Thuật tốn Nạve Bayes áp dụng cho bài tốn phân loại câu hỏi nhƣ sau:

Giai đoạn huấn luyện:

Input:

- Các vector đặc trưng của câu hỏi trong huấn luyện.

- Tập nhãn/lớp cho từng vector đặc trưng của tập huấn luyện.

Output:

Giai đoạn phân lớp:

Input:

- Các vector đặc trưng của câu hỏi trong huấn luyện. - Các giá trị xác suất và

Output:

- Nhãn/phân loại của câu hỏi.

Gọi P(ck|qj) là xác suất mà câu hỏi qj cĩ khả năng thuộc vào loại ck. Theo định lý Bayes:

Thuật tốn Nạve ayes được tiến hành bằng cách tính trọng số của các đặc trưng trong câu hỏi ứng với mỗi loại. Phương pháp entropy weighting được giới thiệu để tính tốn trọng số như sau:

Trong đĩ: ai là trọng số của từ i N là tổng số phân loại

fit là tần số xuất hiện của từ i trong câu hỏi t

ni là tổng số lần xuất hiện của từ i trong tất cả các câu hỏi Khi đĩ, phân loại cho một câu hỏi mới là:

Với ck là loại cĩ xác suất hậu nghiệm lớn nhất (xác suất mà câu hỏi qj cĩ khả năng thuộc vào lớp ckđược tính ở cơng thức (2.5))

Phân lớp Nạve Bayes giả định độc lập điều kiện P(qj|ck) như sau:

2.3. Thuật tốn k-láng giềng gần (k- Nearst Neighbours)

Thuật tốn phân lớp k-NN là một phương pháp phân loại câu hỏi dựa trên mơ hình khơng gian vector. Theo mơ hình này, mỗi câu hỏi được biểu diễn thành một vector: . Mỗi chiều của vector là một từ riêng biệt của câu hỏi.

Ý tưởng của thuật tốn này như sau: Để phân loại một câu hỏi mới, thuật tốn sẽ tính khoảng cách (cĩ thể dựa vào các cơng thức tính khoảng cách như Euclide, Cosine, …) của câu hỏi này đến tất cả các câu hỏi trong tập huấn luyện để tìm ra k câu hỏi cĩ khoảng cách gần nhất, gọi là k nearest neighbours (k láng giềng gần). Dùng khoảng cách này, đánh trọng số cho tất cả các chủ đề đã cĩ. Khi đĩ, trọng số của một chủ đề sẽ được tính bằng tổng các khoảng cách từ câu hỏi cần phân loại đến các câu hỏi trong k láng giềng mà cĩ cùng chủ đề đĩ. Chủ đề nào khơng xuất hiện trong tập k câu hỏi sẽ cĩ trọng số bằng 0. Sau đĩ, các chủ đề được sắp xếp theo độ giảm dần của các trọng số và chủ đề cĩ trọng số cao sẽ được chọn làm chủ đề của câu hỏi cần phân loại.

Trọng số của chủ đề Ci đối với câu hỏi d được tính như sau:

Trong đĩ:

- KNN(d) là k láng giềng gần nhất của câu hỏi d

- xác định câu hỏi dj thuộc vào phân loại Ci với:

- sim(d,dj) là độ giống nhau giữa câu hỏi cần phân loại d và câu hỏi dj. Để tính

khoảng cách này, người ta sử dụng độ đo cosin như sau:

Trong đĩ: là trọng số của từ đặc trưng thứ i của câu hỏi d1d2.

2.4. Máy Vector hỗ trợ - SVM

Giải thuật máy vector hỗ trợ SVM (Support Vector Machine) ra đời từ lý thuyết học thống kê do Vapnik và Chervonenkis xây dựng năm 1995 [2]. Đây là một giải thuật phân lớp cĩ hiệu quả cao và đã được áp dụng nhiều trong lĩnh vực khai phá dữ liệu và nhận dạng.

an đầu thuật tốn SVM được thiết kế để giải quyết bài tốn phân lớp nhị phân. ài tốn cơ bản như sau: Cho trước n điểm trong khơng gian d chiều (mỗi điểm thuộc vào một lớp kí hiệu là +1 hoặc -1), mục đích của giải thuật SVM là tìm một siêu phẳng (hyperplane) phân hoạch tối ưu cho phép chia các điểm này thành hai phần sao cho các điểm cùng một lớp nằm về một phía với siêu phẳng này. Hình 2.2 dưới đây minh họa một phân lớp với SVM trong mặt phẳng.

Cho tập dữ liệu huấn luyện {( với và là một số nguyên xác định lớp của xi . Siêu phẳng tối ưu phân tập dữ liệu này thành hai lớp là siêu phẳng cĩ thể tách rời dữ liệu thành hai lớp riêng biệt với lề lớn nhất. Mỗi siêu phẳng đều cĩ thể được viết dưới dạng một tập hợp các điểm x thỏa mãn:

Trong đĩ: w là một vector pháp tuyến của siêu phẳng và b đĩng vai trị là tham số của mơ hình.

Để tìm được siêu phẳng phân cách cĩ lề cực đại, xây dựng các vector hỗ trợ và các siêu phẳng H1, H2 song song với H và cĩ cùng khoảng cách đến H. Khi đĩ, với mọi xi trong tập huấn luyện ta cĩ 2 bất phương trình sau:

w.xi + b +1 với yi = +1 w.xi + b -1 với yi = -1 Và được viết lại như sau: yi(w.xi + b) +1

hoặc yi(w.xi + b) - 1 0

Hình 2.2: Siêu phẳng với lề cực đại cho một SVM phân tách dữ liệu thuộc hai lớp. Lúc này, những support vector xi thỏa mãn phương trình w.xi + b -1 thì nằm

Một phần của tài liệu (LUẬN văn THẠC sĩ) một số mô hình học máy trong phân loại câu hỏi (Trang 34 - 40)