Tải bản đầy đủ (.pdf) (53 trang)

Hệ Thống Thông Tin Giải Pháp Xếp Hàng Và Tính Toán Song Song Nền Tảng Apache Spark.pdf

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.89 MB, 53 trang )

lOMoARcPSD|29114622

Luận văn Thạc sĩ Hệ thống thông tin Giải pháp xếp hạng và
tính tốn song song trên nền tảng Apache Spark 1193135
Phương pháp nghiên cứu khoa hcoj (Trường Đại Học Nội Vụ Hà Nội)

Studocu is not sponsored or endorsed by any college or university
Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622

ĐẠI HỌC QUỐC GIA HË NỘI
TRƯỜNG ĐẠI HỌC CïNG NGHỆ

NGUYỄN ùNG C

GII PHỗP XP HNG Vậ TờNH TOỗN SONG
SONG TRổN NỀN TẢNG APACHE SPARK

LUẬN VĂN THẠC SĨ HỆ THỐNG THïNG TIN

Hˆ Nội - 2016

Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622

ĐẠI HỌC QUỐC GIA HË NỘI
TRƯỜNG ĐẠI HỌC CïNG NGHỆ



NGUYỄN ùNG C

GII PHỗP XP HNG Vậ TờNH TOỗN SONG SONG TRỉN NỀN
TẢNG APACHE SPARK
Ngˆnh: C™ng Nghệ Th™ng Tin
Chuy•n ngˆnh: Hệ thống Th™ng Tin
M‹ số chuy•n ngˆnh: 60480104

LUẬN VĂN THẠC SĨ HỆ THỐNG THïNG TIN

NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS. TS. Nguyễn Ngọc H—a

Hˆ Nội Ð 2016

Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622

LỜI CAM ĐOAN
Ò T™i xin cam đoan đ‰y lˆ c™ng tr“nh nghi•n cứu của bản th‰n. C‡c số liệu, kết quả
tr“nh bˆy trong luận văn nˆy lˆ trung thực vˆ chưa từng được ai c™ng bố trong bất
kỳ c™ng tr“nh luận văn nˆo trước đ‰y.Ó

Chữ ký:ÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉ

Downloaded by D??ng Tr?n ()



lOMoARcPSD|29114622

PHổ DUYT CA GIỗO VIổN HNG DN
ềTi xin cam oan rằng luận ‡n đ‹ đảm bảo đœng y•u cầu của chương tr“nh đˆo Thạc sĩ C™ng
nghệ Th™ng Tin của trường Đại học C™ng Nghệ.Ó

Chữ ký:ÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉ

Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622

MỤC LỤC
Lời cảm ơn ...................................................................................................................... 8
Danh s‡ch c‡c h“nh ......................................................................................................... 9
Danh s‡ch c‡c bảng ....................................................................................................... 10
Danh s‡ch c‡c từ viết tắt ................................................................................................ xi
Chương 1.

Giới thiệu chung ..................................................................................... 12



Động lực nghi•n cứu ...................................................................................... 12



Mục ti•u vˆ nội dung của luận văn ................................................................ 12




Tổ chức của luận văn ..................................................................................... 13

Chương 2.

Tổng quan về xếp hạng ........................................................................... 14



Tổng quan về xếp hạng .................................................................................. 14



M™ h“nh xếp hạng dựa tr•n độ li•n quan........................................................ 16



M™ h“nh xếp hạng dựa tr•n độ quan trọng ..................................................... 18

Chương 3.

Học m‡y xếp hạng .................................................................................. 21



Nền tảng cơ sở của học m‡y .......................................................................... 21




Nền tảng cơ sở của học m‡y xếp hạng. .......................................................... 22

3.2.1
3.2.2
3.2.3


Hướng tiếp cận Pointwise
 ................................................................. 23
Hướng tiếp cận Pairwise ......................................................................... 23
Hướng tiếp cận Listwise ..................................................................... 23

Tổng kết chương ............................................................................................ 24

Chương 4.

Giải ph‡p xếp hạng vˆ t’nh to‡n song song tr•n nền apache spark ........ 25



Bˆi to‡n đặt ra ................................................................................................ 25



M™ h“nh đặt ra ................................................................................................ 25



Apache Spark ................................................................................................. 27

4.3.1


T’nh năng của Apache Spark .................................................................. 28

4.3.2

C‡c thˆnh phần của Apache Spark ......................................................... 28

4.3.3

Resilient Distributed Datasets................................................................. 29



Elasticsearch ................................................................................................... 29

4.4.1

T’nh năng tổng qu‡t ................................................................................ 30

4.4.2

Kh‡i niệm cơ bản .................................................................................... 30

Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622

4.4.3


Ưu điểm của Elasticsearch...................................................................... 31

4.4.4

Nhược điểm của Elasticsearch ................................................................ 31



T’nh to‡n song song tr•n ElasticSearch vˆ Apache Spark ............................. 32



Tổng kết chương ............................................................................................ 32

Chương 5.

Thực nghiệm vˆ đ‡nh gi‡........................................................................ 33



M™ h“nh thực nghiệm ..................................................................................... 33



M™i trường thực nghiệm ................................................................................ 34

5.2.1

Hạ tầng t’nh to‡n ..................................................................................... 34


5.2.2

C‡c c™ng cụ được sử dụng ...................................................................... 34



Thực nghiệm .................................................................................................. 34

5.3.1

Thu thập dữ liệu phim ............................................................................. 35

5.3.2

Thu thập lịch sử click của người d•ng.................................................... 39

5.3.3

Їnh chỉ mục cho dữ liệu ....................................................................... 41

5.3.4

Tr’ch xuất dữ liệu huấn luyện ................................................................. 42

5.3.5

Tr’ch xuất vector đặc trưng cho m™ h“nh ................................................ 43

5.3.6


X‰y dựng hệ thống xếp hạng vˆ t’nh to‡n song song ............................. 45

5.3.7

Kết quả thực nghiệm ............................................................................... 46



Їnh gi‡ ......................................................................................................... 47

5.4.1

Hiệu năng ................................................................................................ 47

5.4.2

Chất lượng xếp hạng ............................................................................... 48



Tổng kết chương ............................................................................................ 49

Kết luận chung .............................................................................................................. 50
Tˆi liệu tham khảo ........................................................................................................ 51

Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622


T—m tắt
Trong những năm gần đ‰y, với sự ph‡t triển nhanh ch—ng của WWW (World Wide Web)
vˆ những kh— khăn trong việc t“m kiếm th™ng tin mong muốn, hệ thống t“m kiếm th™ng tin hiệu
quả đ‹ trở n•n quan trọng hơn bao giờ hết, vˆ c‡c c™ng cụ t“m kiếm đ‹ trở thˆnh một c™ng cụ
thiết yếu đối với nhiều người. Xếp hạng th™ng tin một thˆnh phần kh™ng thể thiếu trong mọi
c™ng cụ t“m kiếm, thˆnh phần nˆy chịu tr‡ch nhiệm cho sự kết hợp giữa c‡c truy vấn xử lý vˆ
tˆi liệu được lập chỉ mục. Ngoˆi ra, xếp hạng cũng lˆ thˆnh phần then chốt cho nhiều ứng dụng
t“m kiếm th™ng tin kh‡c, v’ dụ như lọc cộng t‡c, t—m tắt văn bản vˆ c‡c hệ thống quảng c‡o trực
tuyến. Sử dụng m™ h“nh học m‡y trong qu‡ tr“nh xếp hạng dẫn đến tạo ra c‡ch m™ h“nh c‡c m™
h“nh xếp hạng s‡ng tạo vˆ hiệu quả hơn, vˆ cũng dẫn đến ph‡t triển một lĩnh vực nghi•n cứu
mới c— t•n lˆ học m‡y xếp hạng (Learning to rank).
Trong m™ h“nh mới nˆy c— rất nhiều c‡ch tiếp cận như Pointwise, Pairwise, Listwise Luận
văn nˆy sẽ nghi•n cứu c‡c c‡ch tiếp cận cho bˆi to‡n xếp hạng sử dụng Apache Spark vˆ c‡c
thˆnh phần b•n trong n— cho việc ph‰n t’ch dữ liệu đồng thời tr•n quy m™ lớn c— thể mở rộng
dễ dˆng cũng như khả năng chịu lỗi.

Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622

Lời cảm ơn
Trước ti•n, t™i xin gửi lời cảm ơn vˆ l˜ng biết ơn s‰u sắc nhất tới Ph— Gi‡o sư Tiến sĩ
Nguyễn Ngọc H—a, người đ‹ tận t“nh chỉ bảo vˆ hướng dẫn t™i trong suốt qu‡ tr“nh thực hiện
kho‡ luận tốt nghiệp.
T™i ch‰n thˆnh cảm ơn c‡c thầy, c™ đ‹ tạo cho t™i những điều kiện thuận lợi để học tập vˆ
nghi•n cứu tại trường Đại Học C™ng Nghệ.
T™i cũng xin gửi lời cảm ơn tới c‡c anh chị vˆ c‡c đồng nghiệp tại Cốc Cốc đ‹ giœp đỡ vˆ
hỗ trợ t™i rất nhiều về kiến thức chuy•n m™n trong qu‡ tr“nh lˆm việc.
Cuối c•ng, t™i muốn gửi lời cảm v™ hạn tới gia đ“nh vˆ bạn b•, những người th‰n y•u lu™n

b•n cạnh vˆ động vi•n t™i trong suốt qu‡ tr“nh thực hiện kh—a luận tốt nghiệp.
T™i xin ch‰n thˆnh cảm ơn!.

Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622

Danh s‡ch c‡c h“nh
H“nh 2-1 Hệ thống t“m kiếm tổng qu‡t [24] ................................................................. 14
H“nh 2-2 Minh họa thuật to‡n PageRank [24] .............................................................. 18
H“nh 3-1 Nền tảng cơ sở của học m‡y [24] .................................................................. 22
H“nh 3-2 Nền tảng cơ sở của học m‡y xếp hạng[24] .................................................... 23
H“nh 4-1 Cấu trœc thˆnh phần m‡y t“m kiếm tại Cốc Cốc ............................................ 25
H“nh 4-2 M™ h“nh giải ph‡p xếp hạng vˆ t’nh to‡n song song ..................................... 26
H“nh 4-3 Thời gian chạy của t’nh to‡n hồi quy Logistic tr•n Hadoop vˆ Spark .......... 27
H“nh 4-4 C‡c thˆnh phần Apache Spark [25] ............................................................... 28
H“nh 4-5 Logo của Elasticsearch .................................................................................. 29
H“nh 4-6 Minh họa một Cluster trong Elasticsearch .................................................... 31
H“nh 5-1 M™ h“nh thực nghiệm .................................................................................... 33
H“nh 5-2 Th™ng tin phim tr•n trang IMDb ................................................................... 35
H“nh 5-3 Dữ liệu IMDb trong cơ sở dữ liệu Mysql. ..................................................... 37
H“nh 5-4 Dữ liệu th™ng tin phim tr•n trang phimmoi.net ............................................. 38
H“nh 5-5 Th™ng tin được tr’ch xuất trong trang phim trực tuyến. ................................ 39
H“nh 5-6 M™ h“nh lưu trữ lịch sử của người d•ng ........................................................ 40
H“nh 5-7 Cấu h“nh đ‡nh chỉ mục từ Mysql sang cụm ElasticSearch............................ 41
H“nh 5-8 Dữ liệu được đ‡nh chỉ mục l•n Elasticsearch................................................ 42
H“nh 5-9 Lịch sử click của người d•ng ........................................................................ 44
H“nh 5-10 Vector đặc trưng giữa truy vấn vˆ li•n kết phim ......................................... 44
H“nh 5-11 Dữ liệu trả về từ service t“m kiếm phim trực tuyến tại Cốc Cốc ................. 46

H“nh 5-12 Minh họa chức năng t“m kiếm phim trực tuyến .......................................... 47
H“nh 5-13 Hệ thống t“m kiếm phim online tr•n Cốc Cốc ............................................. 48

Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622

Danh s‡ch c‡c bảng
Bảng 5-1 Th™ng số m‡y chủ sử dụng trong thực nghiệm. ............................................ 34
Bảng 5-2 Danh s‡ch phần mềm m‹ nguồn mở được sử dụng ...................................... 34
Bảng 5-3 Định dạng trường dữ liệu th™ng tin phim IMDb trong cơ sở dữ liệu............ 36
Bảng 5-4 Định dạng trường dữ liệu dữ liệu phim trực tuyến trong cơ sở dữ liệu ........ 38
Bảng 5-5 C‡c trường dữ liệu được đ‡nh chỉ mục của lịch sử click của người d•ng .... 40
Bảng 5-6 Dữ liệu huấn luyện cho m™ h“nh ................................................................... 42
Bảng 5-7 Bảng m™ tả vector đặc trưng cho m™ h“nh học m‡y xếp hạng ...................... 43
Bảng 5-8 Bảng đ‡nh gi‡ hiệu quả về mặt thời gian ...................................................... 47
Bảng 5-9 Tỉ lệ CTR trước vˆo sau khi ‡p dụng m™ h“nh .............................................. 48

Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622

Danh s‡ch c‡c từ viết tắt
BM25

Best Match 25

CTR


Click Through Rate

IDF

Inverse Document Frequency

LETOR LEarning TO Rank

LMIR

Language Model for Information Retrieval

LSI

Laten Semantic Indexing

MRR

Mean Reciprocal Rank

SIGIR

Special Interest Group on Information Retrieval

SVD

Singular Value Decomposition

TF


Term srequency

WWW

World Wide Web

Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622

Chương 1.Giới thiệu chung
Động lực nghi•n cứu
Với sự ph‡t triển b•ng nổ của c™ng nghệ th™ng tin khi một người sử dụng internet c— thể
rất bối rối khi t“m kiếm th™ng tin do khối lượng đồ sộ của n—. Với nhiều nhu cầu t“m kiếm th™ng
tin của người d•ng c‡c kết quả được trả về từ c‡c hệ thống t“m kiếm cần được ch’nh x‡c vˆ
chuy•n biệt h—a th™ng tin. Nhận thấy nhu cầu giải tr’ đặc biệt lˆ nhu cầu t“m kiếm phim online
lˆ một nhu cầu lớn tr•n bộ m‡y t“m kiếm tr•n Cốc Cốc với hˆng triệu lượt truy vấn mỗi tuần.
Cốc đ‹ đ‹ đưa ra ý tưởng lˆ x‰y dựng một thˆnh phần t“m kiếm phim trực tuyến. Để c— thể cập
nhật th™ng tin phim c‡c bộ phim mới nhất cũng như hiển thị nhiều th™ng tin tới người d•ng,
Cốc Cốc đ‹ x‰y dựng một hệ thống t“m kiếm chuy•n biệt b•n trong hệ thống t“m kiếm của Cốc
Cốc để c— thể hiển thị trực quan h—a hơn vˆ hiển thị c‡c th™ng tin như trailer, nội dung phim,
đạo diễn, diễn vi•n, điểm imdb của bộ phim, k•m theo đ— lˆ những li•n kết tới c‡c trang web
xem phim trực tuyến.
Với thiết kế hệ thống ban đầu hệ thống t“m kiếm phim trực tuyến được thiết kế vˆ t’nh
to‡n tr•n một m‡y chủ, với m™ h“nh thiết kế nˆy hệ thống c— thể đ‡p ứng tốt trong thời gian
đầu. Hệ thống c— thể trả về kết quả c‡c li•n kết phim vˆ xếp hạng chœng hiệu quả. Nhưng do
dữ liệu ngˆy cˆng lớn để đ‡p ứng khả năng mở rộng khi cơ sở dữ liệu phim ngˆy cˆng lớn cần
một m™ h“nh t’nh to‡n song song tr•n nhiều m‡y t’nh vˆ t’nh ổn định chịu lỗi khi n‰ng cấp hoặc

c— sự cố tr•n một m‡y t’nh xảy ra.
Cũng trong thời gian đầu c‡c hệ số nh‰n của c‡c yếu tố trong hệ thống xếp hạng phim được
cố định trước vˆ được điều chỉnh bằng cảm quan ban đầu. điều nˆy dẫn đến t“nh trạng qu‡ khớp
với một số trường hợp t“m kiếm, n•n cần một m™ h“nh xếp hạng tổng quan c— thể t“m ra tham
số th’ch hợp nhất với từng truy vấn vˆ c— thể ‡p dụng cho nhiều loại truy vấn kh‡c nhau kh™ng
chỉ ri•ng t“m kiếm phim ảnh.

Mục ti•u vˆ nội dung của luận văn
Luận văn nˆy sẽ nghi•n cứu c‡c c‡ch tiếp cận m™ h“nh học m‡y xếp hạng ‡p dụng cho bˆi
to‡n xếp hạng trang web xem phim tr•n Cốc Cốc sử dụng Apache Spark vˆ Elasticsearch cho
lưu trữ, ph‰n t’ch dữ liệu đồng thời tr•n quy m™ lớn c— thể m rng d dng cng nh kh nng
chu li.
Ơ Nghiãn cứu, khảo s‡t bˆi to‡n xếp hạng tổng qu‡t vˆ nền tảng Apache Spark
¥ Ph‰n t’ch, đ‡nh gi‡ một số kỹ thuật Listwise trong học xếp hạng
¥ X‰y dựng giải ph‡p triển khai kỹ thuật học xếp hạng kiểu Listwise tr•n nền Apache Spark

Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622

¥

Thực nghiệm vˆ đ‡nh gi‡ khả năng xử lý xếp hạng tr•n Apache Spark th™ng qua bˆi
to‡n xếp hạng phim t’ch hợp trong dịch vụ t“m kiếm của Cốc Cốc.

Tổ chức của luận văn
Kh—a luận bao gồm năm chương sau đ‰y lˆ m™ tả vắn tắt c‡c chương:
Chương 1. Giới thiệu chung. Chương nˆy giới thiệu về mục ti•u vˆ động lực nghi•n cứu
của luận văn.

Chương 2. Tổng quan về xếp hạng. Chương nˆy tr“nh bˆy tổng quan về c‡c m™ h“nh xếp
hạng truyền thống được sử dụng vˆ ph‰n loại c‡c m™ h“nh xếp hạng.
Chương 3. Tổng quan về học m‡y xếp hạng. Chương nˆy tr“nh bˆy nền c‡c m™ h“nh học
m‡y xếp hạng được sử dụng trong c‡c hệ thống truy hồi th™ng tin
Chương 4. Giải ph‡p xếp hạng kết quả t“m kiếm. Chương nˆy tr“nh bˆy c‡c c™ng nghệ t’nh
to‡n song song vˆ đưa ra giải ph‡p cho bˆi to‡n xếp hạng vˆ t’nh to‡n song song sử dụng Apache
Spark vˆ Elasticsearch.
Chương 5. Thực nghiệm vˆ đ‡nh gi‡. Chương nˆy tr“nh bˆy về dữ liệu được sử dụng, c‡c
giai đoạn xử lý dữ liệu vˆ thực nghiệm, đưa ra kết quả của m™ h“nh, nhận xŽt vˆ ph‰n t’ch kết
quả thu được.
Chương 6. Kết luận. Chương nˆy tổng kết vˆ t—m lược nội dung ch’nh của kh—a luận.

Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622

Chương 2.Tổng quan về xếp hạng
Tổng quan về xếp hạng
Sự ph‡t triển b•ng nổ th™ng tin của thế giới Web dẫn đến trˆn ngập th™ng tin tr•n mạng
internet. Một nghi•n cứu đ‹ được tiến hˆnh năm 2005[23] chỉ ra rằng thế giới Web chứa khoảng
11.5 tỉ tˆi liệu tại thời điểm con số được thống k• lˆ th‡ng 1 năm 2005. Trong c•ng năm đ—,
Yahoo đ‹ th™ng b‡o rằng cỗ m‡y t“m kiếm của họ chứa khoảng hơn 19.2 tˆi liệu web. Ngˆy
nay con số nˆy đ‹ l•n đến hơn 50 triệu tỉ tˆi liệu đ‹ được đ‡nh chỉ mục trong c‡c cỗ m‡y t“m
kiếm (số liệu được lấy từ trang . Từ những số liệu nˆy
chœng ta c— thể thấy rằng số lượng tˆi liệu web đang tăng l•n ngˆy một nhanh.
Với k’ch thước cực kỳ lớn của thế giới Web r› rˆng rằng người d•ng th™ng thường kh— c—
thể t“m kiếm th™ng tin mˆ họ mong muốn bằng c‡ch duyệt vˆ t“m kiếm th™ng tin tr•n những
trang web. Việc t“m kiếm vˆ tr’ch xuất th™ng tin đ‹ trở n•n quan trọng hơn bao giờ hết, vˆ c‡c
c™ng cụ t“m kiếm đ‹ dần dần trở thˆnh một c™ng cụ thiết yếu mˆ mọi người d•ng internet đều

sử dụng.
Một kiến trœc điển h“nh của c™ng cụ t“m kiếm được hiển theo h“nh dưới đ‰y

H“nh 2-1 Hệ thống t“m kiếm tổng qu‡t [24]
C— 6 thˆnh phần ch’nh trong một hệ thống t“m kiếm (Search Engine) lˆ:

Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622

¥

Crawler (Bộ thu thập dữ liệu): Thu thập dữ liệu từ trang web vˆ c‡c tˆi liệu kh‡c từ
mạng internet theo s u tiãn.

Ơ

Parser (B bc tch d liu): Ly tˆi liệu từ crawler đ‡nh chỉ mục vˆ tạo đồ thị li•n
kết chứa c‡c đường dẫn tới trang web (Hyperlink graph).

¥

Indexer (Bộ đ‡nh chỉ mục): C— vai tr˜ lấy dữ liệu từ Parser vˆ tạo c‡c chỉ mục từ
(term) vˆ c‡c cấu trœc dữ liệu cho phŽp c— thể t“m kiếm nhanh c‡c tˆi liệu web.

¥

Link Analyzer (Bộ ph‰n t’ch li•n kết): Lấy dữ liệu từ đồ thị si•u li•n kết vˆ x‡c địch
độ quan trọng cho mỗi trang web. Kết quả nˆy c— thể để tạo độ ưu ti•n được sử dụng

cho việc cập nhật lại trang web th™ng qua Crawler hoặc để x‡c định như một tham số
đặc trưng để xếp hạng.

¥

Query processor (Bộ xử lý truy vấn): Thˆnh phần nˆy nhận c‡c truy vấn từ người
d•ng sau đ— truy vấn được xử lý như loại bỏ c‡c từ phổ biến, sửa lỗi cho truy vấnÉ
sau đ— chuyển chœng thˆnh c‡c từ (term) mˆ hệ thống t“m kiếm c— thể hiểu được.

¥

Ranker (Bộ xếp hạng): Љy lˆ thˆnh phần trung t‰m của hệ thống t“m kiếm n— chịu
tr‡ch nhiệm t“m ra tˆi liệu th’ch hợp nhất từ truy vấn của người d•ng vˆ c‡c tˆi liệu
được đ‡nh mục lục. Bộ xếp hạng c— thể lấy trực tiếp c‡c truy vấn vˆ c‡c tˆi liệu để
t’nh to‡n một điểm số (score) sử dụng c‡c c™ng thức heuristic, hoặc cũng c— thể tr’ch
xuất những đặc điểm giữa c‡c cặp tˆi liệu vˆ truy vấn để tạo ra điểm số được kết hợp
từ những đặc điểm đ—.

Hệ thống xếp hạng lˆ một thˆnh phần c— vai tr˜ trung t‰m trong m‡y t“m kiếm do đ— c‡c
c™ng ty c™ng nghệ lớn như Yahoo, Google, Microsoft tr•n thế giới vˆ Cốc Cốc tại Việt Nam
th“ c‡c thuật to‡n xếp hạng để cải thiện chất lượng của c‡c cỗ m‡y t“m kiếm lu™n lˆ nhưng lĩnh
vực được nghi•n cứu nhiều nhất
Ngoˆi ra bộ xếp hạng cũng lˆ thˆnh phần trung t‰m của rất nhiều ứng dụng truy hồi th™ng
tin kh‡c như lọc cộng t‡c, hệ thống hỏi đ‡p, truy hồi đa phương tiện, t—m tắm văn bản, vˆ c‡c
hệ thống quảng c‡o trực tuyến. Để giải quyết vấn đề của hệ thống truy hồi th™ng tin, rất nhiều
m™ h“nh xếp hạng heuristic đ‹ được đề xuất vˆ sử dụng trong hệ thống truy hồi th™ng tin.
Trong những năm gần đ‰y, Học m‡y xếp hạng đ‹ trở thˆnh định hướng nghi•n cứu nổi bật
trong truy hồi th™ng tin vˆ một số lượng lớn c‡c bˆi b‡o khoa học về vấn đề học m‡y xếp hạng
được xuất bản trong c‡c hội nghị đứng đầu về học m‡y vˆ truy hồi th™ng tin. Hˆng năm c— rất
nhiều c‡c chuy•n đề trong hội nghị SIGIR được dˆnh ri•ng cho chủ đề học m‡y xếp hạng, C‡c

dataset như LETOR được sử dụng cho chủ đề nˆy cũng được c™ng bố để thuận tiện cho nghi•n
cứu học m‡y xếp hạng. Rất nhiều bˆi b‡o đ‹ sử dụng dataset nˆy cho việc thực nghiệm vˆ
nghi•n cứu. Qua đ— cũng thấy được tầm quan trọng cũng như mức độ phổ biến của học m‡y
xếp hạng trong c‡c hệ thống truy hồi th™ng tin.

Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622

Trong c‡c tˆi liệu của hệ thống truy hồi th™ng tin, rất nhiều m™ h“nh xếp hạng đ‹ được đề
xuất [5] c— thể tạm ph‰n loại 2 m™ h“nh ch’nh đ— lˆ m™ h“nh xếp hạng dựa tr•n độ li•n quan
(Relevance Ranking Modal) vˆ m™ h“nh xếp hạng dựa tr•n độ quan trọng (Importance Ranking
Models)

M™ h“nh xếp hạng dựa tr•n độ li•n quan
Mục ti•u của m™ h“nh xếp hạng dựa tr•n độ li•n quan lˆ tạo ra một danh s‡ch c‡c tˆi liệu
được xếp hạng theo mức độ li•n quan giữa tˆi liệu vˆ truy vấn. Sau đ— sắp xếp tất c‡c c‡c tˆi
liệu theo thứ tự giảm dần theo mức độ li•n quan của chœng.
M™ h“nh xếp hạng dựa tr•n độ li•n quan trong hệ thống truy hồi th™ng tin đầu ti•n được
dựa tr•n sự xuất hiện c‡c term của truy vấn trong tˆi liệu. V’ dụ điển h“nh cho m™ h“nh nˆy lˆ
m™ h“nh Boolean [5]. Về cơ bản m™ h“nh c— thể đo‡n một tˆi liệu lˆ li•n quan hay lˆ kh™ng li•n
quan với truy vấn nhưng kh™ng đo được mức độ li•n quan.
Một m™ h“nh về đo độ li•n quan mới lˆ m™ h“nh kh™ng gian Vector (Vector Space modal)
được đưa ra [5]. Trong m™ h“nh nˆy tˆi liệu vˆ truy vấn được nghĩa như lˆ c‡c vector trong một
kh™ng gian Euclid, trong đ— t’ch trong của 2 vector được sử dụng để đo mức độ li•n quan giữa
truy vấn vˆ tˆi liệu. Để tạo ra vector c— kết quả tốt nhất th“ mỗi term trong kh™ng gian vector sẽ
c— một trọng số, c— nhiều phương ph‡p xếp hạng kh‡c nhau, nhưng tf-idf (term frequencyÐ
inverse document frequency) [6] lˆ một phương ph‡p phổ biến để đ‡nh gi‡ vˆ xếp hạng một từ
trong một tˆi liệu. Về cơ bản th“ tf-idf lˆ một hˆm xếp hạng giœp chuyển đổi văn bản thˆnh m™

h“nh kh™ng gian vector th™ng qua c‡c trọng số. M™ h“nh kh™ng gian vector vˆ tf-idf được ph‡t
triển bởi Gerard Salton vˆo đầu thập ni•n 1960s.
TF của một term t trong một vector được định nghĩa lˆ số lần xuất hiện của n— trong tˆi
liệu.
IDF được định nghĩa như sau
!"# $ % &'()

*
+,$-

(2.1)

trong đ— N lˆ số lượng tˆi liệu liệu trong tập hợp truy vấn, vˆ n(t) lˆ số lượng tˆi liệu mˆ
chứa term t
Trong khi m™ h“nh kh™ng gian vector bao hˆm giả định về việc phụ thuộc giữa c‡c term,
Th“ m™ h“nh LSI (Laten Semantic Indexing) cố tr‡nh giả định nˆy. Cụ thể, SVD (Singular Value
Decomposition) được sử dụng để chuyển đổi kh™ng gian tuyến t’nh c‡c đặc trưng ban đầu thˆnh
kh™ng gian ngữ nghĩa ẩn (Latent semantic space). Kh™ng gian mới nˆy cũng tương tự như m™
h“nh kh™ng gian vector n— được sử dụng để định nghĩa độ li•n quan giữa truy vấn vˆ tˆi liệu.

Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622

Khi so s‡nh với m™ h“nh dựa tr•n x‡c suất đ‹ tạo được nhiều sự chœ ý hơn vˆ đạt được
nhiều thˆnh c™ng trong thập kỷ qua. M™ h“nh nổi tiếng như MB25 vˆ m™ h“nh LMIR (Language
model for information retrieval) cả hai c— thể ph‰n loại như lˆ m™ h“nh xếp hạng x‡c suất.
Ý tưởng cơ bản của BM25 lˆ xếp hạng tˆi liệu bằng log vˆ chỉ số odds của mức độ li•n
quan. Thực sự th“ BM25 kh™ng giống như m™ h“nh ri•ng rẽ, nhưng lại định nghĩa ra hˆng loạt

m™ h“nh xếp hạng với sự kh‡c nhau giữa c‡c thˆnh phần vˆ c‡c tham số trong c™ng thức. Một
trong những c‡ch triển khai phổ biến chỉ số BM25 của một tˆi liệu d được t’nh như sau.
B

./01 23 4 % &

!"# $5 6 7# $5 3 2 6 ,89 : ;>?* 2
5C9 7# $5 3 2 : & 89 6 ,; < = : =6
@A2'

(2.2)

trong đ— q lˆ một truy vấn chứa c‡c term t1,É,tm, TF(t,d) lˆ tần suất xuất hiện của term t
trong tˆi liệu d, LEN(d) lˆ tổng độ dˆi (số c‡c từ) của tˆi liệu d. vˆ avdl lˆ độ dˆi trung b“nh của
tˆi liệu trong tập hợp được lấy ra. k1 vˆ b lˆ tham số tự chọn, IDF(t) lˆ trọng số IDF của term t
được t’nh bằng c™ng thức tr•n.
LMIR lˆ một ứng dụng của m™ h“nh ng™n ngữ thống k• trong truy hồi th™ng tin. Một m™
h“nh ng™n ngữ thống k• g‡n một x‡c suất đến một chuỗi c‡c term. Khi sử dụng trong hệ thống
truy hồi th™ng tin, một m™ h“nh ng™n ngữ được li•n kết với một tˆi liệu. Với đầu vˆo lˆ truy
vấn q c‡c tˆi liệu được xếp hạng dựa tr•n sự hợp lý (likelihood) của truy vấn đ— hoặc x‡c suất
mˆ m™ h“nh ng™n ngữ của tˆi liệu sẽ tạo ra term đ— trong truy vấn (i.e., P(q|d)). Bằng c‡ch tiếp
tục giả định sự độc lập giữa c‡c term do đ—
D

4
%&
2

G


D,$EF25C9

(2.3)

nếu như query q chứa term t1,É,tM
Để học m™ h“nh ng™n ngữ của tˆi liệu, một m™ h“nh hợp lý cực đại (maximum likelihood)
được sử dụng, như nhiều phương ph‡p hợp lý cực đại kh‡c, vấn đề của m“nh lˆm mịn ước t’nh
lˆ rất quan trọng. Th™ng thường một m™ h“nh ng™n ngữ nền tảng ước t’nh sử dụng toˆn bộ tập
hợp dữ liệu cho mục đ’ch nˆy. Sau đ—, m™ h“nh ng™n ngữ của tˆi liệu c— thể được tạo ra như
sau
D $5 3 2 % ; < &H&

7#,$53I : &HJ $5 K
>?*,2-

(2.4)

Trong đ— p(ti|C) lˆ lˆ m™ h“nh ng™n ngữ nền tảng của term ti vˆ H L MN3;O nh‰n tố lˆm mịn.

Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622

Ngoˆi c‡c m™ h“nh tr•n cũng c— nhiều c‡c m™ h“nh đ‹ được đưa ra để t’nh to‡n li•n quan
giữa c‡c truy vấn vˆ tˆi liệu, m™ h“nh lấy l‰n cận giữa c‡c truy vấn vˆ term lˆm mối quan t‰m,
một vˆi m™ h“nh kh‡c lại quan t‰m tới sự tương đồng giữa tˆi liệu vˆ term, cấu trœc của c‡c si•u
li•n kết, cấu trœc website, vˆ sự đa dạng của chủ đề.

M™ h“nh xếp hạng dựa tr•n độ quan trọng

Trong tˆi liệu truy hồi th™ng tin, cũng c— rất nhiều m™ h“nh mˆ xếp hạng c‡c tˆi liệu dựa
tr•n độ quan trọng của chœng. Một m™ h“nh rất nổi tiếng đ— lˆ PageRank, m™ h“nh nˆy được ‡p
dụng đặc biệt hệ thống t“m kiếm th™ng tin tr•n Web bởi v“ n— sử dụng cấu trœc si•u li•n kết
Web để xếp hạng.

H“nh 2-2 Minh họa thuật to‡n PageRank [24]
M™ h“nh nˆy được Page vˆ c‡c đồng t‡c giả đ‹ đưa ra ý tưởng lˆ độ quan trọng của một
trang chịu ảnh hưởng của độ quan trọng từ c‡c trang li•n kết đến n—. Vˆ c™ng thức t’nh
PageRank cho một trang u, gọi lˆ PQ được t’nh như sau:

PQ % &
5L&RS ,5-

P5
*5

(2.5)

Với .T ,E-lˆ tập hợp c‡c trang c— li•n kết đến trang I vˆ Ni lˆ số trang li•n kết ra từ trang i.
Biểu diễn đồ thị Web bởi ma trận chuyển P, khi đ— phương tr“nh 2.5 được viết lại dưới dạng
ma trận:

P % &PD

(2.6)

Trong đ—: π = (π1, π2, . . . πn) lˆ vŽc-tơ hạng c‡c trang web, với thˆnh phần πi lˆ hạng của
trang i.
Từ 2.6 cho thấy vŽc-tơ hạng trang π ch’nh lˆ vŽc-tơ ri•ng của ma trận chuyển P tương ứng
với gi‡ trị ri•ng λ = 1.


Downloaded by D??ng Tr?n ()


lOMoARcPSD|29114622

Do t’nh chất của chuỗi Markov, để t’nh vŽc-tơ ri•ng của P thuật to‡n giả thiết rằng đồ thị
trang web lˆ li•n th™ng, tức với cặp hai trang web i, j bất k“ lu™n c— đường đi từ i tới j vˆ ngược
lại. Tuy nhi•n thực tế tr•n World Wide Web (WWW) vẫn tồn tại kh™ng ’t c‡c trang web kh™ng
c— li•n kết đến hoặc li•n kết ra n•n việc giả thiết đồ thị Web li•n th™ng lˆ kh™ng hợp lý. Vˆ
trong ma trận P vẫn tồn tại hˆng chỉ toˆn số 0, n•n kh™ng tồn tại một ph‰n phối x‡c suất dừng
ổn định của P hay ch’nh lˆ vŽc-tơ hạng trang. V“ vậy cần phải biến đổi ma trận P thˆnh P′ sao
cho ph• hợp.
Định nghĩa vŽc-tơ v, được chuẩn h—a ∥v∥ = 1, x‡c định x‡c suất ph‰n phối vớI vi lˆ x‡c
suất trang web i được gọi đến ở lần duyệt web đầu ti•n. vŽc-tơ v c— vai tr˜ trong việc hướng kết
quả PageRank theo chủ đề, lĩnh vực mong muốn. Khi kh™ng xŽt đến ngữ cảnh đ— c— thể chọn
9

AE % & &&AVE&WX % ;306 6 Y .
U

Gọi d lˆ vŽc-tơ n × 1 x‡c định c‡c trang kh™ng c— li•n kết ra (dangling nœt tr•n đồ thị Web):

25 %

;&+Z[&* E % N
N&+)\]^&'_E

(2.7)


Ma trận P′ được x‡c định:
`&a& % &`& : &bc

(2.8)

Khi thay đổi ma trận P như vậy tức th•m c‡c li•n kết ảo từ c‡c dangling nœt tới tất cả c‡c
nœt kh‡c trong đồ thị Web theo ph‰n phối x‡c suất v. Điều đ— giœp tr‡nh việc khi duyệt c‡c
trang kh™ng c— li•n kết ra sẽ kh™ng duyệt tiếp được.
Để đảm bảo ph‰n phối dừng ổn định (duy nhất), chuỗi Markov tương ứng với qu‡ tr“nh
duyệt Web của người d•ng cần c— t’nh chất ergodic, tức từ một trang web người d•ng c— thể
chuyển tới một trang bất k“ kh‡c. Do vậy ma trận Markov D được x‡c định như sau:

D & % d&e f :

,; < d&g

(2.9)

α thường được chọn gi‡ trị 0.85, với ý nghĩa tại mỗi bước duyệt Web người d•ng c— thể
chuyển tới một trang trong c‡c li•n kết ra từ trang hiện tại với x‡c suất α vˆ chuyển tới c‡c trang
kh‡c trong đồ thị Web với x‡c suất (1 − α) theo ph‰n phối v. Với : h % M;Oij9 k vˆ α: lˆ hệ số
h‹m. Khi đ—, thay v“ t’nh vector ri•ng của ma trận P ta t’nh vector ri•ng π của ma trận

Downloaded by D??ng Tr?n ()



×