Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 55 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
55
Dung lượng
533,05 KB
Nội dung
KhaiPháDữ Liệu Nguyễn Nhật Quang quangnn-fit@mail.hut.edu.vn Viện Công nghệ Thông tin và Truyền thông Trường Đại học Bách Khoa Hà Nội Năm học 2010-2011 Nội dung môn học: Giới thiệu về Khaiphádữ liệu ề Giới thiệu v ề công cụ WEK A Tiền xử lý dữ liệu Phát hiện các luật kết hợp Các kỹthuậtphân lớpvàdự đoán Các kỹ thuậtphânlớp và dựđoán Phânlớp bằng phương pháp học Bayes Học cây quyết định Các kỹthuậtphân nhóm 2 KhaiPháDữ Liệu Bài toán phânlớp Bài toán phânlớp (Classification) Đ ối với m ộ t t ập các ví d ụ /bản g hi ( instances/records ) – gọ i là t ập ộ ập ụ g( ) gọ ập huấn luyện/học (training/learning set) Mỗi bản ghi được biểu diễn bằng một tập các thuộc tính, trong đó có m ộ t thu ộ c tính p hân lớ p ( class attribute ) ộ ộ p p( ) Tìm/học một hàm cho thuộc tính phânlớp (hàm phân lớp) đối với các giá trị của các thuộc tính khác Sử dụng một tập các ví dụ khác với các ví dụ học để kiểm tra độ chính xác của hàm phânlớp học được – gọi là tậpkiểmthử (test set) là tập kiểm thử (test set) Thông thường, tập dữ liệu ban đầu được chia thành 2 tập (không giao nhau): training set (để học hàm phân lớp) và test set (để kiểmthử hàm phân lớphọc được) kiểm thử hàm phânlớp học được) 3 KhaiPháDữ Liệu Phânlớp vs. Dựđoán Bài toán phânlớp (Classification problem) H ộthà tiê ó iá t ị ời (di t ldt t H ọc m ột hà m mục tiê u c ó g iá t r ị r ời rạc ( a di scre t e-va l ue d t arge t function) Miền giá trị: một tập các nhãn lớp (class labels) xác địn trước Với mỗi ví dụ cần phân loại, hệ thống xác định nhãn lớp của nó Bài toán d ự đoán/hồi q u y ( Prediction/re g ression p roblem ) ự qy( g p ) Học một hàm mục tiêu có giá trị liên tục (a continuous-valued target function) Miề iá t ị tậ áiátị ố th (l b) Miề n g iá t r ị : tậ p c á c g iá t r ị s ố th ực ( rea l num b ers ) Với mỗi ví dụ cần dự đoán, hệ thống xác định giá trị dựđoán của nó 4 KhaiPháDữ Liệu Học có vs. không có giám sát Học có giám sát (supervised learning) Mỗi ví dụ học gồm 2 phần : mô tả ( biểu diễn ) của ví dụ học và Mỗi ví dụ học gồm 2 phần : mô tả ( biểu diễn ) của ví dụ học , và nhãn lớp(hoặcgiátrịđầu ra mong muốn) củavídụ học đó Bài toán học phânlớp (classification problem) Dtrain ={(< Biểudiễncủax >< Nhãn lớpcủax >)} D _ train = {(< Biểu _ diễn _ của _ x > , < Nhãn _ lớp _ của _ x >)} Bài toán học dựđoán/hồi quy (prediction/regression problem) D_train = {(<Biểu_diễn_của_x>, <Giá_trị_đầu_ra_của_x>)} Học không có giám sát (unsupervised learning) Mỗivídụ họcchỉ chứamôtả (biểudiễn) củavídụ học đó- mà không có bất kỳ thông tin nào về nhãn lớp hay giá trị đầu ra mong không có bất kỳ thông tin nào về nhãn lớp hay giá trị đầu ra mong muốncủavídụ học đó Bài toán học phân cụm (Clustering problem) Tập học Dtrain ={(< Biểudiễncủax >)} Tập học D _ train = {(< Biểu _ diễn _ của _ x >)} 5 KhaiPháDữ Liệu Các khái niệm cơ bản về xác suất Giả sử chúng ta có một thí nghiệm (ví dụ: đổ một quân xúc sắc) mà kết quả của nó mang tính ngẫu nhiên (phụ thuộc vào khả năng có thể xảy ra) Không gian các khả năng S. Tập hợp tất cả các kết quả có thể xảy ra Ví dụ: S = {123456} đốivới thí nghiệm đổ quân xúc sắc Ví dụ: S {1 , 2 , 3 , 4 , 5 , 6} đối với thí nghiệm đổ quân xúc sắc Sự kiện E. Một tập con của không gian các khả năng Ví dụ: E= {1}: kết quả quân súc xắc đổ ra là 1 ế ắ ổ ố Ví dụ: E= {1,3,5}: k ế t quả quân súc x ắ c đ ổ ra là một s ố lẻ Không gian các sự kiện W. Không gian (thế giới) mà các kết quả của s ự ki ệ n có thể xả y ra ự ệ y Ví dụ: W bao gồm tất cả các lần đổ súc xắc Biến ngẫu nhiên A. Một biến ngẫu nhiên biểu diễn (diễn đạt) một sự kiệnvàcómộtmức độ về khả năng xảyrasự kiện này kiện , và có một mức độ về khả năng xảy ra sự kiện này 6 KhaiPháDữ Liệu Biểu diễn xác suất P(A): “Phầncủa không gian (thế giới) mà trong đó A là đúng” Không gian sự kiện ( khôn g g ian ( g g củatấtcả các giá trị có thể xảyra của A) Không gian mà trong đó A là đúng Không gian mà [ http://www cs cmu edu/~awm/tutorials ] Không gian mà trong đó A là sai 7 KhaiPháDữ Liệu [ http://www . cs . cmu . edu/~awm/tutorials ] Các biến ngẫu nhiên Bool Một biến ngẫu nhiên Bool có thể nhận một trong 2 giá trị đúng ( true )hoặcsai( false ) đúng ( true ) hoặc sai ( false ) Các tiên đề • 0 ≤ P(A) ≤ 1 • 0 ≤ P(A) ≤ 1 • P(true)= 1 • P(false) = 0 P(false) 0 • P(A V B)= P(A) + P(B) - P(A ∧ B) Các hệ quả Các hệ quả • P(not A)≡ P(~A)= 1 - P(A) • P(A) = P(A ∧ B) + P(A ∧ ~B) P(A) P(A ∧ B) + P(A ∧ B) 8 KhaiPháDữ Liệu Các biến ngẫu nhiên nhiều giá trị Một biến ngẫu nhiên nhiều giá trị có thể nhận một trong số k ( >2 ) g iá trị {v 1 , v 2 , …,v k } ()g 1 2 k jivAvAP ji ≠ = = ∧ = if 0)( P(A=v 1 V A=v 2 V V A=v k ) = 1 ∑ = = = ∨ ∨ = ∨ = i v A P v A v A v A P 2 1 ) ( ) ( 1)( == ∑ k j vAP ∑ = ∨ ∨ ∨ j j i v A P v A v A v A P 1 2 1 ) ( ) ( 1= j [] () )( 1 21 j i j i vABPvAvAvABP =∧==∨∨=∨=∧ ∑ 9 KhaiPháDữ Liệu [http://www.cs.cmu.edu/~awm/tutorials] 1 j = Xác suất có điều kiện (1) P(A|B) là phần của không gian (thế giới) mà trong đó A là đúng, với điềukiện(đãbiết) là B đúng là đúng, với điều kiện (đã biết) là B đúng Ví dụ •A: Tôi sẽ đi đá bóng vào ngày mai •B: Trời sẽ không mưa vào ngày mai •P(A|B): Xác suất của việc tôi sẽ đi đá bóng vào ngày mai nếu (đã biết rằng) trời sẽ không mưa (vào ài) ng à y ma i) 10 KhaiPháDữ Liệu [...]... định các nhãn lớp: C={c1, c2, , cm} • Với một ví dụ (mới) z, z sẽ được phân vào lớp nào? Mục tiêu: Xác định phânlớp có thể (phù hợp) nhất đối với z c MAP = arg max P(ci | z ) ci ∈C c MAP = arg max P(ci | z1 , z 2 , , z n ) ci ∈C c MAP = arg max ci ∈C P( z1 , z 2 , , z n | ci ).P(ci ) P( z1 , z 2 , , z n ) KhaiPháDữ Liệu (bởi định lý Bayes) 24 Phân loại Naïve Bayes (2) Để tìm được phânlớp có thể nhất... z z như nhau với các lớp) Giả sử (assumption) trong phương pháp phân loại Naïve Bayes Các thuộc tính là độc lập có điều kiện (conditionally independent) đối với các lớp n P( z1 , z 2 , , z n | ci ) = ∏ P( z j | ci ) j =1 Phân loại Naïve Bayes tìm phânlớp có thể nhất đối với z n c NB = arg max P (ci ).∏ P ( z j | ci ) ci ∈C j =1 Khai PháDữ Liệu 25 Phân loại Naïve Bayes – Giải thuật Giai đoạn học (training... mỗi phânlớp có thể (mỗi nhãn lớp) ci∈C • Tính giá trị xác suất trước: P(ci) • Đối với mỗi giá trị thuộc tính xj, tính giá trị xác suất xảy ra của giá trị thuộc tính đó đối với một phânlớp ci: P(xj|ci) g ị ộ ộ p p ( | Giai đoạnphânlớp (classification phase), đối với một ví dụ mới • Đối với mỗi phânlớp ci∈C, tính giá trị của biểu thức: g n P(ci ).∏ P( x j | ci ) j =1 • Xác định phânlớp của z là lớp. .. /~cse634/lecture_notes/0 7classification.pdf Khai PháDữ Liệu 27 Phânlớp Naïve Bayes – Ví dụ (2) Biểu diễn bài toán phân loại • z = (Age=Young Income=Medium Student=Yes Credit Rating=Fair) (Age Young,Income Medium,Student Yes,Credit_Rating Fair) • Có 2 phânlớp có thể: c1 (“Mua máy tính”) và c2 (“Không mua máy tính”) Tính giá trị xác suất trước cho mỗi phânlớp • P(c1) = 9/14 • P(c2) = 5/14 Tính giá... với mỗi phânlớp • P(Age=Young|c1) = 2/9; ( g g| ; P(Age=Young|c2) = 3/5 ( g g| • P(Income=Medium|c1) = 4/9; P(Income=Medium|c2) = 2/5 • P(Student=Yes|c1) = 6/9; P(Student=Yes|c2) = 1/5 • P(Credit_Rating=Fair|c1) = 6/9; P(Credit_Rating=Fair|c2) = 2/5 Khai PháDữ Liệu 28 Phânlớp Naïve Bayes – Ví dụ (3) Tính toán xác suất có thể xảy ra (likelihood) của ví dụ z đối với mỗi phânlớp • Đối với phânlớp c1... với phânlớp c2 P(z|c2) = P(Age=Young|c2).P(Income=Medium|c2).P(Student=Yes|c2) P(Credit_Rating=Fair|c2) = (3/5).(2/5).(1/5).(2/5) = 0.019 Xác định phânlớp có thể nhất (the most probable class) • Đối với phânlớp c1 P(c1) P(z|c1) = (9/14) (0 044) = 0 028 ).P(z|c (9/14).(0.044) 0.028 • Đối với phânlớp c2 P(c2).P(z|c2) = (5/14).(0.019) = 0.007 → Kết luận: Anh ta (z) sẽ mua một máy tính! KhaiPhá Dữ. .. 29 Phânlớp Naïve Bayes – Vấn đề (1) Nếu không có ví dụ nào gắn với phânlớp ci có giá trị thuộc tính xj… n P(xj|ci)=0 , và vì vậy: ( | ) ậy P (c ) ) P ( x | c ) = 0 i ∏ j i j =1 Giải pháp: Sử dụng phương pháp Bayes để ước lượng P(xj|ci) n(ci , x j ) + mp P ( x j | ci ) = n(ci ) + m • n(ci): số lượng các ví dụ học gắn với phânlớp ci ( ) ợ g ụ ọ g p p • n(ci,xj): số lượng các ví dụ học gắn với phân lớp. .. D_train • Đối với mỗi phânlớp ci D _ ci P (ci ) = - Tính giá trị xác suất trước của phânlớp ci: D - Đối với mỗi từ khóa tj, tính xác suất từ khóa tj xuất hiện đối với lớp ci P (t j | ci ) = (∑ (∑ d k ∈D _ ci d k ∈D _ ci ∑t ) n(d k ,t j ) + 1 m ∈T ) n( d k , t m ) + T Khai PháDữ Liệu (n(dk,tj): số lần xuất hiện của từ khóa tj trong văn bản dk) 32 Phân loại văn bản bằng NB (2) Để phânlớp cho một văn bản... bản d đối với ci P(ci ) ∏ P(t j | ci ) t j ∈T _ d • Phânlớp văn bản d thuộc vào lớp c* c * = arg max P(ci ) ci ∈C ∏ P(t j | ci ) t j∈ T _ d KhaiPháDữ Liệu 33 Học cây quyết định – Giới thiệu Học cây quyết định (Decision tree –DT– learning) • Để học (xấp xỉ) một hàm mục tiêu có giá trị rời rạc (discretevalued target function) – hàm phânlớp • Hàm phânlớp được biểu diễn bởi một cây quyết định Một cây... à B C Ví dụ • A: Tôi sẽ đi dạo bờ sông vào sáng mai A • B: Thời tiết sáng mai rất đẹp • C Tôi sẽ dậ sớm vào sáng mai C: ẽ dậy ớ à á i P(A|B,C) P(A|B C) • P(A|B,C): Xác suất của việc tôi sẽ đi dạo ọ g g , ( g) dọc bờ sông vào sáng mai, nếu (đã biết rằng) thời tiết sáng mai rất đẹp và tôi sẽ dậy sớm vào sáng mai KhaiPháDữ Liệu 14 Độc lập có điều kiện Hai biến A và C được gọi là độc lập có điều kiện . Khai phá dữ liệu ề Giới thiệu v ề công cụ WEK A Tiền xử lý dữ liệu Phát hiện các luật kết hợp Các kỹ thuật phân lớpv dự đoán Các kỹ thuật phân lớp và dự đoán Phân lớp. và dự đoán Phân lớp bằng phương pháp học Bayes Học cây quyết định Các kỹ thuật phân nhóm 2 Khai Phá Dữ Liệu Bài toán phân lớp Bài toán phân lớp (Classification) Đ ối với m ộ t t ập . tập dữ liệu ban đầu được chia thành 2 tập (không giao nhau): training set (để học hàm phân lớp) và test set (để kiểmthử hàm phân lớphọc được) kiểm thử hàm phân lớp học được) 3 Khai