Bài giảng Khai phá dữ liệu Web - Chương 2: Khai phá sử dụng web và khai phá cấu trúc web

ppt 45 trang ngocly 140
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Khai phá dữ liệu Web - Chương 2: Khai phá sử dụng web và khai phá cấu trúc web", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pptbai_giang_khai_pha_du_lieu_web_chuong_2_khai_pha_su_dung_web.ppt

Nội dung text: Bài giảng Khai phá dữ liệu Web - Chương 2: Khai phá sử dụng web và khai phá cấu trúc web

  1. BÀI GiẢNG KHAI PHÁ DỮ LIỆU WEB CHƯƠNG 2. KHAI PHÁ SỬ DỤNG WEB VÀ KHAI PHÁ CẤU TRÚC WEB PGS. TS. HÀ QUANG THỤY HÀ NỘI 10-2010 TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐẠI HỌC QUỐC GIA HÀ NỘI 1
  2. Nội dung 1. Khai phá sử dụng Web 2. Khai phá cấu trúc web 2
  3. 1. Khai phá sử dụng Web ⚫ Giới thiệu chung ⚫ Phân tích mẫu truy nhập Web ⚫ Mang tính thói quen có tính cộng đồng ⚫ Khai phá mẫu truy nhập theo luật kết hợp ⚫ Khai phá xu hướng sử dụng ⚫ Cá nhân hóa ⚫ Các hệ tư vấn 3
  4. 1.a. Giới thiệu chung ⚫ Nguồn dữ liệu ▪ Các logfile (máy chủ, máy khách, máy trung gian) ▪ CSDL khách hàng ⚫ Mô hình dữ liệu ▪ Thực thể: người sử dụng, khung nhìn trang web, file trang Web, trình duyệt, phục vụ web, phục vụ nội dung, phiên người sử dụng, phiên phục vụ, dãy các sự kiện liên quan (episode). ⚫ Tiền xử lý dữ liệu ▪ Loại: cấu trúc, nội dung ▪ Bài toán: xử lý văn bản, rút gọn đặc trưng, mô hình dữ liệu. ⚫ Phát hiện mẫu ▪ Mẫu quan hệ: thống kê, luật kết hợp, luật chuỗi, phân cụm, phân lớp, mô hình phụ thuộc ▪ Đại chúng và cá nhân hóa 4
  5. 1.a. Một quy trình khai phá sử dụng Web Quá trình khai phá sử dụng Web [Coo00] ▪ Input: Dữ liệu sử dụng Web ▪ Output: Các luật, mẫu, thống kê hấp dẫn ▪ Các bước chủ yếu: ▪ Tiền xử lý dữ liệu ▪ Khám phá mẫu ▪ Phân tích mẫu 5
  6. Sơ đồ ghi dữ liệu vào logfile KDnuggets.com Server Page contents Web server log 152.152.98.11 - - [16/Nov/2005:16:32:50 -0500] "GET HTTP/1.1" 200 152.152.98.11 - - [16/Nov/2005:16:32:50 -0500] "GET /gps.html HTTP/1.1" 200 152.152.98.11 - - [16/Nov/2005:16:32:50 -0500] "GET /jobs/ HTTP/1.1" 200 ⚫ Thông tin truy nhập người dùng ▪ Server tổ chức ghi nhận vào logfile ▪ Hỗ trợ quản lý điều hành 6 ▪ Tài nguyên Khai phá dữ liệu, nâng cao hiệu năng hệ thống
  7. Một dòng ví dụ trong weblog 152.152.98.11 - - [16/Nov/2005:16:32:50 -0500] "GET /jobs/ HTTP/1.1" 200 15140 " " "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)“ 152.152.98.11 Địa chỉ của hotname - - Tên và login của người dùng từ xa: thường là “-” [16/Nov/2005:16:32:50 -0500] Ngày và giờ truy nhập. Giờ GMT: (+|-)HH00 US UST: -500 "GET /jobs/ HTTP/1.1" Phương thức lấy thông tin, URL liên quan tới tên miền; giao thức 200 Trạng thái 200 – OK (hầu hết, đạt đươc) | 206 – truy nhập bộ phận – chuyển hướng vĩnh viến (truy nhập tới/ tiến trình định hướng lại /tiến trình/ )| 302 – định hướng tạm thời| 304 – không thay đổi | 404 – không thấy| 15140 Dung lượng tải về máy khách | “-” nếu trạng thái 304 " &lr=&start=10&sa=N" URL của người thăm (ở đây là từ Google) "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)“ đại lý của người dùng 7
  8. Một ví dụ về log files Một phần query log của AOL (trên) và Cấu trúc log của Google (dưới) 8
  9. 1.b. Phân tích mẫu truy nhập ⚫ Phân tích mẫu từ logfile ▪ Tìm tập mục phổ biến, dãy phổ biến, cây con phổ biến ▪ Phân tích mẫu phổ biến tìm được [IV06] Renáta Iváncsy, István Vajk (2006). Frequent Pattern Mining in Web Log Data, Acta Polytechnica Hungarica, 3(1):77-90. 9
  10. 1.b. Ví dụ về mẫu phổ biến sử dụng Web [IV06] Renáta Iváncsy, István Vajk (2006). Frequent Pattern Mining in Web Log Data, Acta Polytechnica Hungarica, 3(1):77-90, 2006 10
  11. 1.b. Ví dụ về mẫu kết hợp ❖ Một số ví dụ về “luật kết hợp” (associate rule) ➢ “98% khách hàng mà mua tạp chí thể thao thì đều mua các tạp chí về ôtô”  sự kết hợp giữa “tạp chí thể thao” với “tạp chí về ôtô” ➢ “60% khách hàng mà mua bia tại siêu thị thì đều mua bỉm trẻ em”  sự kết hợp giữa “bia” với “bỉm trẻ em” ➢ “Có tới 70% người truy nhập Web vào địa chỉ Url1 thì cũng vào địa chỉ Url2 trong một phiên truy nhập web”  sự kết hợp giữa “Url 1” với “Url 2”. Khai phá dữ liệu sử dụng Web (lấy dữ liệu từ file log của các site, chẳng hạn được MS cung cấp). Các Url có gắn với nhãn “lớp” là các đặc trưng thì có luật kết hợp liên quan giữa các lớp Url này. ❖ Khái niệm cơ sở về luật kết hợp 11
  12. Khai phá luật kết hợp: Cơ sở Cơ sở dữ liệu giao dịch (transaction database) ➢ Tập toàn bộ các mục I = {i1, i2, , ik}: “tất cả các mặt hàng”. ➢ Giao dịch: danh sách các mặt hàng (mục: item) trong một phiếu mua hàng của khách hàng. Giao dịch T là một tập mục. • Một giao dịch T là một tập con của I: T  I. Mỗi giao dịch T có một định danh là TID. ➢ A là một tập mục A  I và T là một giao dịch: Gọi T chứa A nếu A  T. 12
  13. Khai phá luật kết hợp: cơ sở • Luật kết hợp ➢ Gọi A → B là một “luật kết hợp” nếu A  I, B  I và AB=. ➢ Luật kết hợp A → B có độ hỗ trợ (support) s trong CSDL giao dịch D nếu trong D có s% các giao dịch T chứa AB: chính là xác suất P(AB). Tập mục A có P(A) s>0 (với s cho trước) được gọi là tập phổ biến (frequent set). ➢ Luật kết hợp A → B có độ tin cậy (confidence) c trong CSDL D nếu như trong D có c% các giao dịch T chứa A thì cũng chứa B: chính là xác suất P(B|A). • Support (A → B) = P(AB) : 1 s (A → B) 0 • Confidence (A → B) = P(B|A) : 1 c (A → B) 0 ➢ Luật A → B được gọi là đảm bảo độ hỗ trợ s trong D nếu s(A → B) s. Luật A→B được gọi là đảm bảo độ tin cậy c trong D nếu c(A → B) c. Tập mạnh. 13
  14. Ví dụ: Mẫu phổ biến và luật kết hợp ◼ Tập mục I={i1, , ik}. CSDL giao dịch D = {d  I} Transaction-id Items bought ◼ A, B  I, AB=: A→ B là luật kết hợp 10 A, B, C ◼ Bài toán tìm luật kết hợp. 20 A, C Cho trước độ hỗ trợ tối thiểu s>0, độ 30 A, D tin cậy tối thiếu c>0. Hãy tìm mọi luật 40 B, E, F kết hợp mạnh X→Y. Giả sử min_support = 50%, min_conf Customer Customer = 50%: buys both buys diaper A → C (50%, 66.7%) C → A (50%, 100%) ⚫ Hãy trình bày các nhận xét về khái niệm luật kết hợp với khái niệm phụ thuộc hàm. Customer ⚫ Các tính chất Armstrong ở đây. buys beer 14
  15. Một ví dụ tìm luật kết hợp Min. support 50% Transaction-id Items bought Min. confidence 50% 10 A, B, C 20 A, C Frequent pattern Support 30 A, D {A} 75% 40 B, E, F {B} 50% {C} 50% For rule A C: {A, C} 50% support = support({A}{C}) = 50% confidence = support({A}{C})/support({A}) = 66.6% 15
  16. Khai niệm khai phá kết hợp 16
  17. Khai phá luật kết hợp ⚫ Khai phá luật kết hợp: ➢ Tìm tất cả mẫu phổ biến, kết hợp, tương quan, hoặc cấu trú nhan-quả trong tập các mục hoặc đối tượng trong CSDL quan hệ hoặc các kho chứa thông tin khác. ➢ Mẫu phổ biến (Frequent pattern): là mẫu (tập mục, dãy mục ) mà xuất hiện phổ biến trong 1 CSDL [AIS93] ⚫ Động lực: tìm mẫu chính quy (regularities pattern) trong DL ➢ Các mặt hàng nào được mua cùng nhau? — Bia và bỉm (diapers)?! ➢ Mặt hàng nào sẽ được mua sau khi mua một PC ? ➢ Kiểu DNA nào nhạy cảm với thuộc mới này? ➢ Có khả năng tự động phân lớp Web hay không ? 17
  18. Mẫu phổ biến và khai phá luật kết hợp là một bài toán bản chất của khai phá DL ⚫ Nền tảng của nhiều bài toán KPDL bản chất ⚫ Kết hợp, tương quan, nhân quả ⚫ Mẫu tuần tự, kết hợp thời gian hoặc vòng, chu kỳ bộ phận, kết hợp không gian và đa phương tiện ⚫ Phân lớp kết hợp, phân tích cụm, khối tảng băng, tích tụ (nén dữ liệu ngữ nghĩa) ⚫ Ứng dụng rộng rãi ⚫ Phân tích DL bóng rổ, tiếp thị chéo (cross-marketing), thiết kế catalog, phân tích chiến dịch bán hàng ⚫ Phân tích Web log (click stream), Phân tích chuỗi DNA v.v. 18
  19. Apriori: Một tiếp cận sinh ứng viên và kiểm tra ⚫ Khái quát: Khai phá luật kết hợp gồm hai bước: ⚫ Tìm mọi tập mục phổ biến: theo min-sup ⚫ Sinh luật mạnh từ tập mục phổ biến ⚫ Mọi tập con của tập mục phổ biến cũng là tập mục phổ biến ⚫ Nếu {bia, bỉm, hạnh nhân} là phổ biến thì {bia, bỉm} cũng vậy: Mọi giao dịch chứa {bia, bỉm, hạnh nhân} cũng chứa {bia, bỉm}. ⚫ Nguyên lý tỉa Apriori: Với mọi tập mục không phổ biến thì mọi tập bao không cần phải sinh ra/kiểm tra! ⚫ Phương pháp: ⚫ Sinh các tập mục ứng viên dài (k+1) từ các tập mục phổ biến có độ dài k (Độ dài tập mục là số phần tử của nó), ⚫ Kiểm tra các tập ứng viên theo CSDL ⚫ Các nghiên cứu hiệu năng chứng tỏ tính hiệu quả và khả năng mở rộng của thuật toán ⚫ Agrawal & Srikant 1994, Mannila, và cộng sự 1994 19
  20. Thuật toán Apriori ❖Trên cơ sở tính chất (nguyên lý tỉa) Apriori, thuật toán hoạt động theo quy tắc quy hoạch động ❑ Từ các tập Fi = {ci| ci tập phổ biến, |ci| = i} gồm mọi tập mục phổ biến có độ dài i với 1 i k, ❑ đi tìm tập Fk+1 gồm mọi tập mục phổ biến có độ dài k+1. ❖Trong thuật toán: các tên mục i1, i2, in (n = |I|) được sắp xếp theo một thứ tự cố định: thường được đánh chỉ số 1, 2, , n. 20
  21. Thuật toán Apriori 21
  22. Thuật toán: Thủ tục con Apriori-gen Trong mỗi bước k, thuật toán Apriori đều phải duyệt CSDL D. Khởi động, duyệt D để có được F1. Các bước k sau đó, duyệt D để tính số lượng giao dịch t thoả từng ứng viên c của Ck+1: mỗi giao dịch t chỉ xem xét một lần cho mọi ứng viên c thuộc Ck+1. Thủ tục con Apriori-gen sinh tập phổ biến: tư tưởng 22
  23. Thủ tục con Apriori-gen June 17, 2021 Data Mining: Concepts and Techniques 23
  24. Một ví dụ thuật toán Apriori (s=0.5) Itemset sup Itemset sup Database TDB {A} 2 L1 {A} 2 Tid Items C1 {B} 3 {B} 3 10 A, C, D {C} 3 st {C} 3 20 B, C, E 1 scan {D} 1 {E} 3 30 A, B, C, E {E} 3 40 B, E C2 Itemset sup C 2 Itemset {A, B} 1 L Itemset sup 2nd scan 2 {A, C} 2 {A, B} {A, C} 2 {A, E} 1 {A, C} {B, C} 2 {B, C} 2 {A, E} {B, E} 3 {B, E} 3 {B, C} {C, E} 2 {C, E} 2 {B, E} {C, E} Itemset L C3 3rd scan 3 Itemset sup {B, C, E} 24 {B, C, E} 2
  25. Chi tiết quan trọng của Apriori ⚫ Cách thức sinh các ứng viên: ⚫ Bước 1: Tự kết nối Lk ⚫ Step 2: Cắt tỉa ⚫ Cách thức đếm hỗ trợ cho mỗi ứng viên. ⚫ Ví dụ thủ tục con sinh ứng viên ⚫ L3={abc, abd, acd, ace, bcd} ⚫ Tự kết nối: L3*L3 ⚫ abcd từ abc và abd ⚫ acde từ acd và ace ⚫ Tỉa: ⚫ acde là bỏ đi vì ade không thuộc L3 ⚫ C4={abcd} 25
  26. Ví dụ: D, min_sup*|D| = 2 (C4 = ) 26
  27. Sinh luật kết hợp Việc sinh luật kết hợp gồm hai bước ⚫ Với mỗi tập phổ biến W tìm được hãy sinh ra mọi tập con thực sự X khác rỗng của nó. ⚫ Với mỗi tập phố biến W và tập con X khác rỗng thực sự của nó: sinh luật X → (W – X) nếu P(W-X|X) c. Như ví dụ đã nêu có L3 = {{I1, I2, I3}, {I1, I2, I5}} Với độ tin cậy tối thiểu 70%, xét tập mục phổ biến {I1, I2, I5} có 3 luật như dưới đây: Duyệt CSDL ? 27
  28. 1.b. Luật kết hợp và luật dãy sử dụng Web ⚫ Các loại mẫu điển hình: xu hướng chung của mọi người ▪ Luật kết hợp ▪ Luật dãy ▪ Cây con phổ biến 28
  29. 1.c. Nghiên cứu về luật kết hợp ⚫ Thống kê từ Google Scholar về số bài viết: ▪ Với cụm từ “Association Rule”: ▪ Ở tiêu đề: 2.060 bài (khoảng) 1.000 bài (2006 – nay) ▪ Ở mọi nơi: 27.400 bài (khoảng) ▪ Với cụm từ “Apriori Algorithm”: ▪ Ở tiêu đề: 350 bài (khoảng) 219 bài (2006 – nay) ▪ Ở mọi nơi: 8.820 bài (khoảng) ▪ Với cụm từ “Sequential Pattern”: ▪ Ở tiêu đề: 590 bài (khoảng) 270 bài (2006 – nay) ▪ Ở mọi nơi: 15.700 bài (khoảng) 29
  30. 1.c. Khai phá xu hướng cá nhân ⚫ Giới thiệu ▪ “Cá nhân hóa”: Thông tin cá nhân và tư vấn cá nhân hóa ▪ Thông tin cá nhân: CSDL quản lý; Máy khách ▪ Ngữ cảnh làm việc của cá nhân ⚫ Một số hình thức ▪ Khai phá xu hướng cá nhân từ thông tin máy khách ▪ Hệ tư vấn ⚫ Hệ tư vấn ▪ Recommendation Systems ▪ Lọc cộng tác, lọc nội dung, lọc kết hợp ▪ Hội thảo dành riêng: các năm 2007, 2009, 2010 ▪ 30
  31. 1.c. Sinh tư vấn dựa theo tiểu sử người dùng [RK07] Tarmo Robal, Ahto Kalja (2007). Applying User Profile Ontology for Mining Web Site Adaptation Recommendations, ADBIS Research Communications 2007 31
  32. 1.c. Khai phá sử dụng Web Hệ thống khai phá sử dụng Web tư vấn hướng cá nhân ▪ Kiến trúc hệ thống (trên) ▪ và sinh ontology sử dụng Web (dưới) Baoyao Zhou, Siu Cheung Hui, Alvis C. M. Fong (2005). Web Usage Mining for Semantic Web Personalization, Workshop on Personalization on the Semantic Web, 66–7232 , Edinburgh, UK, 2005.
  33. 1.c. Hệ thống tư vấn: lọc nội dung Lấy nội dung thuộc tính các sản phẩm người dùng đã ưa thích để dự đoán sản phẩm ưa thích tiếp theo 33
  34. 1.c. Hệ thống tư vấn: lọc cộng tác Quan hệ người dùng – sản phẩm: nhóm người dùng “tương tự nhau” và khi có một người dùng trong “thích” thì các người khác cũng “thích” tương tự 34
  35. 1.c. Hệ thống tư vấn: lọc cộng tác 35
  36. 1.c. Hệ thống tư vấn: lọc cộng tác Jinhua Sun, Yanqi Xie (2009). A Web Data Mining Framework for E-commerce Recommender Systems, Computational Intelligence and Software Engineering, 2009. CiSE 2009. 36
  37. Nghiên cứu về khai khá sử dụng Web ⚫ Thống kê từ Google Scholar về số bài viết: ▪ Với cụm từ “Web Usage Mining”: ▪ Ở tiêu đề: 860 bài (khoảng) 280 bài (2006 – nay) ▪ Ở mọi nơi: 171.000 bài (khoảng) ▪ Với cụm từ “Web Log Mining”: ▪ Ở tiêu đề: 340 bài (khoảng) 140 bài (2006 – nay) ▪ Ở mọi nơi: 137.000 bài (khoảng) ▪ Với cụm từ “Recommendation System”: ▪ Ở tiêu đề: 1.750 bài (khoảng) 750 bài (2006 – nay) ▪ Ở mọi nơi: 1.760.000 bài (khoảng) 37
  38. 2. Khai phá cấu trúc Web ⚫ Hai bài toán điển hình ➢ Khai phá liên kết Web ➢ Khai phá cấu trúc trang Web ⚫ Khai phá liên kết Web ➢ Mỗi trang Web là một đỉnh ➢ Liên kết các trang Web hình thành các cung ➢ Đồ thị có hướng hoặc vô hướng ➢ Web phản ánh xã hội: đồ thị Web là một loại mạng xã hội ➢ Hạng trang Web, một bài toán điển hình: tính “độ quan trọng” của một trang Web (một nút trên đồ thị Web) ➢ Khai phá liên kết Web: Phân lớp trang web dựa theo liên kết, Phân tích cụm dựa theo liên kết, Kiểu liên kết; Độ mạnh liên kết; 38
  39. 2. Khai phá liên kết Web ⚫ Phân lớp Web dựa theo liên kết ➢ Khai thác thông tin liên kết cho phân lớp Web ⚫ Phân cụm Web dựa theo liên kết ➢ Tìm ra sự xuất hiện tự nhiên các lớp con: dữ liệu là liên kết ⚫ Phân tích kiểu liên kết ➢ Dự báo về sự tồn tại của liên kết ➢ Dự báo mục đích của liên kết ⚫ Phân tích độ mạnh liên kết ➢ Độ mạnh của cung và đỉnh (hạng trang) ⚫ Phân tích số lượng liên kết ➢ Dự báo số lượng liên kết giữa các đối tượng Miguel Gomes da Costa Júnior, Zhiguo Gong (2006). Web Structure Mining: An Introduction, the 2005 IEEE International Conference on Information Acquisition: 590-595 39
  40. 2. Khai phá cấu trúc trang Web ⚫ Cấu trúc trang Web ➢ Trang Web được viết theo ngôn ngữ trình bày Web: chẳng hạn HTML, XML ➢ Trang web được tổ chức dưới dạng hình cây ➢ Cấu trúc trình bày nội dung trang web ⚫ Phân tích cấu trúc trang Web ➢ Tìm các mẫu cấu trúc trang Web ➢ Kết hợp với khai phá nội dung Web 40
  41. 2. Khai phá cấu trúc trang báo điện tử Davi de Castro Reis, Paulo B. Golgher, Altigran S. da Silva, Alberto H. F. Laender (2004). Automatic Web News Extraction Using Tree Edit Distance, Proceedings of the Thirteenth International World Wide Web Conference: 502-601, ACM Press, New York, NY, May 2004, ISBN 1581139128 41
  42. 2. Khai phá cấu trúc trang báo điện tử Davi de Castro Reis, Paulo B. Golgher, Altigran S. da Silva, Alberto H. F. Laender (2004). Automatic Web News Extraction Using Tree Edit Distance, Proceedings of the Thirteenth International World Wide Web Conference: 502-601, ACM Press, New York, NY, May 2004, ISBN 1581139128 42
  43. 2. Áp dụng: báo điện tử Việt Nam 43
  44. 2. Áp dụng: báo điện tử Việt Nam Vũ Ngọc Anh (2006). Kênh tin tức điện tử cho PDAs & Smartp, Luận văn 44 Thạc sỹ, Trường ĐHCN-ĐHQGHN
  45. 2. Áp dụng: báo điện tử Việt Nam ⚫ vong-chung-khao-Tri-tue-Viet-Nam/20641855/217/ ; Thứ sáu, 08 Tháng mười hai 2006, 02:31 GMT+7 ➢ “4. Vienews - kênh báo điện tử trên thiết bị điện thoại di động thông minh (Vũ Ngọc Anh, Hà Duyên Hòa - Hà Nội): Sản phẩm hỗ trợ thiết bị di động cầm tay đọc báo điện tử qua môi trường Internet không dây”. ⚫ vn/dacsan/2006/8/17521.bcvt ; 7:58, 02/01/2007 ➢ 7. Giải Ba: Sản phẩm đoạt giải: “Các kênh báo điện tử trên thiết bị điện thoại di động thông minh” của Hà Duyên Hoá (Hà Nội). 45