ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC BÁCH KHOA
---
BÁO CÁO BÀI TẬP LỚN
MÔN HỌC: ĐẠI SỐ TUYẾN TÍNH
TÊN ĐỀ TÀI:
ỨNG DỤNG MƠ HÌNH MARKOV TRONG THUẬT
TỐN GOOGLE PAGERANK
GVHD: Đặng Văn Vinh
Bùi Thị Khuyên
LỚP: L01
NHÓM: 09
TP HCM, 28/11/2021
Lớp: L01
Nhóm: 09
Danh sách thành viên:
STT
HỌ VÀ TÊN
MSSV
1
Đặng Hồng Tiền
2112443
2
Nguyễn Trương Thu Thảo
2114809
3
Nguyễn Tri Hưng
2111408
4
Nguyễn Huy Bình
2110818
5
Ngơ Minh Hiếu
2111186
6
Cao Hà Thị Ngọc Tuyết
2115202
7
Nguyễn Đắc Tùng
2112615
1
LỜI MỞ ĐẦU
Lời đầu tiên, nhóm em xin cảm ơn thầy Đặng Văn Vinh
và cô Bùi Thị Khuyên đã giảng dạy tận tình cũng như hỗ
trợ chúng em trong quá trình học tập mơn Đại Số Tuyến
Tính. Trong khoảng thời gian vừa qua, chúng em đã tiến bộ
hơn trong việc tiếp thu các kiến thức mới, rèn luyện được
khả năng tự học, tự tìm hiểu bài học. Trong thời gian làm
bài tập lớn, chúng em nhận thấy được tầm quan trọng của
làm việc nhóm, cũng như tạo được các mối quan hệ với các
thành viên trong nhóm và trong lớp. Đây là những kĩ năng
rất quan trọng cho tương lai của chúng em sau này.
Đây là lần đầu tiên chúng em được tiếp xúc với một bài
tập lớn như thế này, sử dụng những phần mềm và kiến thức
mới. Chúng em đã cố gắng trau chuốt cho từng phần của
báo cáo, nhưng do thiếu sót về mặt kinh nghiệm cùng như
là kiến thức nên có lẽ vẫn cịn nhiều sai sót. Vì vậy, chúng
em rất mong được thầy cơ xem xét, góp ý và chỉ bảo thêm.
Chúng em xin cảm ơn thầy cô rất nhiều.
2
Mục lục:
Câu 1: Ứng dụng của mơ hình Markov trong thuật tốn Google pagerank…..4
I.Định nghĩa............................................................................................ 4
II.Mơ tả................................................................................................... 4
III.Thuật tốn.......................................................................................... 5
IV.Yếu tố Damping................................................................................ 6
Câu 2: Viết chương trình sử dụng thuật toán trên........................................... 7
Tài liệu tham khảo................................................................................ 8
3
Câu 1: Ứng dụng của mơ hình Markov trong thuật toán Google Pagerank
I.Định nghĩa
Pagerank: là thuật toán trên google dùng để đánh giá quy tính của
trang web thơng qua việc xem xét số lượng, kết quả, chất lượng của các
trang liên kết đến nó
Mục đích của Pagerank là gì?
• Đánh giá tầm quan trọng tương đối của website trong toàn bộ hệ
thống world wide web (WWW)
• ‘Đo’ tầm quan trọng tương đối của các liên kết trong tập hợp các trang
web
• Áp dụng cho bất kỳ tập hợp văn bản nào có trích dẫn đối ứng và liên
kết cụ thể giúp người đọc phân biệt được đâu là trang web chưa thơng
tin liên quan và chính xác với tìm kiếm.
II. Mô tả:
4
Giá trị Pagerank hình thành từ thuật tốn tốn học dựa trên biểu đồ
trang web: các trang web được coi như các đỉnh và các đường link là các
cạnh. Mỗi đường link tới trang web sẽ được tính như 1 sự hỗ trợ làm tăng
thêm giá trị Pagerank. Giá trị Pagerank của trang được định nghĩa đệ quy và
phụ thuộc vào số lượng và giá trị của các trang mà có link dẫn đến trang đó.
Một trang web có chứa nhiều link liên kết từ các trang web có giá trị
PageRank cao thì giá trị PageRank của trang đó cũng sẽ cao.
III. Thuật toán:
Pagerank là phân bố xác suất, được sử dụng để thể hiện khả năng khi
một người click chuột ngẫu nhiên vào đường link và sẽ tới được trang web
cụ thể. Xác suất có giá trị từ 0 đến 1, khi một trang web có Pagerank là 0.5
thì nó sẽ có 50% cơ hội được click vào link chỉ đến trang web đó.
Mơ tả thuật tốn một cách đơn giản hóa:
Giả sử một nhóm gồm 4 trang web: A, B, C, D. những liên kết từ một
trang đến chính nó khơng được tính, mỗi trang web có 1 đường dẫn duy nhất
đến 1 trang web khác. Giá trị Pagerank của các trang ban đầu được cho là
bằng nhau.Giả sử giá trị ban đầu cho mỗi trang là 0,25. Pagerank chuyển từ
một trang đến các trang khác bằng các đường link, trong những bước tính
tiếp theo giá trị sẽ được chia đều cho tất cả các liên kết đi. Nếu các liên kết
duy nhất trong hệ thống từ các trang B, C và D tới A, mỗi liên kết sẽ chuyển
giá trị bằng 0,25 Pagerank A khi tính trong lần tiếp theo, tổng cộng là 0,75.
PR(A)= PR(B) + PR(C) + PR(D)
Khác với ví dụ trên, B có liên kết đến trang C và A, trong khi D có các
link đến cả ba trang. Như vậy trong bước tiếp theo, trang B sẽ chuyển tải
một nửa giá trị của mình, tương đương với 0.125 tới trang A và 0.125 tới
trang C. Khi trang D có 3 liên kết trỏ đi, có nghĩa nó sẽ chuyển 1/3 giá trị
của mình, tương đương với 0.083 tới A.
Như vậy:
Hay:
5
Giá trị Pagerank đối với bất kỳ trang u có thể tính như sau:
Giá trị PageRank đối với trang u phụ thuộc vào giá trị Pagerank của
từng trang v có chứa trong set Bu (tập hợp có chứa các trang có link đến
trang u), chia cho số L (v) các link từ trang v.
IV. DAMPING:
Người dùng click ngẫu nhiên vào các web cũng sẽ dùng lại. Xác suất
người dùng tiếp tục click trong bất cứ bước nào được gọi là yếu tố Damping
Cơng thức Pagerank có tính đến yếu tố damping sử dụng mơ hình khi
người dùng bất kỳ sẽ cảm thấy chán sau một vài lần click và chuyển đến vài
trang web khác một cách ngẫu nhiên. Như vậy:
Công thức trên sử dụng mơ hình khi người dùng ngẫu nhiên cảm thấy
chán sau khi click và được chuyển đến một số trang ngẫu nhiên.Giá trị
Pagerank thể hiện những cơ hội mà người dùng ngẫu nhiên sẽ được chuyển
đến Page bằng cách Click vào đường Link. Khi tính Pagerank, những Page
khơng có Link trỏ đi các trang khác sẽ được giả định có Link trỏ đến tất cả
các Page trong tập văn bản. Và như vậy giá trị Pagerank sẽ được chia đều
cho các trang khác.
Nói một cách khác, để cơng bằng với những Website có Outbound
Link.Thì các truy cập ngẫu nhiên sẽ được thêm vào tất cả những Page trong
Website. Nó được thực hiện với xác suất d=0,85.Được tính người dùng sử
dụng khi đánh dấu một tính năng bằng trình duyệt.
6
Câu 2: Viết chương trình sử dụng thuật tốn trên
VD: Ta cho một sơ đồ biểu diễn sự liên kết giữa các trang web như sau:
• Dựa vào sơ đồ trên và định nghĩa về ma
trận Markov, ta sẽ viết được một ma trận
kề M khơng có trọng số như sau:
• Ta gọi x1, x2, x3, x4 là giá trị Pagerank của các trang web A, B, C, D tương ứng. Ta tiến hành
đánh giá giá trị PG (gọi tắt của Pagerank) của trang web A bằng tổng tỉ số của giá trị PG mà
các trang web khác liên kết với A và số lần trang web này liên kết ra ngồi đến các trang
khác.
• Từ đó, ta có: x1= x2/3 vì có một trang web B
liên kết đến A và trang B liên kết ra ngồi
với ba trang khác:
• Tương tự như vậy:
x2= x1/3+x3/1+x4/2
….
• Từ đó những dữ kiện đó, ta sẽ thu được một
hệ phương trình:
AX = X
• Với ma trận A như sau:
7
*Code matlab tính giá trị Pagerank theo cơng thức:
➔ Từ đó ta có thể suy ra được bảng xếp hạng giá trị Pagerank hay cịn gọi
là mức độ uy tín của các trang web dựa vào sơ đồ đã cho ở trên là:
B>C>D>A
• Tài liệu tham khảo:
/> /> />Giáo trình Đại số tuyến tính – Thầy Đặng Văn Vinh
8