1 / 31

BÀI GIẢNG NHẬP MÔN KHAI PHÁ DỮ LIỆU CHƯƠNG 6. PHÂN CỤM DỮ LiỆU

BÀI GIẢNG NHẬP MÔN KHAI PHÁ DỮ LIỆU CHƯƠNG 6. PHÂN CỤM DỮ LiỆU. PGS. TS. HÀ QUANG THỤY HÀ NỘI 9-2013 TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐẠI HỌC QUỐC GIA HÀ NỘI. Nội dung. Giới thiệu bài toán phân cụm Một số độ đo cơ bản cho phân cụm Phân cụm phẳng Phân cụm phân cấp Phân cụm dựa trên mật độ

yuval
Download Presentation

BÀI GIẢNG NHẬP MÔN KHAI PHÁ DỮ LIỆU CHƯƠNG 6. PHÂN CỤM DỮ LiỆU

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. BÀI GIẢNG NHẬP MÔN KHAI PHÁ DỮ LIỆUCHƯƠNG 6. PHÂN CỤM DỮ LiỆU PGS. TS. HÀ QUANG THỤY HÀ NỘI 9-2013 TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐẠI HỌC QUỐC GIA HÀ NỘI

  2. Nội dung Giới thiệu bài toán phân cụm Một số độ đo cơ bản cho phân cụm Phân cụm phẳng Phân cụm phân cấp Phân cụm dựa trên mật độ Phân cụm dựa trên mô hình Gán nhãn cụm Đánh giá phân cụm

  3. 1. Giới thiệu bài toán phân cụm • Bàitoán • Tậpdữliệu D = {di} • Phâncácdữliệuthuộc D thànhcáccụm • Cácdữliệutrongmộtcụm: “tươngtự” nhau (gầnnhau) • Dữliệuhaicụm: “khôngtươngtự” nhau (xanhau) • Đo “tươngtự” (gần) nhau ? • Tiênđềphâncụm:Nếungườidùnglựachọnmộtđốitượngdthìhọcũnglựachọncácđốitượngcùngcụmvớid • Khaithác “cáchchọnlựa” củangườidùng • Đưaramộtsốđộđo “tươngtự” theobiểudiễndữliệu • Mộtsốnội dung liênquan • Xâydựngđộđotươngtự • Khaithácthông tin bổ sung • Sốlượngcụmchotrước, sốlượngcụmkhôngchotrước

  4. Sơ bộ tiếp cận phân cụm • Phâncụmmôhìnhvàphâncụmphânvùng • Môhình: Kếtquảlàmôhìnhbiểudiễncáccụm dữ liệu • Vùng: Danhsáchcụmvàvùng dữ liệu thuộccụm • Phâncụmđơnđịnhvàphâncụmxácsuất • Đơnđịnh: Mỗi dữ liệuthuộcduynhấtmộtcụm • Xácsuất: Danhsáchcụmvàxácsuấtmột dữ liệuthuộcvàocáccụm • Phâncụmphẳngvàphâncụmphâncấp • Phẳng: Cáccụm dữ liệukhônggiaonhau • Phâncấp: Cáccụm dữ liệucóquanhệphâncấp cha- con • Phâncụmtheolôvàphâncụmtăng • Lô: Tạithờiđiểmphâncụm, toànbộ dữ liệuđãcó • Tăng: Dữ liệutiếptụcđượcbổ sung trongquátrìnhphâncụm

  5. Các phương pháp phân cụm • Cácphươngphápphổbiến • Phân vùng, phâncấp, dựa theo mật độ, dựa theo lưới, dựa theo mô hình, và phân cụm mờ • Phân cụmphân vùng (phân cụm phẳng) • Xây dựng từng bước phân hoạch các cụm và đánh giá chúng theo các tiêu chí tương ứng • Tiếp cận: từ dưới lên (gộp dần), từ trên xuống (chia dần) • Độ đo tương tự / khoảng cách • K-mean, k-mediod, CLARANS, … • Hạn chế: Không điều chỉnh được lỗi • Phâncụmphâncấp • Xây dựng hợp (tách) dần các cụm tạo cấu trúc phân cấp và đánh giá theo các tiêu chí tương ứng • Độ đo tương tự / khoảng cách • HAC: Hierarchical agglomerative clustering • CHAMELEON, BIRRCH và CURE, …

  6. Các phương pháp phân cụm • Phâncụmdựatheomậtđộ • Hàmmậtđộ: Tìmcácphầntửchínhtạinơicómậtđộcao • Hàmliênkết: Xácđịnhcụmlàlâncậnphầntửchính • DBSCAN, OPTICS… • Phâncụmdựatheolưới • Sửdụnglướicác ô cùng cỡ: tuy nhiên cụm là các “ô” phân cấp • Tạophâncấp ô lướitheomộtsốtiêuchí: sốlượngđốitượngtrong ô • STING, CLIQUE, WaweCluster… • Phâncụmdựatheomôhình • Giải thiết: Tồn tại một sốmôhình dữ liệu cho phân cụm • Xácđịnhmôhìnhtốtnhấtphùhợpvớidữliệu • MCLUST… • Phâncụm mờ • Giảthiết: khôngcóphâncụm “cứng” chodữliệuvàđốitượngcóthểthuộcmộtsốcụm • Sửdụnghàmmờtừcácđốitượngtớicáccụm • FCM (Fuzzy CMEANS),…

  7. 2. Một số độ đo cơ bản • Độđotươngđồng • Biểudiễn: vector n chiều • Giátrịnhịphân: Ma trậnkề, độđoJaccard • Giátrịrờirạc [0,m]: Chuyển m giátrịthànhnhịphân, độđoJaccard • Giátrịthực : độđocosinhai vector • Độđokhácbiệt • Đốingẫuđộđotươngđồng • Thuộctínhnhịphân: đốicứng, khôngđốixứng • Giátrịrờirạc: hoặctươngtựtrênhoặcdạngđơngiản (q thuộctínhgiốngnhau) • Giátrịthực: Khoảngcách Manhattan, Euclide, Mincowski • Tínhxácđịnhdương, tínhđốixứng, tínhbấtđẳngthức tam giác

  8. Một số độ đo cơ bản • Vídụvềđộkhácbiệt • CSDL xétnghiệmbệnhnhân • Quyvềgiátrịnhịphân: M/F, Y/N, N/P • Lập ma trậnkhácbiệtchotừngcặpđốitượng. • Vídụ, cặp (Nam, Vân): a=2, b=1, c=1, d=3 • D(Nam, Vân) =(1+1)/(2+1+1)=0.5

  9. 3. Thuât toán K-mean gán cứng • Mộtsốlưu ý • Điềukiệndừng • Saubước 2 khôngcósựthayđổicụm • Điềukiệndừngcưỡngbức • Khốngchếsốlầnlặp • Giátrịmụctiêuđủnhỏ • Vấnđềchọntậpđạidiện ban đầu ở bướcKhởiđộng • Cóthểdùngđộđokhoảngcáchthaychođộđotươngtự

  10. a. Thuât toán K-mean gán cứng • Mộtsốlưu ý (tiếp) vàvídụ • Trongbước 2: cáctrọngtâmcóthểkhôngthuộc S • Thựctế: sốlầnlặp 50 • Thihành k-mean vớidữliệutrênđĩa • Toànbộdữliệuquálớn: khôngthể ở bộnhớtrong • Vớimỗivònglặp: duyệt CSDL trênđĩa 1 lần • Tínhđượcđộtươngtựcủa d vớicácci. • Tínhlạicimới: bước 2.1 khởiđộng (tổng, bộđếm); bước 2.2 cộngvàtăngbộđếm; bước 2.3 chỉthựchiện k phépchia. • Bing Liu (2007), Web Data Mining: Exploring Hyperlinks, Contents, and Usage Data, Spinger, 2007.

  11. Thuât toán K-mean mềm • Input • Sốnguyên k > 0: sốcụmbiếttrước • Tậpdữliệu D (chotrước) • Output • Tập k “đạidiệncụm” Clàmcựctiểulỗi “lượngtử” • Địnhhướng • TinhchỉnhCdầnvớitỷlệhọc (learning rate)

  12. Thuât toán K-mean • Ưuđiểm • Đơngiản, dễsửdụng • Hiệuquảvềthờigian: tuyếntính O(tkn), t sốlầnlặp, k sốcụm, n làsốphầntử • Mộtthuậttoánphâncụmphổbiếnnhất • Thườngchotốiưucụcbộ. Tốiưutoàncụcrấtkhótìm • Nhượcđiểm • Phải “tínhtrungbìnhđược”: dữliệuphânlớpthìdựatheotầnsố • Cầnchotrước k : sốcụm • Nhạycảmvớingoạilệ (cáchxa so vớiđạiđasốdữliệucònlại): ngoạilệthựctế, ngoạilệ do quansátsai (làmsạchdữliệu) • Nhạycảmvớimẫu ban đầu: cầnphươngphápchọnmẫuthôtốt • Khôngthíchhợpvớicáctậpdữliệukhôngsiêu-elliphoặcsiêucầu (cácthànhphần con khôngellip/cầuhóa) • Bing Liu (2007), Web Data Mining: Exploring Hyperlinks, Contents, and Usage Data, Spinger, 2007.

  13. Thuât toán K-mean • Trái: Nhạy cảm với chọn mẫu ban đầu • Phải: Không thích hợp với bộ dữ liệu không siêu ellip/cầu hóa • Bing Liu (2007), Web Data Mining: Exploring Hyperlinks, Contents, and Usage Data, Spinger, 2007.

  14. b. Thuât toán PAM (K-mediod) • K-mediod • Biếnthểcủa K-mean: thaytrọngtâmbằngmộtphầntửcủa D • Hàmmụctiêu • PAM: Partition Around Mediods

  15. 4. Phân cụm phân cấp • HAC: Hierarchical agglomerative clustering • Mộtsốđộđophânbiệtcụm • Độtươngtựhaitàiliệu • Độtươngtưgiữahaicụm • Độtươngtựgiữahaiđạidiện • Độtươngtựcựcđạigiữahaidữliệuthuộchaicụm: single-link • Độtươngtựcựctiểugiữahaidữliệuthuộchai cum: complete-link • Độtươngtựtrungbìnhgiữahaidữliệuthuộchai cum • Sơbộvềthuậttoán • Đặcđiểm: Khôngchotrướcsốlượngcụm k, chophépđưaracácphươngánphâncụmtheocácgiátrị k khácnhau • Lưu ý: k làmộtthamsố “tìm k tốtnhất” • Tinhchỉnh: Từcụthểtớikháiquát

  16. a. Phân cụm phân cấp từ dưới lên • Giảithích • G làtậpcáccụmtrongphâncụm • Điềukiện |G| < k cóthểthaythếbằng |G|=1

  17. Phân cụm phân cấp từ dưới lên • Hoạtđộng HAC • Cho phépvớimọi k • Chọnphâncụmtheo “ngưỡng” vềđộtươngtự

  18. HAC với các độ đo khác nhau • Ảnhhưởngcủacácđộđo • Trên: Hoạtđộngthuậttoánkhácnhautheocácđộđokhácnhau: độtươngtựcựctiểu (complete-link) cótínhcầuhơn so vớicựcđại • Dưới: Độtươngtựcựcđại (Single-link) tạocụmchuỗidòng

  19. b. Phân cụm phân cấp BIRCH • Balanced Iterative Reducing Clustering Using Hierarchies • Tính khả cỡ: Làm việc với tập dữ liệu lớn • Tính bất động: Gán không đổi đối tượng –> cụm • Khái niệm liên quan • Đặc trưng phân cụm CF: tóm tắt của cụm • CF = <n, LS, SS>, n: số phần tử, LS: vector tổng các thành phần dữ liêu; SS : vector tổng bình phương các thành phần các đối tượng • <3, (9,10), (29,38)>. Khi ghép cụm không tính lại các tổng • Cây đặc trưng phân cụm CF Tree • Một cây cân bằng • Hai tham số: bề rộng b và ngưỡng t • Thuật toán xây dựng cây

  20. BIRCH: Năm độ đo khoảng cách

  21. Cây đặc trưng phân cụm CF Tree • Mỗi nút không là lá có nhiều nhất là B cành • Mỗi nút lá có nhiều nhất L đặc trưng phân cụm mà đảm bảo ngưỡng T • Cỡ của nút được xác định bằng số chiều không gian dữ liệu và tham số P kích thước trang bộ nhớ

  22. Chèn vào CF Tree và BIRCH • Cây ban đầu rỗng • Chèn một “cụm” a vào cây • Xác định lá thích hợp: Duyệt từ gốc xuống một cách đệ quy để tới nút con gần a nhất theo 1 trong 5 khoảng cách nói trên • Biến đổi lá: Nếu gặp lá L1 gần a nhất, kiểm tra xem L1 có “hấp thụ“ a không (chưa vượt ngưỡng); nếu có thì đặc trưng CF của L1 bổ sung; • Nếu không, tạo nút mới cho a; nếu không đủ bộ nhớ cho lá mới thì cần chia lá cũ • Biến đổi đường đi tới lá khi bổ sung phần tử mới • Tinh chỉnh việc trộn: Tian Zhang, Raghu Ramakrishnan, Miron Livny (1996). BIRCH: An Efficient Data Clustering Method for Very Large Databases, SIGMOD Conference 1996: 103-114

  23. Các thuật toán phân cụm khác • Nghiêncứugiáotrình • Phâncụmphâncấptừtrênxuống DIANA • Đốingẫuphâncụmphâncấptừtrênxuống: phầntửkhácbiệt -> cụmkhácbiệt S, • Thêmvào S cácphầntửcó d > 0 • Phâncụmphâncấp ROCK • RObustClustering using linKs: xửlýdữliệurờirạc, quyếtđịnh “gần” theotậpphầntửlánggiềngsim (p, q) > >0. • Phâncụmdựatrênmậtđộ DBSCAN • Density-Based Spatial Clustering of Application with Noise • #-neighborhood: vùnglâncậnbánkính # • | #-neighborhood| > MinPtsgọiđốitượnglõi • P đạtđượctrựctiếptheomậtđộtừ q nếu q làđốitượnglõivà p thuộc#-neighborhood của q. • Đạtđượcnếucódãymàmỗicáisaulàđạtđượctrựctiếptừcáitrước • Phâncụmphâncấpdựatrênmôhình • Làmphùhợpphânbốcụmvớimôhìnhtoánhọc • Phâncụmcựcđạikỳvọng, phâncụmkháiniệm, họcmáymạngnơron • Phâncụmcựcđạikỳvọng: khởitạo, tínhgiátrịkỳvọng, cựcđạihóakỳvọng

  24. 7. Biểu diễn cụm và gán nhãn • Cácphươngphápbiểudiễnđiểndình • Theo đạidiệncụm • Đạidiệncụmlàmtâm • Tínhbánkínhvàđộlệchchuẩnđểxácđịnhphạm vi củacụm • Cụmkhôngellip/cầuhóa: khôngtốt • Theo môhìnhphânlớp • Chỉsốcụmnhưnhãnlớp • Chạythuậttoánphânlớpđểtìmrabiểudiễncụm • Theo môhìnhtầnsố • Dùngchodữliệuphânloại • Tầnsốxuấthiệncácgiátrịđặctrưngchotừngcụm • Lưu ý • Dữliệuphâncụmellip/cầuhóa: đạidiệncụmchobiểudiễntốt • Cụmhìnhdạngbấtthườngrấtkhóbiểudiễn

  25. Gán nhãn cụm • Phânbiệtcáccụm (MU) • Chọnđặctrưngtươngquancụm • Nxy (x cóđặctrưng t, y dữliệuthuộc C) • N11 : sốdữliệuchứa t thuộccụm C • N10 : sốdữliệuchứa t khôngthuộccụm C • N01 : sốdữliệukhôngchứa t thuộccụm C • N00 : sốdữliệukhôngchứa t khôngthuộccụm C • N: Tổngsốdữliệu • Hướng “trọngtâm” cụm • Dùngcácđặctrưngtầnsốcaotạitrọngtâmcụm • Tiêuđề • Chon đặctrưngcủadữliệutrongcụmgầntrọngtâmnhất

  26. Ví dụ: Gán nhãn cụm văn bản • Vídụ • Baphươngphápchọnnhãncụmđốivới 3 cụmlàcụm 4 (622 tàiliệu), cụm 9 (1017 tàiliệu), cụm 10 (1259 tàiliệu) khiphâncụm 10000 tàiliệuđầutiêncủabộ Reuters-RCV1 • centroid: cáctừkhóacótầnsốcaonhấttrongtrọngtâm; mutual information (MU): thông tin liênquanphânbiệtcáccụm; title: tiêuđềtàiliệugầntrọngtâmnhất. • Christopher D. Manning, PrabhakarRaghavan and HinrichSchütze, Introduction to Information Retrieval, Cambridge University Press. 2008.

  27. 8. Đánh giá phân cụm • Đánhgiáchấtlượngphâncụmlàkhókhăn • Chưabiếtcáccụmthựcsự • Mộtsốphươngphápđiểnhình • Ngườidùngkiểmtra • Nghiêncứutrọngtâmvàmiềnphủ • Luậttừcâyquyếtđịnh • Đọccácdữliệutrongcụm • Đánhgiátheocácđộđotươngtự/khoảngcách • Độphânbiệtgiữacáccụm • Phânlytheotrọngtâm • Dùngthuậttoánphânlớp • Coimỗicụmlàmộtlớp • Họcbộphânlớpđalớp (cụm) • Xâydựng ma trậnnhầmlẫnkhiphânlớp • Tínhcácđộđo: entropy, tinhkhiết, chínhxác, hồitưởng, độđo F vàđánhgiátheocácđộđonày

  28. Đánh giá theo độ đo tương tự • Độphânbiệtcáccụm • Cựcđạihóatổngđộtươngtựnộitạicủacáccụm • Cựctiểuhóatổngđộtươngtựcáccặpcụmkhácnhau • Lấyđộtươngtựcựctiểu (complete link), cựcđại (single link) • Mộtsốphươngphápđiểnhình • Phânlytheotrọngtâm

  29. Ví dụ: Chế độ và đặc điểm phân cụm web • Haichếđộ • Trựctuyến: phâncụmkếtquảtìmkiếmngườidùng • Ngoạituyến: phâncụmtậpvănbảnchotrước • Đặcđiểm • Chếđộtrựctuyến: tốcđộphâncụm • Web sốlượnglớn, tăngnhanhvàbiếnđộnglớn • Quantâmtớiphươngphápgiatăng • Mộtlớpquantrọng: phâncụmliênquantớicâuhỏitìmkiếm • Trựctuyến • Ngoạituyến Carpineto C., Osinski S., Romano G., Weiss D. (2009). A survey of web clustering engines, ACM Comput. Surv. , 41(3), Article 17, 38 pages.

  30. Ví dụ

  31. Phân cụm kết quả tìm kiếm

More Related