73
Seminar Tin ứng dụng Web graph and Page rank Bùi Đức Hiệu Phạm Anh Tuấn Nguyễn Văn Vũ Đại học Bách Khoa Hà Nội Viện Toán ứng dụng và Tin học

Web graph and Page rank

Embed Size (px)

DESCRIPTION

Lý thuyết về đồ thị Web và các thuật toán phân hạng trang Web

Citation preview

Page 2: Web graph and Page rank

Giới thiệu

Seminar 2012

Ảnh chụp của đồ thị Internet(Nguồn: Wikipedia)

Page 3: Web graph and Page rank

Giới thiệu

Đồ thị Web

Thuật toán PageRank

Cải tiến thuật toán PageRank

Thuật toán HITS

Cài đặt các thuật toán

Nội dung

Seminar 2012

Page 4: Web graph and Page rank

Trong 2 thập kỷ qua, mạng internet phát triển rất mạnh mẽ. Trang web đầu tiên trên thế giới là info.cern.ch (Tim Berners-Lee), đến năm 2008 chúng ta đã có 162 triệu trang web

Giới thiệu

Seminar 2012

Page 5: Web graph and Page rank

Giới thiệu

Seminar 2012

Page 6: Web graph and Page rank

Vấn đề đặt ra: làm sao để khai thác tối đa những thông tin mà người sử dụng cần ???

Giới thiệu

Seminar 2012

Giải pháp:

Tạo sự liên kết giữa các trang web với nhau

Page 7: Web graph and Page rank

Giới thiệu

Seminar 2012

Page 8: Web graph and Page rank

Đồ thị: là một tập các đối tượng gọi là đỉnh nối với nhau bởi các cạnh.

Đồ thị

Seminar 2012

Page 9: Web graph and Page rank

Một số khái niệm liên quan đến đồ thị:

Đồ thị vô hướng

Đồ thị

Seminar 2012

Page 10: Web graph and Page rank

Đồ thị có hướng

Đồ thị

Seminar 2012

Page 11: Web graph and Page rank

Ma trận: trong toán học ma trận là một bảng chứa dữ liệu theo hàng và cột

A=

Ma trận

Seminar 2012

AA B C D

A 0 1 2 3

B 0

C 0 3

D 0

C D

B1

3

632

Page 12: Web graph and Page rank

Có một số dạng ma trận: Ma trận chéo = Ma trận tam giác = Ma trận đơn vị =

Ma trận

Seminar 2012

Page 13: Web graph and Page rank

Vector riêng và trị riêng:A: ma trận vuông

A=

A = , vector riêng , giá trị riêng

. 3.

Ma trận

Seminar 2012

Page 14: Web graph and Page rank

Giới thiệu

Đồ thị Web

Thuật toán PageRank

Cải tiến thuật toán PageRank

Thuật toán HITS

Cài đặt các thuật toán

Nội dung

Seminar 2012

Page 15: Web graph and Page rank

Định nghĩa

Các tính chất của đồ thị web

Cấu trúc vi mô

Luật tăng trưởng

Mô hình

Đồ thị web

Seminar 2012

Page 16: Web graph and Page rank

Định nghĩa:Các trang web ngoài các đặc trưng về sự hiển thị trên trình

duyệt qua ngôn ngữ HTML, CSS mà chúng còn có sự liên kết, kết nối đến nhau. Chính những liên kết này tạo nên đồ thị web.

Đồ thị web

Seminar 2012

Page 17: Web graph and Page rank

Đồ thị web

Seminar 2012

Page 18: Web graph and Page rank

Đồ thị web

Seminar 2012

Page 19: Web graph and Page rank

Đồ thị và ma trận biểu diễn sự liên kết giữa các trang

Đồ thị web

Seminar 2012

1 2 3 4

1 1

2 0 0 0

3 0

4 0 0

Page 20: Web graph and Page rank

Tính chất của đồ thị webCác trang web được xem như là các nút của đồ thịCác siêu liên kết được xem như là các cạnh của đồ thị

Đồ thị web

Seminar 2012

Cạnh

Nút

Page 21: Web graph and Page rank

Các thuật toán phân hạng web hiện nay:

PageRank

Topic Sensitive PageRank

Adaptive PageRank

Timed PageRank

HITS

Đồ thị web

Seminar 2012

Page 22: Web graph and Page rank

Có 4 thành phần:

SCC(strongly connected component)

IN

OUT

TENDRILS

Cấu trúc đồ thị web

Seminar 2012

Page 23: Web graph and Page rank

Cấu trúc đồ thị web

Seminar 2012

Page 24: Web graph and Page rank

Liên kết được nhiều trang web với nhau

Mạng lưới của những liên kết này là nguồn phong phú của các thông tin tiềm ẩn.

Ý nghĩa của đồ thị web

Seminar 2012

Page 25: Web graph and Page rank

S: kích thước của trang web ở thời điểm 𝗍SS

: là việc thực hiện một biến ngẫu nhiên Bernouili

Sau bước T:

Luật tăng trưởng

Seminar 2012

Page 26: Web graph and Page rank

Để

Cuối cùng ta có thể viết:

l: biến số động dương

Luật tăng trưởng

Seminar 2012

Page 27: Web graph and Page rank

Các thuộc tính trong mô hình đồ thị web

On-line property

Power law degree distribution

Small world property

Mô hình trong đồ thị web

Seminar 2012

Page 28: Web graph and Page rank

Đồ thị cố định hữu hạn H Chuỗi đồ thị (t: t) Cho tất cả t

(1)

(2) là đồ thị con cảm sinh của

(3) = + 1;

(4)

Mô hình đồ thị web

Seminar 2012

Page 29: Web graph and Page rank

Một số mô hình trong đồ thị web:Mô hình tập tin đính kèm ưu đãi ( preferential attachment

models)Mô hình LCD PA (The LCD PA model)Mô hình sao chép (The copying model)Mô hình growth-deletion ( growth – deletion models)Mô hình hình học (geometric model)Mô hình off – line (off – line model)

Mô hình trong đồ thị web

Seminar 2012

Page 30: Web graph and Page rank

Giới thiệu

Đồ thị Web

Thuật toán PageRank

Cải tiến thuật toán PageRank

Thuật toán HITS

Cài đặt các thuật toán

Nội dung

Seminar 2012

Page 31: Web graph and Page rank

Vấn đề:

Thuật toán PageRank

Seminar 2012

Page 32: Web graph and Page rank

Vấn đề Số lượng lớn Thay đổi liên tục Thông tin rác Độ phân tán

Thuật toán PageRank

Seminar 2012

CẦN MỘT PHƯƠNG PHÁP KHAI THÁC THÔNG TIN

Page 33: Web graph and Page rank

CẦN GÌ

Thuật toán PageRank

Seminar 2012

Nhanh

Dễ dàng cài đặt

Chính xác

Page 34: Web graph and Page rank

Tổng quan

Thuật toán PageRank

Seminar 2012

Page 35: Web graph and Page rank

Kết quả thừa nhận

Thuật toán PageRank

Seminar 2012

Trang A được trỏ bởi càng nhiều link thì càng quan trọng.

“A => B thì độ quan trọng của trang A cũng ảnh hưởng đến độ quan trọng của trang B”.

Page 36: Web graph and Page rank

Ý tưởng. Sử dụng:

Thuật toán PageRank

Seminar 2012

Page 37: Web graph and Page rank

Xây dựng mô hình bài toán. Xây dựng đồ thị có hướng G=(V,E):

• V={Vi : Vi đại diện cho 1 web, i = 1..n }

• E={(i,j): có liên kết từ i tới j; i,j=1..n}

Mọi tính toán hạng trang thực hiện trên đồ thị này.

Thuật toán PageRank

Seminar 2012

Page 38: Web graph and Page rank

Thuật toán PageRank

Seminar 2012

Page 39: Web graph and Page rank

Thuật toán Đầu vào:

• Đồ thị web.• Các trang web đã có page rank mặc định

Đầu ra:• Các trang được xếp hạng theo page rank thực

Thuật toán PageRank

Seminar 2012

Page 40: Web graph and Page rank

Thuật toán - Hướng tiếp cận ban đầu. Giả thuyết: G(V,E) liên thông Công thức:

• Trong đó: – r(i): Hạng của trang web i.– N(j): Số liên kết ra khỏi trang j– B(i): Tập các trang có liên kết trỏ tới trang i

Thuật toán PageRank

Seminar 2012

Page 41: Web graph and Page rank

Vấn đề: Số lượng thông tin rất lớn.

Giải quyết: Thử đưa về mô hình toán học, áp dụng các

thuật toán tính toán nhanh

Thuật toán PageRank

Seminar 2012

Cần phương pháp để tính toán

Page 42: Web graph and Page rank

Xây dựng mô hình toán học ĐẶT:

• : vectơ PageRank• = ma trận kích thước n*n

Thuật toán PageRank

Seminar 2012

Page 43: Web graph and Page rank

DẠNG TOÁN HỌC:

Nhận thấy:

• r chính là vectơ riêng của ma trận

Phương pháp giải:• Các thuật toán tìm vectơ riêng trong đại số.

Thuật toán PageRank

Seminar 2012

Page 44: Web graph and Page rank

Thuật toán – Cải tiến Vì sao phải cải tiến? Liệu có trang web nào có page rank bằng 0?

Thuật toán PageRank

Seminar 2012

Page 45: Web graph and Page rank

Thuật toán cải tiến

Trong đó: • r(v): Hạng của trang v.• : Hằng số hội tụ, thường = 0.85• : Tổng số trang.• : Tập hợp các nút có liên kết tới v.• : Số liên kết đi ra khỏi trang w.

Thuật toán PageRank

Seminar 2012

Page 46: Web graph and Page rank

Lưu ý. Thuật toán sử dụng lặp để tính toán liên tiếp, tác

giả đã khẳng định sau khoảng 50 vòng lặp sẽ nhận kết quả với sai số chấp nhận được

Đánh giá.

Thuật toán PageRank

Seminar 2012

Page 47: Web graph and Page rank

Giới thiệu

Đồ thị Web

Thuật toán PageRank

Cải tiến thuật toán PageRank

Thuật toán HITS

Cài đặt các thuật toán

Nội dung

Seminar 2012

Page 48: Web graph and Page rank

Topic Sensitive PageRank

Seminar 2012

Page 49: Web graph and Page rank

Taher H. Haveliwala đề xuất, 2002Ý tưởng:

Tạo một danh sách n chủ đề cần quan tâm, và thư mục lưu trữ dữ liệu liên quan đến chủ đề , n >0

Với mỗi chủ đề, áp dụng thuật toán PageRank thường.

Kết quả:Mỗi trang nhận được 1 vectơ

Topic Sensitive PageRank

Seminar 2012

Page 50: Web graph and Page rank

Adaptive PageRank

Seminar 2012

Page 51: Web graph and Page rank

Sepandar D. Kamvar và cộng sự, 2003Tậ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

Adaptive PageRank

Seminar 2012

Page 52: Web graph and Page rank

Timed PageRank

Seminar 2012

Page 53: Web graph and Page rank

Tích hợp tìm kiếm PageRank theo thời gianXin Li, Bing Liu, và Philip S. Yu đề xuất, 2006Thay hệ số hãm d bằng hàm thời gian f(t)

f(t) sẽ chọn đi theo 1 outbound link (liên kết đi) (1-f(t)) sẽ nhảy sang 1 trang khác

Timed PageRank

Seminar 2012

Page 54: Web graph and Page rank

Giới thiệu

Đồ thị Web

Thuật toán PageRank

Cải tiến thuật toán PageRank

Thuật toán HITS

Cài đặt các thuật toán

Nội dung

Seminar 2012

Page 55: Web graph and Page rank

HITS - Hypertext Induced Topic Selection Jon M. Kleinberg đề xuất, 1998 - 1999 Không giống như PageRank - một thuật toán xếp hạng tĩnh,

HITS phụ thuộc vào truy vấn tìm kiếm.

HITS

Seminar 2012

Page 56: Web graph and Page rank

Authority pages: là những trang được xem là phù hợp nhất đối với mỗi câu truy vấn cụ thể nào đó.

Authority

Seminar 2012

Auth

Page 57: Web graph and Page rank

Hub pages: là những trang không cần có đặc tính “authority” nhưng lại trỏ tới nhiều trang có đặc tính “authority”.

Hub

Seminar 2012

Hub

Page 58: Web graph and Page rank

Hub và Authority

Seminar 2012

Page 59: Web graph and Page rank

Trang có hub tốt là trang có nhiều liên kết ra.

Trang có authority tốt là trang có nhiều liên kết tới.

Trang trỏ tới trang có authority cao thì trọng số hub

càng cao, trang nào được nhiều trang có hub cao trỏ

tới thì trọng số authority càng cao.

Ý tưởng của HITS

Seminar 2012

Page 60: Web graph and Page rank

Xác định tập hợp cơ sở SCho phép thiết lập các dữ liệu trả về bởi một công cụ

tìm kiếm tiêu chuẩn được gọi là các root set (thiết lập gốc) R

Khởi tạo S cho R

HITS - 1

Seminar 2012

Page 61: Web graph and Page rank

Thêm vào S tất cả các trang được trỏ đến bởi bất kỳ trang nào trong R.

Thêm vào S tất cả các trang trỏ đến bất kỳ trang nào trong R

Duy trì cho mỗi trang p trong S:Trọng số authority : (vector a)Trọng số hub : (vector h)

HITS - 2

Seminar 2012

Page 62: Web graph and Page rank

Đối với mỗi nút khởi tạo và với 1/n

Trong mỗi lần lặp tính toán trọng số authority cho mỗi nút trong S

HITS - 3

Seminar 2012

Page 63: Web graph and Page rank

Trong mỗi lần lặp tính toán trọng số hub cho mỗi nút trong S

Lưu ý: Các trọng số hub được tính từ trọng số authority hiện hành, và trọng số hub trước đó.

HITS - 4

Seminar 2012

Page 64: Web graph and Page rank

Sau khi trọng số mới được tính toán cho tất cả các nút, các trọng số được chuẩn hóa:

HITS - 5

Seminar 2012

Page 65: Web graph and Page rank

Initialize for all

For i = 1 to k:

For all

For all

For all c:

For all c:

Giả mã của HITS

Seminar 2012

Page 66: Web graph and Page rank

Root Set R {1,2,3,4} Mở rộng nó để tạo thành Base Set S

Ví dụ

Seminar 2012

Page 67: Web graph and Page rank

Kết quả của ví dụ

Seminar 2012

AuthorityHub

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Page 68: Web graph and Page rank

HITS nhấn mạnh tăng cường lẫn nhau giữa các trang authority và hub, trong khi PageRank thì không. PageRank xếp hạng trang chỉ bởi các trang authority.

HITS được áp dụng cho các vùng lân cận của các trang xung quanh kết quả của một truy vấn trong khi PageRank được áp dụng cho toàn bộ trang web

HITS là truy vấn phụ thuộc nhưng PageRank là truy vấn độc lập

PageRank - HITS

Seminar 2012

Page 69: Web graph and Page rank

Cả HITS và PageRank đều tính toán trên ma trận.Đều không ổn định: thay đổi một số liên kết có thể

dẫn đến bảng xếp hạng khác nhau.PageRank không quản lý các trang không có cạnh

ngoài rất tốt, vì nó giảm PageRank tổng thể

PageRank - HITS

Seminar 2012

Page 70: Web graph and Page rank

Khai phá dữ liệu Web(Web mining) có ý nghĩa quan trọng trong cuộc sống và công nghệ.

PageRank hay HITS là các thuật toán cơ bản để xây dựng các Search Engine.

Tuy nhiên, các search engine nổi tiếng như Google, Yahoo hay Bing đều có những cải tiến và các thuật toán khác không được công bố!

Kết luận

Seminar 2012

Page 71: Web graph and Page rank

Giới thiệu

Đồ thị Web

Thuật toán PageRank

Cải tiến thuật toán PageRank

Thuật toán HITS

Cài đặt các thuật toán

Nội dung

Seminar 2012

Page 72: Web graph and Page rank

Q & A

Seminar 2012