1. Trang chủ
  2. » Luận Văn - Báo Cáo

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ài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiê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
Định dạng
Số trang 12
Dung lượng 885 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

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

Trang 1

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 có điều kiện Bayes’ Rule được ứng dụng rất rộng rãi bởi tính dễ hiểu và 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ó được về giả thuyết h trước khi có dữ liệu

D) và gọi là prior probability của giả thuyết h.

P(D| h): Xác suất có đ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)

Trang 2

Tỷ số : Chỉ số liên quan (irrelevance index) dùng để đo lường sự liên quan giữa 2 biến A và B Nếu irrelevance index =1, có nghĩa A và B không liên quan

nhau

P(h|D) :Xác suất có đ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 hi có thể loại trừ nhau và vì dữ liệu quan sát D là tập con của tập giả thuyết cho nên chúng ta có thể phân rã P(D) như sau (CT2):

Vì nên (CT1) có thể viết lại như sau (CT3)

Thay P(D) trong (CT2) vào (CT1) ta được (CT4)

Trang 3

(CT4) gọi là Bayes’s Theorem

Ví dụ sau đây mô tả cách tính Bayes’s Theorem

Giả sử ta có 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)) và 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) và phần trăm theo các biên (Marginal Percentage hay Percentage by Total) như sau

Câu hỏi đặt ra là có 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 có thể giúp trả lời câu hỏi này như sau:

Trang 4

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 có thể dễ dàng tính các phần trăm theo cột Chẳn hạn

Trang 5

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 (Nạ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à Nạve Bayes Classifier.

Ví dụ 1: Cĩ 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)

Trang 6

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 Nạ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 cĩ dữ liệu như sau:

Trang 7

Vì thuộc tính phân lớp Play chỉ có 2 giá trị là “yes” (nghĩa là có đến chơi thể thao)

và “no”(không đến chơi thể thao) nên ta phải tính Pr(yes|E) và Pr(no|E) như sau Trong đó E là dữ liệu cần phân lớp (dự đoán)

Trang 8

Vì P(“no”) > P(“yes”) nên kết quả dự đốn Play =“no”

Ví dụ 2: Cĩ Training Data và Unseen data như sau

Sử dụng Nạ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

Trang 9

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 có X thuộc lớp buys_computer=“yes”

Trang 10

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 cĩ rất nhiều Data Mining Software triển khai Nạve Bayes Classifier

như Weka, XMMiner, StatSoft,…

3 Chương trình minh họa :

Chương trình khi mở:

Trang 11

Chương trình khi có dữ liệu:

Trang 12

Kết quả dự báo :

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: (Trang 4)
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) (Trang 4)
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: (Trang 5)
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 (Trang 10)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w