PageRank Algorithm       The top ten Algorithms in       Data Mining       Bùi Đình Luyến
Nội dung   • Thuật toán và ví dụ   • Một số yếu tố ảnh hưởng   • Thuật toán cải tiến                               2
Ý tưởng thuật toán    • “Nếu có liên kết từ trang A đến trang B thì      độ quan trọng của trang A cũng ảnh      hưởng đến...
Công thức tính toán(1)    • Coi Web là đồ thị liên thông G = (V, E)    • inbound link và outbound link    • Giá trị PageRa...
Công thức tính toán(2)    • Cách viết khác (dạng ma trận)    • Trong đó         P = (P(1), P(2),…,P(n))T là vector        ...
Tính vector riêng                    6
Trên thực tế    • Giả thiết đồ thị Web liên thông là không      thực tế.    • Dangling nodes.    • Độ quan trọng của bất k...
Giải quyết dangling nodes                            8
Mô hình duyệt ngẫu nhiên    • Vector PageRank tỉ lệ với phân phối xác      suất dừng của một quá trình ngẫu nhiên.    • Pa...
Hệ số hãm d              10
Ví dụ (1).1              11
Ví dụ (1).2              12
Inbound links(1)      -Với d=0.5, PR(A) gấp khoảng 4 lần PR(D)      -Với d=0.75, PR(A) gấp khoảng 2 lần PR(D)         d=0....
Inbound links(2)                   14
Outbound links(1)    -d=0.75    -Tổng là 92/23 = 4                         15
Outbound links(2) – Dangling links                                   Tổng là 36/23              PR(A) = PR(B) = 1         ...
Outbound links(3) – Dangling links    • Theo Page và Brin, số lượng dangling link      của Google là khá cao, vì khá nhiều...
Sự phân bố PageRank(1)   1a    1b         2a        2b              3a         3b        18
Sự phân bố PageRank(2)    • d = 0.5, PR(X) = 10      1a                    1b                                 19
Sự phân bố PageRank(3)    • d = 0.5        2a               2b                              20
Sự phân bố PageRank(4)    • d = 0.5    3a               3b                          21
Các thuật toán cải tiến PageRank    • Timed PageRank    • Topic sensitive PageRank    • Adaptive PageRank                 ...
Timed PageRank                 23
Topic sensitive PageRank    • Taher H. Haveliwala đề xuất, 2002    • PageRank quan tâm đến nội dung Website    • Gồm 2 bướ...
Adaptive PageRank    • Sepandar D. Kamvar và cộng sự, 2003    • Tận dụng những trang hội tụ sớm và kết      quả độ quan tr...
Tài liệu tham khảo    • The top ten algorithms in data mining    • Hà Quang Thụy, Phan Xuân Hiếu, Đoàn      Sơn, Nguyễn Tr...
27
Upcoming SlideShare
Loading in …5
×

Page rank

1,121 views

Published on

Some examples about page rank algorithm - The top ten algorithms in data minning

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,121
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
81
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Được Sergey Brin, Lawrance Page và các cộng sự, 1998Một trong những thuật toán được dùng cho máy tìm kiếm Google
  • Với V là cạnh G (liên kết), và E là các đỉnh (trang web)2 khái niệm inbound link và outbound link
  • Việc tính toán hạng trang lại phụ thuộc vào việc biết được hạng trang của các Web liên kết tới nó  có thể gây ra vòng lặp vô hạnGiải pháp: Có thể tính được hạng trang thông qua việc tính vector riêng của ma trận AT
  • Có nhiều cách tính toán vector riêng, tuy nhiên phương pháp lặp là khá thuận tiệnHiệu quả: Brin và Page chỉ ra rằng, các giá trị này hội tụ khá nhanh, chỉ sau khoảng 100 vòng lặp là có thể nhận được kết quả với sai số cho phép
  • Trên thực tế, đồ thị Web là không liên thông.Có rất nhiều trang web không hề liên kết đến bất cứ trang nào (dangling nodes) hay ngược lại, gây ra một số hàng của ma trận A toàn số 0 (vì không có outbound link), tức là độ quan trọng của một trang Web là 0.Điều này không đúng, vì một trang Web nào cũng được tạo ra phải mang ý nghĩa nào đó, tức là độ quan trọng của nó phải dương.
  • Nếu 1 trang là dangling node, ta sẽ coi như trang đó có outbound link đến tất cả các trang còn lại của G.Có nghĩa là thay hàng số 0 bằng 1 hàng với các phần tử là 1/N, N là số trang của G
  • Với mô hình duyệt ngẫu nhiên, vector PageRank phải có tính dừng (duy nhất), nên công thức PageRank được sửa đổi với hệ số hãm d để đảm bảo điều này.Sự khác nhau của 2 công thức, nhưng ý nghĩa là giống nhau?Ý nghĩa của hệ số hãm: bổ sung thêm giá trị PageRank cho nhóm trang không có link ra ngoài nhóm. Khi d = 1, trở về công thức PageRank ban đầu.Các ví dụ sau sẽ sử dụng công thức (1)
  • Giải bằng cách tính hệ phương trình 3 ẩnTuy nhiên, thực tế sơ đồ Web rất lớn, không thể giải hệ phương trình đó trong thời gian ngắn được, nên ta sẽ dùng phương pháp lặp, nhưng ở đây vẫn chỉ lấy ví dụ lặp với sơ đồ Web có 3 trang ở trên
  • Có thể thấy chỉ sau 12 vòng lặp đã cho ta kết quả tốt !Khởi đầu bằng vector (1, 1, 1)
  • Mô tả hình vẽPhần này ta xem xét đến việc thêm 1 inbound link sẽ ảnh hưởng thế nào đến các giá trị PageRank của đồ thị WebDựa vào công thức đã nêu (1), sẽ tăng thêm 1 lượng là …, ta xét 2 trường hợp như slide với d khác nhauTính theo công thức lý thuyết trên thì PR tăng 5 và 7.5, tuy nhiên chúng ta xem có thật sự là tăng lên theo công thức trên hay không?
  • Khi có 1 inbound link đến một hệ đóng thì hiển nhiên, hệ đó sẽ nhận được thêm giá trị PageRankĐây chính là thực tế là sẽ tăng lên theo công thức trên
  • Mô tả hình vẽTổng vẫn là 4, nghĩa là không có sự mất mát nào trong 2 hệ này khi có 1 outbound link từ A đến C
  • Mô tả hình vẽTa thấy tổng chỉ lớn hơn 1.5 một chút, do C là dangling node nên giá trị PageRank của hệ này giảm đi gần 1 nửaGiải pháp: thực hiện xóa tạm thời các dangling node, sau đó mới tính toán giá trị PageRank.2 hình trên là không cùng một vấn đềViệc xóa Dangling node có thể sẽ phải lặp.
  • Theo Page và Brin, số lượng dangling link của Google là khá cao, vì khá nhiều link không được máy tìm kiếm liệt kê vì lý do sau:File robots.txt: đây là file đặt ở thư mục root của web, có chức năng cho phép hoặc không cho phép bọ tìm kiếm liệt kê các thành phần của website, và một số chức năng khác. Quản trị mạng sử dụng file này để không cho phép liệt kê.Với các loại file như PDF hay Word thì không có outboud link do đó không liệt kê được.
  • Mô tả hình vẽPageRank sẽ phân bố cho mục đích tối ưu hóa máy tìm kiếm, (cụ thể) những trang có phân bậc thấp (1b) càng liên kết với nhau thì PageRank của chúng sẽ càng tăng.
  • Mô tả hình vẽGiá trị PageRank của mỗi trang đều tăng (2b)Để tối ưu hóa máy tìm kiếm, nên tập trung những outbound link vào càng ít trang càng tốt
  • Mô tả hình vẽ-PR(A) và PR(D) đều tăng(hiển nhiên các PR khác sẽ phải giảm)  Trái ngược với việc liên kết các trang ở phân cấp thấp hơn(như đã xét ở hình 1)  cần thiết nếu để tối ưu hóa cụm từ khóa quan trọng.
  • - Trong phần trình bày tiếp theo, nêu ý tưởng của các thuật toán cải tiến PageRank
  • Xét đến tính đúng lúc của kết quả tìm kiếm (các trang web đã chất lượng chưa chắc đã có chất lượng so với hiện tại hay tương lai)Vấn đề: những trang cũ có lượng inbound link lớn, nhưng những trang mới thì có rất ít (hoặc k có)Giải quyết: nếu là trang cũ thì f(t) sẽ nhỏ và 1-f(t) lớn  xác suất nhảy đến trang khác sẽ lớn. Ngược lại, nếu trang mới thì xác suất nhảy đến trang khác là nhỏ !X. Li, B. Liu, and P. S. Yu. Time Sensitive Ranking with Application to Publication Search. Conference on Data Mining 2008
  • Quan tâm đến nội dung trang Web. Hơn nữa, nếu khai thác được mối qtâm của người dùng đối với trang Web trong quá trình tính độ phù hợp của trang Web với câu hỏi người dùng, thì rất có ý nghĩa.Miền quan tâm của người dùng gọi là “phạm vi ngữ cảnh”B1: Phân các trang Web thành các lớp chủ đề, mỗi lớp tương tứng với 1 vector PageRank, mà thành phân của nó là giá trị PageRank của mỗi trang trong lớp.B2: Được thực hiện trong thời gian hỏi đáp:Truy vấn thường thì chính truy vấn là phạm vi ngữ cảnh (tức là miền quan tâm của người dùng)Phức tạp hơn thì dùng thuật toán phân lớp Bayes
  • PR đánh giá hạng trang thông qua liên kết giữa các Website bằng cách tính vector riêng của ma trận kề biểu diễn các trang WebNhưng kích thước WWW là khổng lồ, cần rất nhiều thời gian tính toánViệc tính toán nhanh vector riêng sẽ giảm thời gian chết của việc chờ đưa kết quả sang các thành phần khác của máy tìm kiếmGiải pháp: Adaptive PageRank, sau khi cài đặt và chạy chương trình, độ quan trọng của các trang Web hội tụ nhanh hoặc chậm. Ta sẽ tận dụng những trang hội tụ sớm và kết quả độ quan trọng của các trang đã hội tụ có thể không cần tính tiếp giảm tính toán dư thừa, tăng hiệu suất tính toán của hệ thống !
  • Page rank

    1. 1. PageRank Algorithm The top ten Algorithms in Data Mining Bùi Đình Luyến
    2. 2. Nội dung • Thuật toán và ví dụ • Một số yếu tố ảnh hưởng • Thuật toán cải tiến 2
    3. 3. Ý tưởng thuật toán • “Nếu có liên kết từ trang A đến trang B thì độ quan trọng của trang A cũng ảnh hưởng đến độ quan trọng của trang B”. 3
    4. 4. Công thức tính toán(1) • Coi Web là đồ thị liên thông G = (V, E) • inbound link và outbound link • Giá trị PageRank P(i) của trang i • Trong đó Oj là số liên kết từ trang i (outbound link) 4
    5. 5. Công thức tính toán(2) • Cách viết khác (dạng ma trận) • Trong đó P = (P(1), P(2),…,P(n))T là vector PageRank – vector riêng của AT A là ma trận n x n với 5
    6. 6. Tính vector riêng 6
    7. 7. Trên thực tế • Giả thiết đồ thị Web liên thông là không thực tế. • Dangling nodes. • Độ quan trọng của bất kì một trang Web nào cũng phải là dương. 7
    8. 8. Giải quyết dangling nodes 8
    9. 9. Mô hình duyệt ngẫu nhiên • Vector PageRank tỉ lệ với phân phối xác suất dừng của một quá trình ngẫu nhiên. • PageRank của một trang Web chính là xác suất để 1 người ngẫu nhiên duyệt trang Web đó. 9
    10. 10. Hệ số hãm d 10
    11. 11. Ví dụ (1).1 11
    12. 12. Ví dụ (1).2 12
    13. 13. Inbound links(1) -Với d=0.5, PR(A) gấp khoảng 4 lần PR(D) -Với d=0.75, PR(A) gấp khoảng 2 lần PR(D) d=0.5; PR(X)=10  Với hệ số hãm cao hơn, ảnh hưởng của d=0.75; PR(X)=10 việc thêm 1 inbound link với đồ thị Web: phân bố đều hơn giữa các trang trong đồ thị ! PR tăng 7.5 PR tăng 5 13
    14. 14. Inbound links(2) 14
    15. 15. Outbound links(1) -d=0.75 -Tổng là 92/23 = 4 15
    16. 16. Outbound links(2) – Dangling links Tổng là 36/23 PR(A) = PR(B) = 1 PR(C) = 0.25 + 0.375 PR(A) = 0.625 16
    17. 17. Outbound links(3) – Dangling links • Theo Page và Brin, số lượng dangling link của Google là khá cao, vì khá nhiều link không được index: – File robots.txt – Các file PDF, Word không có outbound links • Việc loại bỏ các dangling link trong tính toán sẽ tối ưu hơn cho tìm kiếm ! 17
    18. 18. Sự phân bố PageRank(1) 1a 1b 2a 2b 3a 3b 18
    19. 19. Sự phân bố PageRank(2) • d = 0.5, PR(X) = 10 1a 1b 19
    20. 20. Sự phân bố PageRank(3) • d = 0.5 2a 2b 20
    21. 21. Sự phân bố PageRank(4) • d = 0.5 3a 3b 21
    22. 22. Các thuật toán cải tiến PageRank • Timed PageRank • Topic sensitive PageRank • Adaptive PageRank 22
    23. 23. Timed PageRank 23
    24. 24. Topic sensitive PageRank • Taher H. Haveliwala đề xuất, 2002 • PageRank quan tâm đến nội dung Website • Gồm 2 bước: – Phân các trang Web thành các lớp chủ đề – Được thực hiện trong thời gian hỏi – đáp 24
    25. 25. Adaptive PageRank • Sepandar D. Kamvar và cộng sự, 2003 • Tận dụng những trang hội tụ sớm và kết quả độ quan trọng của các trang đã hội tụ có thể không cần tính tiếp 25
    26. 26. Tài liệu tham khảo • The top ten algorithms in data mining • Hà Quang Thụy, Phan Xuân Hiếu, Đoàn Sơn, Nguyễn Trí Thành, Nguyễn Thu Trang, Nguyễn Cẩm Tú (2009). Giáo trình khai phá dữ liệu Web, NXB giáo dục Việt Nam, 2009 • http://pr.efactory.de 26
    27. 27. 27

    ×