Tìm hiểu phân lớp bayes và cài đặt chương trình minh họa cho bảng dữ liệu với thuộc tính có giá trị rời rạc

12 2.1K 1
Tìm hiểu phân lớp bayes và cài đặt chương trình minh họa cho bảng dữ liệu với thuộc tính có giá trị rời rạc

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Tìm hiểu phân lớp bayes và cài đặt chương trình minh họa cho bảng dữ liệu với thuộc tính có giá trị rời rạc

PHÂN LỚP BAYES 1. Giới thiệu Bayes Theorem Trong lĩnh vực Data Mining, Bayes Theorem (hay Bayes’ Rule) là kỹ thuật phân lớp dựa vào việc tính xác suất điều kiện. Bayes’ Rule được ứng dụng rất rộng rãi bởi tính dễ hiểu dễ triển khai. Bayes' Rule (CT1): Trong đó: D : Data h : Hypothesis (giả thuyết) P(h) : Xác suất giả thuyết h (tri thức được về giả thuyết h trước khi dữ liệu D) gọi là prior probability của giả thuyết h. P(D| h): Xác suất điều kiện D khi biết giả thuyết h (gọi là likelihood probability). P(D): xác suất của dữ liệu quan sát D không quan tâm đến bất kỳ giả thuyết h nào. (gọi là prior probability của dữ liệu D) Tỷ số : Chỉ số liên quan (irrelevance index) dùng để đo lường sự liên quan giữa 2 biến A B. Nếu irrelevance index =1, nghĩa A B không liên quan nhau. P(h|D) :Xác suất điều kiện h khi biết D (gọi là posterior probability của giả thuyết h) Trong rất nhiều ứng dụng, các giả thuyết h i thể loại trừ nhau dữ liệu quan sát D là tập con của tập giả thuyết cho nên chúng ta thể phân rã P(D) như sau (CT2): Vì nên (CT1) thể viết lại như sau (CT3) Thay P(D) trong (CT2) vào (CT1) ta được (CT4) (CT4) gọi là Bayes’s Theorem Ví dụ sau đây mô tả cách tính Bayes’s Theorem Giả sử ta dữ liệu quan sát về 250 đối tượng để tìm hiểu mối quan hệ giữa 2 biến thu nhập (income: Low(D1), Medium(D2), High(D3)) loại xe hơi (Car: Second hand (h1), New (h2)) mà họ đã mua. Bây giờ giả sử rằng ta chỉ biết phần trăm theo dòng (Percentage by Row) phần trăm theo các biên (Marginal Percentage hay Percentage by Total) như sau. Câu hỏi đặt ra là thể tính phần trăm theo cột (percentage by column) chỉ dựa vào thông tin từ 2 bảng trên hay không?. Bayes Theorem thể giúp trả lời câu hỏi này như sau: Trước tiên, ta biểu diễn 2 bảng trên theo ký hiệu trong Bayes’ Rule như sau: Với bảng phần trăm theo dòng (Percentage by Row) Với bảng phần trăm theo Total (Percentage by Total) Bảng phần trăm theo cột (Percentage by Column) được biểu diễn như sau: Sử dụng Bayes’ Rule chúng ta thể dễ dàng tính các phần trăm theo cột. Chẳn hạn Tương tự như trên, ta tính được tất cả các giá trị trong bảng phần trăm theo cột như sau: 2. Ứng dụng Bayes Theorem trong phân lớp dữ liệu (Naïve Bayes Classifier) Các ví dụ sau đây minh họa việc sử dụng Bayes Theorem trong việc phân lớp dữ liệu. Bộ phân lớp dữ liệu dựa trên Bayes theorem còn gọi là Naïve Bayes Classifier. Ví dụ 1: training data về thời tiết như sau (xem mô tả chi tiết về dữ liệu weather trong bài Cây quyết định (Decision Tree) tại http://bis.net.vn/forums/t/378.aspx) Download file .xls tại đây (chú ý trong file này sử dụng một số công thức mảng nên để thực hiện công thức mảng bấm tổ hợp phím Ctrl + Shift + Enter) Sử dụng Naïve Bayes Classifier để xác định khả năng đến chới thể thao (Play = “yes” hay “no”) với thời tiết của ngày quan sát được như sau: Từ Training data ta dữ liệu như sau: Vì thuộc tính phân lớp Play chỉ 2 giá trị là “yes” (nghĩa là đến chơi thể thao) “no”(không đến chơi thể thao) nên ta phải tính Pr(yes|E) Pr(no|E) như sau. Trong đó E là dữ liệu cần phân lớp (dự đoán) Vì P(“no”) > P(“yes”) nên kết quả dự đoán Play =“no” Ví dụ 2: Training Data Unseen data như sau Sử dụng Naïve Bayes Classifier để phân lớp cho Unseen data (X) Class: C1:buys_computer =”yes”, C2:buys_computer =”no” Tính P(X|Ci) cho mỗi class X=(age<=30, income =”medium”, student=”yes”,credit_rating=”fair”) P(age=“<=30” | buys_computer=“yes”) = 2/9=0.222 P(age=“<=30” | buys_computer=“no”) = 3/5 =0.6 P(income=“medium” | buys_computer=“yes”)= 4/9 =0.444 P(income=“medium” | buys_computer=“no”) = 2/5 = 0.4 P(student=“yes” | buys_computer=“yes”)= 6/9 =0.667 P(student=“yes” | buys_computer=“no”)= 1/5=0.2 P(credit_rating=“fair” | buys_computer=“yes”)=6/9=0.667 P(credit_rating=“fair” | buys_computer=“no”)=2/5=0.4 Tính P(X|Ci) : P(X|buys_computer=“yes”)= 0.222 x 0.444 x 0.667 x 0.667 =0.044 P(X|buys_computer=“no”)= 0.6 x 0.4 x 0.2 x 0.4 =0.019 P(X|Ci)*P(Ci ): P(X|buys_computer=“yes”) * P(buys_computer=“yes”)=0.044*9/14= 0.028 P(X|buys_computer=“no”) * P(buys_computer=“no”)=0.019*5/14 = 0.007 Do đó ta X thuộc lớp buys_computer=“yes” Bayes Thoerem được triển khai rất rộng rãi trong Data Mining vì dễ hiểu, dễ triển khai . Tuy nhiên, Bayes Theorem giả thiết rằng các biến trong mô hình là độc lập nhau. Nếu các biến không độc lập nhau thì Bayes Theorem cho kết quả thiếu chính xác. Hiện nay rất nhiều Data Mining Software triển khai Naïve Bayes Classifier như Weka, XMMiner, StatSoft,… 3. Chương trình minh họa : Chương trình khi mở:

Ngày đăng: 30/11/2013, 14:03

Hình ảnh liên quan

Trước tiên, ta biểu diễn 2 bảng trên theo ký hiệu trong Bayes’ Rule như sau: - Tìm hiểu phân lớp bayes và cài đặt chương trình minh họa cho bảng dữ liệu với thuộc tính có giá trị rời rạc

r.

ước tiên, ta biểu diễn 2 bảng trên theo ký hiệu trong Bayes’ Rule như sau: Xem tại trang 4 của tài liệu.
Với bảng phần trăm theo dịng (Percentage by Row) - Tìm hiểu phân lớp bayes và cài đặt chương trình minh họa cho bảng dữ liệu với thuộc tính có giá trị rời rạc

i.

bảng phần trăm theo dịng (Percentage by Row) Xem tại trang 4 của tài liệu.
Tương tự như trên, ta tính được tất cả các giá trị trong bảng phần trăm theo cột như sau:  - Tìm hiểu phân lớp bayes và cài đặt chương trình minh họa cho bảng dữ liệu với thuộc tính có giá trị rời rạc

ng.

tự như trên, ta tính được tất cả các giá trị trong bảng phần trăm theo cột như sau: Xem tại trang 5 của tài liệu.
khai. Tuy nhiên, Bayes Theorem giả thiết rằng các biến trong mơ hình là độc lập nhau. Nếu các biến khơng độc lập nhau thì Bayes Theorem cho kết quả thiếu chính  xác - Tìm hiểu phân lớp bayes và cài đặt chương trình minh họa cho bảng dữ liệu với thuộc tính có giá trị rời rạc

khai..

Tuy nhiên, Bayes Theorem giả thiết rằng các biến trong mơ hình là độc lập nhau. Nếu các biến khơng độc lập nhau thì Bayes Theorem cho kết quả thiếu chính xác Xem tại trang 10 của tài liệu.

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan