1. Trang chủ
  2. » Luận Văn - Báo Cáo

Thuật toán pagerank cơ sở toán học của công cụ tìm kiếm google

57 12 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 57
Dung lượng 1,29 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Thuật toán pagerank cơ sở toán học của công cụ tìm kiếm google Thuật toán pagerank cơ sở toán học của công cụ tìm kiếm google Thuật toán pagerank cơ sở toán học của công cụ tìm kiếm google Thuật toán pagerank cơ sở toán học của công cụ tìm kiếm google Thuật toán pagerank cơ sở toán học của công cụ tìm kiếm google Thuật toán pagerank cơ sở toán học của công cụ tìm kiếm google Thuật toán pagerank cơ sở toán học của công cụ tìm kiếm google Thuật toán pagerank cơ sở toán học của công cụ tìm kiếm google

Trang 1

THUẬT TOÁN PAGERANK

CƠ SỞ TOÁN HỌC CỦA CÔNG CỤ TÌM KIẾM GOOGLE

LUẬN VĂN THẠC SĨ KHOA HỌC

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

-

ĐỖ CHÍ CƯỜNG

THUẬT TOÁN PAGERANK

CƠ SỞ TOÁN HỌC CỦA CÔNG CỤ TÌM KIẾM GOOGLE

Chuyên ngành: Toán ứng dụng

LUẬN VĂN THẠC SĨ KHOA HỌC

TOÁN ỨNG DỤNG

NGƯỜI HƯỚNG DẪN KHOA HỌC:

1 PGS TSKH NGUYỄN THIỆU HUY

Hà Nội – Năm 2019

Trang 3

LỜI CAM ĐOAN

Tôi, Đỗ Chí Cường, cam đoan rằng luận văn thạc sĩ với tiêu đề “thuật toán

pagerank – cơ sở toán học của công cụ tìm kiếm google” là công trình

nghiên cứu khoa học của riêng tôi Tôi xin xác nhận rằng:

• Luận văn này được thực hiện chủ yếu trong chương trình Thạc sĩ Khoa học Toán ứng dụng tại Viện Toán ứng dụng và Tin học, Đại học Bách Khoa Hà Nội

• Bất kỳ nội dung nào của luận văn này được sử dụng trong bất kỳ tài liệu nào khác đã được nêu rõ ràng

• Tất cả các tài liệu được sử dụng để tham khảo đã được trích dẫn đầy đủ

• Mọi sự giúp đỡ trong quá trình thực hiện luận văn đều đã được ghi nhận và cảm ơn

Trang 4

LỜI CẢM ƠN

Lời đầu tiên, tác giả xin bày tỏ lòng biết ơn chân thành và sâu sắc nhấttới PGS TSKH Nguyễn Thiệu Huy, người đã tận tình hướng dẫn,giúp đỡ và động viên tác giả trong suốt quá trình thực hiện luận văn này

Tác giả xin trân trọng cảm ơn Viện Toán ứng dụng và Tin học, ViệnĐào tạo Sau đại học, Đại học Bách Khoa Hà Nội đã tạo mọi điều kiện thuậnlợi cho tác giả trong quá trình học tập và nghiên cứu Xin cảm ơn các thầy

cô, các bạn sinh viên, học viên cao học của Viện Toán ứng dụng và Tin học

đã giúp đỡ, trao đổi cùng tác giả những kiến thức và kinh nghiệm quý báu

để giúp cho luận văn này được hoàn thiện hơn

Cuối cùng, tác giả xin kính tặng những người thân yêu nhất của mìnhniềm hạnh phúc và vinh dự to lớn này!

Trang 5

Mục lục

Lời cam đoan

Danh sách hình vẽ

1 Tổng quan về khai phá dữ liệu và cơ sở toán học thuật toán

1.1 Khai phá dữ liệu 4

1.2 Tổng quan thuật toán PageRank 6

1.3 Các khái niệm cơ bản trong đại số tuyến tính 8

1.4 Lý thuyết đồ thị 12

1.4.1 Định nghĩa đồ thị 12

1.4.2 Các phương pháp biểu diễn đồ thị trên máy tính 13

Trang 6

2.1 Thuật toán PageRank cơ bản 16

2.1.1 Công thức toán học của thuật toán PageRank cơ bản 17 2.2 Người di chuyển ngẫu nhiên 19

2.2.1 Vấn đề mắc kẹt tại một trang 19

2.2.2 Vấn đề mắc kẹt tại một đồ thị con 20

2.2.3 Lựa chọn α 21

2.3 Tính toán giá trị PageRank 22

2.4 Sử dụng phương pháp lũy thừa để tính PageRank 22

3 Thuật toán TextRank 24 3.1 Tư tưởng thuật toán 24

3.2 Biểu diễn tập văn bản bằng đồ thị 25

3.3 Mô hình TextRank 26

3.3.1 Mô hình với đồ thị vô hướng 27

3.3.2 Mô hình với đồ thị có trọng số 28

3.4 Trích rút từ khóa bằng TextRank 29

3.5 Tóm tắt văn bản bằng TextRank 32

4 Thuật toán Hit-Hub 35 4.1 Ý tưởng 35

Trang 7

4.2 Nội dung thuật toán 37

Trang 8

Danh sách hình vẽ

1.1 Mô hình liên kết trong thuật toán PageRank [6] 7

1.2 Đơn đồ thị vô hướng [11] 12

1.3 Đơn đồ thị có hướng [11] 13

1.4 Đồ thị vô hướng [9] 14

1.5 Đồ thị có hướng [9] 14

1.6 Đồ thị vô hướng [10] 15

2.1 Đồ thị web mô phỏng hiện tượng mắc kẹt [8] 20

3.1 Đường cong hội tụ cho: đồ thị có hướng/vô hướng, có trọng số/không trọng số, 250 đỉnh, 250 cạnh [2] 27

3.2 Xây dựng đồ thị mẫu để trích xuất cụm từ khóa từ bản tóm tắt [2] 31

3.3 Xây dựng đồ thị mẫu để trích xuất câu từ một bài báo Tóm tắt thủ công và tóm tắt sau khi sử dụng TextRank [2] 33

3.4 Đồ thị trọng số liên kết từ 34

Trang 9

4.1 Trang hubs và authorities [4] 37

4.2 ap bằng tổng hi với i là các nút trỏ tới p [4] 38

4.3 hp bằng tổng ai với i là các nut được p trỏ đến [4] 39

4.4 Đồ thị web đơn giản với 3 trang web [4] 40

Trang 10

Nội dung trình bày trong luận văn gồm 4 chương:

• Chương 1: Giới thiệu các kiến thức tổng quan về khai phá dữ liệu vàthuật toán PageRank, chủ yếu giới thiệu về vai trò, lịch sử, tinh thầncủa thuật toán và một số kiến thức về đồ thị, là nền tảng của thuậttoán

• Chương 2: Trình bày chi tiết về thuật toán PageRank, mô hình người

di chuyển ngẫu nhiên, các trường hợp xảy ra trong mô hình và phươngpháp xử lý tương ứng Chương này cũng trình bày về cách tính trịriêng, vector riêng và phương pháp lặp để tính toán giá trị PageRank

• Chương 3: Trình bày về thuật toán TextRank, một ứng dụng mạnh

mẽ của tư tưởng thuật toán PageRank trong xử lý ngôn ngữ tự nhiên,giúp giải quyết nhiều bài toán quan trọng

• Chương 4: Khái quát về thuật toán Hit-Hub và ứng dụng

Trang 11

Luận văn được hoàn thành trong chương trình Thạc sĩ Khoa học Toán tintại Viện Toán ứng dụng và Tin học, Đại học Bách Khoa Hà Nội , dưới sựhướng dẫn của PGS TSKH Nguyễn Thiệu Huy.

Mặc dù đã được hoàn thành với nhiều cố gắng nhưng do hạn chế vềthời gian và kinh nghiệm, luận văn này không thể tránh khỏi những sai sót.Tác giả rất mong nhận được những ý kiến đóng góp quý báu từ thầy cô vàcác bạn học viên để luận văn được hoàn thiện hơn nữa

Trang 12

Chương 1

Tổng quan về khai phá dữ liệu và cơ sở toán học

thuật toán Pagerank

Thời đại công nghệ hiện nay dữ liệu được trao đổi và lưu trữ ngày càngtăng Hạ tầng lưu trữ dữ liệu cũng thay đổi từ các thiết bị lưu trữ cá nhânnhư ổ cứng, usb đến hạ tầng lưu trữ trực tuyến trên internet Khối lượng

dữ liệu lưu trữ và trao đổi trên internet đang gia tăng với tốc độ vô cùnglớn Người ta ước đoán rằng lượng thông tin trao đổi trên toàn cầu tănggấp đôi sau mỗi hai năm, do đó mà lượng thông tin tăng theo cấp số mũ.Đây là một lượng thông tin khổng lồ, lượng tri thức được tích lũy của toànnhân loại Điều này đặt ra nhu cầu thiết yếu cho việc khai thác khối lượngtri thức này phục vụ cho khoa học, kỹ thuật và kinh tế Tuy nhiên việc khaithác được những tri thức này không dễ dàng, tình trạng giàu về dữ liệu,nghèo về thông tin xảy ra phổ biến Đây là một thách thức và cũng là động

Trang 13

lực vô cùng lớn để thúc đẩy phát triển các công nghệ và kỹ thuật phân tích

và trích lọc tri thức từ các nguồn dữ liệu khổng lồ, đưa ra cách khai tháchiệu quả nguồn tri thức này

Định nghĩa 1.1 Khai phá dữ liệu là một tập hợp các kỹ thuật được sử dụng

để tự động khai thác và tìm ra các mối liên hệ lẫn nhau của dữ liệu trongmột tập hợp dữ liệu khổng lồ và phức tạp, đồng thời cũng tìm ra các mẫutiềm ẩn trong tập dữ liệu đó

Khai phá dữ liệu là một bước trong bảy bước của quá trình khám phátri thức (Knowledge discovery in Database - KDD), là một quá trình baogồm các bước:

1 Làm sạch dữ liệu (data cleaning and preproccessing)

2 Tích hợp dữ liệu (data integration)

3 Trích chọn dữ liệu (data selection)

4 Chuyển đổi dữ liệu

5 Khai phá dữ liệu (data mining)

6 Ước lượng mẫu (knowledge evaluation)

7 Biểu diễn tri thức (knowledge presentation)

Các phương pháp khai thác dữ liệu bao gồm:

• Phân loại (Classification): Là phương pháp dự báo, cho phép phân loạimột đối tượng vào một lớp hoặc một số lớp cho trước

• Hồi quy (Regression): Là phương pháp tìm kiếm một hàm số biểu diễntri thức, cho phép ánh xạ một điểm dữ liệu đến một biến thực có thể

dự báo được

Trang 14

• Phân cụm (Clustering): Là một phương pháp chia nhỏ dữ liệu thànhnhững nhóm nhỏ có các đặc điểm chung và có thể phân biệt giữa cácnhóm với nhau.

• Tổng hợp (Summarization): Là phương pháp mô tả cho phép đưa ramột hình thức biểu diễn đặc trưng cho một tập hợp dữ liệu

• Mô hình ràng buộc (Dependency modeling): Là phương pháp đưa ramột mô hình cục bộ biểu diễn sự ràng buộc có ý nghĩa giữa các biến

và các giá trị đặc trưng của tập dữ liệu

• Nhận diện sự thay đổi (Change and Deviation Detection): Tìm kiếmnhững sự thay đổi có ý nghĩa nhất trong tập dữ liệu

PageRank là thuật toán phân tích mối liên hệ giữa các trang web, đượcLarry Page và Sergey Brin phát triển ở đại học Stanford vào những năm

1996 như là một phần của dự án phát triển một công cụ tìm kiếm mới.Sergey Brin đưa ra ý tưởng về việc sắp xếp thông tin trên các trang webbằng cách phân tích độ tín nhiệm của liên kết giữa các trang web: Một trangweb có thứ hạng cao hơn thì sẽ có nhiều liên kết tới nó hơn Rajeev Motwani

và Terry Winograd cùng với Page và Brin, trong bài báo đầu tiên về dự ánnày, đã giới thiệu RageRank và nguyên mẫu đầu tiên của công cụ tìm kiếmGoogle, khởi đầu cho sự phát triển của công cụ tìm kiếm thịnh hành nhấtthế giới này

Thuật toán PageRank đưa ra một phân phối xác suất được sử dụng

để biểu diễn xác suất xuất hiện của trang web sẽ được điều hướng khi mộtngười dùng truy cập vào một liên kết bất kỳ PageRank có thể được tínhtoán cho một tập hợp các tài liệu ở bất kỳ kích thước nào Quá trình tínhtoán PageRank yêu cầu một số lần lặp trên toàn bộ tập dữ liệu để tính toán

Trang 15

xấp xỉ được giá trị PageRank chính xác nhất, theo nghĩa gần nhất với giátrị đúng trên lý thuyết quả nó Một xác suất được biểu diễn bằng một sốtrong khoảng từ 0 đến 1 Một xác suất 0.5 đối với một trang B nào đó trong

đồ thị web thể hiện rằng khi một người dùng hiện tại đang ở trang A thìxác suất họ chuyển sang trang B là 0.5

Hình 1.1: Mô hình liên kết trong thuật toán PageRank [6]

Thuật toán toán học PageRanks đối với một hệ thống liên kết đơn giản

sẽ được hiển thị tỷ lệ bằng % Trang C có một PageRank cao hơn so vớitrang E, mặc dù có ít liên kết (links) đến trang C; chỉ có một link duy nhấtdẫn tới C từ một trang quan trọng và chính vì thế mà C có giá trị cao Nếunhư một người lướt web bắt đầu từ một trang bất kỳ thì có 85% xác suấtchọn một link ngẫu nhiên trên trang mà họ đang xem, và 15% họ sẽ chọnchuyển sang một trang web bất kỳ từ toàn bộ hệ thống các liên kết Ngườidùng sẽ truy cập vào trang E với xác suất 8.1% (Xác suất 15% truy cậptới một trang bất kỳ tương ứng với yếu tố damping là 85%.) Nếu không cóyếu tố damping, người dùng cuối cùng cũng sẽ kết thúc quá trình lướt webtại trang A, B, hoặc C, và các trang khác sẽ có PageRank bằng 0 Nếu nhưtính cả yếu tố damping, trang A vẫn liên kết đến tất cả các trang trong hệ

Trang 16

thống, mặc dù chỉ có 1 liên kết trỏ đi.

Thuật toán PageRank có nhiều ứng dụng quan trọng trong thực tế.Một trong số đó là nền tảng toán học của các máy tìm kiếm hàng đầu hiệnnay như cỗ máy tìm kiếm của Google Ngoài ra, PageRank còn được pháttriển thành TextRank, một thuật toán quan trọng của xử lý ngôn ngữ tựnhiên, hỗ trợ mạnh mẽ cho việc tóm tắt hoặc trích rút thông tin trong vănbản Thuật toán PageRank cải tiến, Hit-Hub có vai trò rất quan trọng trongnền tảng web hiện đại

tính

Đại số tuyến tính là một ngành toán học nghiên cứu về không gian vector,

hệ phương trình tuyến tính và các phép biến đổi tuyến tính giữa chúng.Đại số tuyến tính được sử dụng nhiều trong toán học, như trong đại sốđại cương, giải tích hàm, hình học giải tích, v.v để giải các bài toán nhưphép quay trong không gian, nội suy bình phương nhỏ nhất, nghiệm của hệphương trình vi phân, tìm đường tròn qua ba điểm v.v Nó cũng có vô vànứng dụng trong khoa học tự nhiên (vật lý, công nghệ ) và khoa học xã hội(kinh tế ), vì các mô hình phi tuyến tính hay gặp trong tự nhiên và xã hộithường có thể xấp xỉ bằng mô hình tuyến tính

Định nghĩa 1.2 Một ma trận được gọi là ma trận dương nếu tất cả cácphần tử của ma trận là các số dương (>0)

Một ma trận được gọi là ma trận không âm nếu tất cả các phần tửcủa ma trận không âm (≥ 0)

Ma trận không âm mà có tổng các phần tử trên mỗi cột bằng 1 thì đượcgọi là ma trận cột xác suất

Trang 17

Ma trận M được gọi là ma trận nguyên thủy nếu tồn tại số nguyên

k sao cho Mk là một ma trận dương

Định nghĩa 1.3 Cho ma trận vuông cấp n

λ gọi là trị riêng của ma trận A nếu det(A − λI) = 0

x 6= 0 gọi là vector riêng ứng với trị riêng λ nếu (A − λI)x = 0

Ta đi tìm trị riêng và vector riêng của ma trận M

Gọi λ là trị riêng của M , giải phương trình đặc trưng:



×



λ + 12

Trang 18

1 2

1 2 1

3

1 2

1 2 2

3

1 2

1 2

(M − λI)v = 0

|N − λI| = 0

0 − λ 2

1 1 − λ

... thuật tốn Vì vậy, việc chọn lựa cấu trúc liệu để biểu diễn đồthị phụ thuộc vào tình cụ thể (bài toán thuật toán cụ thể).Trong mục xét số phương pháp sử dụng

để biểu diễn đồ thị máy tính,... trữ đồ thị thực thuật toán khác với đồ thị máytính cần phải tìm cấu trúc liệu thích hợp để mơ tả đồ thị Việcchọn cấu trúc liệu để biểu diễn đồ thị có tác động lớn đến hiệuquả thuật tốn Vì vậy,... hình phía sau thuật toán PageRank "Bước ngẫu nhiên",tức mơ hình giả định người thực truy cập ngẫu nhiên Web.Tại trạng thái ổn định, trang có tỉ lệ chọn (được tới) riêngbiệt PageRank tính

Ngày đăng: 25/02/2021, 17:16

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Leon Lee (2010), "PageRank Algorithm and Development", 2010 Sách, tạp chí
Tiêu đề: PageRank Algorithm and Development
Tác giả: Leon Lee
Năm: 2010
[3] Longzhuang Li, Yi Shang, Wei Zhang (2002), "Improvement of HITS- based Algorithms on Web Documents&#34 Sách, tạp chí
Tiêu đề: Improvement of HITS- based Algorithms on Web Documents
Tác giả: Longzhuang Li, Yi Shang, Wei Zhang
Năm: 2002
[4] Raluca Tanase, Remus Radu (2009), "The Mathematics of Web Search".http://pi.math.cornell.edu/~mec/Winter2009/RalucaRemus Sách, tạp chí
Tiêu đề: The Mathematics of Web Search
Tác giả: Raluca Tanase, Remus Radu
Năm: 2009
[2] Rada Mihalcea and Paul Tarau (2004), "TextRank: Bringing Order into Texts&#34 Khác
[5] Phạm Kì Anh (1996), Giáo trình giải tích số, Nhà xuất bản đại học quốc gia Hà Nội Khác
[11] Nguyễn Đức Nghĩa, Nguyễn Tô Thành (2009), Giáo trình toán rời rạc, Nhà xuất bản đại học quốc gia Hà Nội Khác

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm