Tải bản đầy đủ (.docx) (140 trang)

Mô hình và thuật giải cho hệ hỗ trợ tìm kiếm thông tin theo ngữ nghĩa trên các báo điện tử

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.94 MB, 140 trang )

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
────────────
HỒ LONG VÂN
MÔ HÌNH VÀ THUẬT GIẢI CHO HỆ HỖ TRỢ
TÌM KIẾM THÔNG TIN THEO NGỮ NGHĨA
TRÊN CÁC BÁO ĐIỆN TỬ
LUẬN VĂN THẠC SĨ NGÀNH KHOA HỌC MÁY TÍNH
MÃ SỐ: 60.48.01.01
TP HỒ CHÍ MINH - NĂM 2014
2
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

HỒ LONG VÂN
MÔ HÌNH VÀ THUẬT GIẢI CHO HỆ HỖ TRỢ
TÌM KIẾM THÔNG TIN THEO NGỮ NGHĨA
TRÊN CÁC BÁO ĐIỆN TỬ
LUẬN VĂN THẠC SĨ NGÀNH KHOA HỌC MÁY TÍNH
MÃ SỐ: 60.48.01.01
NGƯỜI HƯỚNG DẪN KHOA HỌC:
PGS-TS ĐỖ VĂN NHƠN
3
TP HỒ CHÍ MINH - NĂM 2014
4
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. Những tư liệu được sử dụng trong luận văn có
nguồn gốc và trích dẫn rõ ràng, đầy đủ.
TP. Hồ Chí Minh, ngày 01 tháng 12 năm 2014
Hồ Long Vân


5
LỜI CẢM ƠN
Trước tiên, em xin chân thành cảm ơn quý thầy cô trường Đại học Công nghệ
Thông tin - ĐHQG thành phố Hồ Chí Minh đã tận tình dạy bảo cho em nhiều kiến thức
bổ ích trong thời gian học tập tại trường, cũng như tạo điều kiện cho em thực hiện đề tài
này. Kính chúc quý thầy cô luôn dồi dào sức khoẻ và thành công trong cuộc sống.
Đặc biệt, em xin bày tỏ lòng biết ơn chân thành, sâu sắc đến PGS. TS. Đỗ Văn
Nhơn, người Thầy đã tận tâm, nhiệt tình hướng dẫn và chỉ bảo em trong suốt quá trình
thực hiện luận văn. Luận văn này sẽ rất khó hoàn thành nếu không có sự truyền đạt kiến
thức quí báu và sự hướng dẫn nhiệt tình của Thầy.
Con xin gửi tất cả lòng biết ơn và sự kính trọng đến ông bà, cha mẹ và những
người thân đã nuôi dạy, luôn bên cạnh động viên và ủng hộ con trên con đường học tập
mà con đã lựa chọn, những người đã cho con niềm tin và nghị lực vượt qua mọi khó khăn
trong quá trình học tập và làm việc.
Xin cảm ơn tất cả bạn bè đã động viên, giúp đỡ và hỗ trợ tôi rất nhiều trong quá
trình thực hiện luận văn, cũng như đóng góp cho tôi nhiều ý kiến quý báu, qua đó, giúp
tôi có nhiều ý tưởng hay hơn để hoàn thiện cho đề tài này.
Một lần nữa xin chân thành cảm ơn!
TP. Hồ Chí Minh, ngày 01 tháng 12 năm 2014
Hồ Long Vân
6
MỤC LỤC
7
DANH MỤC CÁC TỪ VIẾT TẮT
STT Từ viết tắt Ý nghĩa
1 URL Uniform Resource Locator
2 RSS Really Simple Syndication
3 HTML HyperText Markup Language
4 CK_ONTO Classed Keyphrase based Ontology
5 KĐTNN Keyphrase đặc trưng ngữ nghĩa

8
DANH MỤC BẢNG
Bảng 3.1: Trọng số được gán cho mỗi quan hệ………………………………………….67
Bảng 4.1: Thống kê kết quả tìm kiếm theo từ khoá trên kho thử nghiệm 1000 tin bài 101
Bảng 4.2: Thống kê kết quả tìm kiếm ngữ nghĩa trên kho thử nghiệm 1000 tin bài.… 104
Bảng 4.3: Thống kê kết quả tìm kiếm theo chủ đề trên kho thử nghiệm 1000 tin bài….107
Bảng 4.4: Thống kê kết quả tìm kiếm tin bài gần giống nhau.…………………………108
Bảng 4.5: Thống kê chức năng điểm tin.……………………………………………….109
9
DANH MỤC HÌNH
Hình 2.1: Quy trình xử lý của Crawler……………………………………….………….12
Hình 2.2: Kiến trúc tổng quát của một RSS…………………………………………… 14
Hình 2.3: Ví dụ về một đồ thị keyphrase ………………………………………………37
Hình 2.4: Ví dụ về một đồ thị keyphrase mở rộng………………………………………38
Hình 3.1: Quy trình xây dựng đồ thị keyphrase cho câu truy vấn……………………….64
Hình 3.2: Quy trình xây dựng đồ thị keyphrase cho tin bài báo điện tử…………………65
Hình 4.1: Cấu trúc tổng quát của hệ thống …………………………………………….87
Hình 4.2: Menu các chức năng của hệ thống ………………………………………… 90
Hình 4.3: Giao diện trang chủ của hệ thống ………………………………………… 90
Hình 4.4: Giao diện danh sách các trang báo điện tử……………………………………91
Hình 4.5: Giao diện quản lý thông tin và cấu trúc của một trang báo điện tử………
Hình 4.6: Giao diện tập danh sách các chủ đề tin tức.………………………………… 93
Hình 4.7: Giao diện thông tin của một chủ đề tin tức……………………………………93
Hình 4.8: Giao diện cấu hình lựa chọn chế độ và chiến lược thu thập
Hình 4.9: Giao diện quản lý kho tin bài………………………………………………….95
Hình 4.10: Giao diện nâng cao cho “Tìm kiếm thông thường”………………………….96
Hình 4.11: Giao diện nâng cao cho “Tìm kiếm ngữ nghĩa”…………………………… 97
Hình 4.12: Giao diện kết quả tìm kiếm sắp xếp theo “Trang báo điện tử”………………98
Hình 4.13: Giao diện chức năng lọc tin kết quả tìm kiếm……………………………….99
Hình 4.14: Giao diện chức năng điểm tin.……………………………………………….99

10
MỞ ĐẦU
Kể từ khi ra đời vào những năm 1990, World Wide Web nhanh chóng giới thiệu
đến cộng đồng thế giới một cái nhìn mới lạ về một cổng thông tin điện tử, nơi mọi người
có thể xuất bản mọi thứ dưới dạng điện tử và tìm kiếm những thông tin cần thiết. Tuy
nhiên, sự phát triển nhanh chóng với số lượng khổng lồ của dữ liệu dẫn tới việc truy xuất
thông tin đối với người dùng trở nên vô cùng phức tạp. Vì vậy, các hệ thống tìm kiếm ra
đời đem lại những tiện lợi cho việc tìm kiếm thông tin.
Các hệ thống tìm kiếm thông tin hiện nay phần lớn vẫn dựa trên từ khóa và mức
độ phổ biến của tài liệu. Một danh sách các từ khóa là dạng biểu diễn sơ lược nhất của
nội dung và cách biểu diễn này mang mức độ thông tin thấp. Vấn đề khó khăn đối với
người sử dụng là ở khả năng mô tả nhu cầu thông tin bằng một số từ khóa biểu diễn và
chuyển nhu cầu này thành dạng thức truy vấn phù hợp với hệ thống. Đặc biệt đối với
người sử dụng ít kinh nghiệm không thể đặc tả đúng từ khóa cho vấn đề cần tìm kiếm. Đó
chính là những lý do cơ bản khiến cho các hệ thống tìm kiếm hiện nay có kết quả trả về
không phải lúc nào cũng thỏa mãn yêu cầu của người sử dụng, như là độ chính xác không
cao hay không tìm thấy được những tài liệu liên quan khi chúng được mô tả với những từ
khóa khác đồng nghĩa hoặc gần nghĩa với từ khóa mà người dùng cung cấp. Từ những
mô hình tìm kiếm đơn giản ban đầu như Boolean, nhiều tác giả đã nỗ lực cải thiện hiệu
quả của việc tìm kiếm thông qua các mô hình phức tạp hơn như mô hình không gian
vector (Vector Space Model), các mô hình xác suất (Probabilitic Models), mô hình ngôn
ngữ (Language Model). Nhiều nghiên cứu khác nhằm nỗ lực thay đổi cách đánh trọng số,
đưa vào xử lý ngôn ngữ tự nhiên, khử nhập nhằng, mở rộng tài liệu, mở rộng câu truy vấn
… cũng góp phần làm tăng hiệu quả tìm kiếm. Mặc dù có nhiều cải tiến để cải thiện kết
quả, những hạn chế của việc sử dụng từ khóa vẫn chưa được khắc phục.
11
Hiện nay, trong lĩnh vực Khoa học Máy tính có một sự chuyển hướng dần đến
hướng tri thức hoặc xử lý ngữ nghĩa. Theo đó, những hệ thống tìm kiếm dựa trên khái
niệm được nghiên cứu phát triển nhằm thay thế cho những hệ thống truyền thống vốn đã
bộc lộ nhiều khuyết điểm lớn. Việc tìm kiếm sẽ dựa trên không gian các khái niệm và các

mối quan hệ ngữ nghĩa giữa chúng. Những cách tiếp cận theo hướng ngữ nghĩa hay theo
cấu trúc khái niệm này hướng tới việc mô phỏng một cách tự nhiên cách con người giao
tiếp, nghĩa là mô phỏng cấp độ hiểu về ý nghĩa của từ, cụm từ hay văn bản mà người
dùng cung cấp tương ứng với những gì người dùng nghĩ. Trong đó, cách tiếp cận dựa trên
các Ontology được xem là cách tiếp cận hiện đại và phù hợp nhất cho việc thiết kế biểu
diễn, xử lý nội dung và ý nghĩa thông tin của các trang báo điện tử.
Xuất phát từ nhu cầu thực tế và khả năng nghiên cứu phát triển giải pháp cũng như
ứng dụng, đề tài đã tìm hiểu và nghiên cứu các kỹ thuật để xây dựng hệ hỗ trợ tìm kiếm
tin bài theo ngữ nghĩa trên các báo điện tử bao gồm các mô hình, vấn đề, thuật giải, quy
trình xây dựng hệ thống trong đó cố gắng quản lý được các thông tin liên quan tới ngữ
nghĩa của tài liệu cũng như hỗ trợ biểu diễn và xử lý ngữ nghĩa trong tìm kiếm. Kết quả
thực nghiệm bước đầu cho thấy giải pháp đã đề xuất là khả quan và có khả năng ứng
dụng tốt.
Nội dung của luận văn được trình bày trong 5 chương, bao gồm:
Chương 1 giới thiệu tổng quan về đề tài gồm các khảo sát tìm hiểu thực trạng hiện
nay của các tờ báo điện tử và nhu cầu cần thiết để xây dựng hệ thống hỗ trợ cho việc tìm
kiếm thông tin trên internet, tìm hiểu các hệ thống thu thập và tìm kiếm thông tin, phát
hiện tin bài trùng lắp cũng như các kỹ thuật liên quan trong nước và quốc tế. Cuối cùng
trình bày mục tiêu của luận văn.
Chương 2 trình bày cơ sở lý thuyết của đề tài liên quan tới các phương pháp thu
thập thông tin, mô hình ontology CK_ONTO, mô hình tổng quát cho một trang báo điện
tử, cuối cùng giới thiệu một số phương pháp rút trích keyphrase, phương pháp biểu diễn
tài liệu và phương pháp tính khoảng cách ngữ nghĩa giữa các khái niệm.
12
Chương 3 giới thiệu mô hình của hệ thống tìm kiếm báo điện tử theo ngữ nghĩa và
các vấn đề liên quan để xây dựng hệ thống bao gồm: thu thập tin bài, rút trích tự động
keyphrase, tìm kiếm theo ngữ nghĩa các tin bài báo điện tử, tìm kiếm tin bài theo chủ đề,
bài toán điểm tin. Đi cùng với các vấn đề là các phương pháp tiếp cận để giải quyết và
các thuật giải tương ứng. Các phương pháp và thuật giải này là cơ sở để xây dựng các
động cơ suy diễn và tìm kiếm trong hệ thống hỗ trợ tìm kiếm ngữ nghĩa cho báo điện tử.

Chương 4 là phần cài đặt xây dựng hệ thống hỗ trợ tìm kiếm tin bài báo điện tử.
Hệ thống hỗ trợ việc thu thập và lưu trữ các tin bài thuộc các trang báo điện tử cần quan
tâm, quản lý cấu trúc thông tin của các trang báo này, hỗ trợ người dùng tìm kiếm theo từ
khóa và tìm kiếm theo nội dung tin bài, tìm kiếm tin bài theo các chủ đề quan tâm và
trích xuất báo cáo điểm tin. Tiến hành phân tích các yêu cầu và chức năng của hệ thống,
thiết kế các thành phần xử lý và đưa ra một số kết quả thử nghiệm.
Chương 5 là kết luận và hướng phát triển. Tổng kết những kết quả đạt được, tóm
tắt lại các vấn đề đã đặt ra trong luận văn và cách giải quyết, những đóng góp mới và
những đề xuất về một số hướng phát triển của đề tài trong tương lai.
CHƯƠNG 1
GIỚI THIỆU TỔNG QUAN VỀ ĐỀ TÀI
Chương 1 trước tiên tìm hiểu thực trạng hiện nay của các tờ báo điện tử và nhu
cầu cần thiết để xây dựng hệ thống hỗ trợ cho việc tìm kiếm thông tin trên internet. Từ đó
tìm hiểu các hệ thống thu thập, tìm kiếm thông tin và phát hiện tin bài trùng lắp cũng như
các kỹ thuật liên quan trong nước và quốc tế. Cuối cùng trình bày mục tiêu của luận văn.
1.1. Thực trạng và nhu cầu xây dựng hệ hỗ trợ thu thập, tìm kiếm thông tin
Trước đây, người đọc báo thường mua các tờ báo in (báo giấy) để nắm bắt thông
tin trong nước và quốc tế. Tuy nhiên, khi công nghệ số ra đời, đặc biệt là sự ra đời của
internet đã xuất hiện nhiều loại hình báo chí mới, trong đó có báo điện tử. Sự phát triển
nhanh chóng của báo điện tử với phương thức đưa tin, truyền tin kiểu mới đã thu hút một
13
lượng lớn độc giả. Với lợi thế không thể phủ nhận là việc cập nhật tin tức nhanh, mang
tính thời sự cao, thông tin đa chiều và sự linh động, báo điện tử đáp ứng đầy đủ những
tiêu chí mà độc giả hiện đại cần.
Với những lợi thế của báo điện tử, hàng trăm các trang báo điện tử ở Việt Nam đã
ra đời. Sự bùng nổ của báo điện tử đem đến cho độc giả kho tin tức khổng lồ, được cập
nhật liên tục từng phút, thậm chí từng giây. Với lượng thông tin khổng lồ như vậy, các cơ
quan chức năng, các nhà quản lý có liên quan tới thể loại báo điện tử trở nên khó khăn
trong việc kiểm soát nội dung, kiểm tra tính đúng đắn của các trang báo. Còn đối với độc
giả, họ thường đọc thông tin trên một số tờ báo điện tử phổ biến và có thể bỏ qua rất

nhiều thông tin mới ở những trang báo chưa biết. Hay khi các cá nhân hoặc một tổ chức
nào đó cần tổng hợp tin từ một lĩnh vực cụ thể, thống kê định kỳ các tin bài liên quan tới
một vấn đề, sự kiện quan tâm nào đó, họ thường loay hoay với một mớ hỗn độn tin bài
không thể kiểm soát; đặc biệt hơn các công việc ấy đòi hỏi tốn rất nhiều công sức và thời
gian bởi nó chủ yếu được làm thủ công bởi con người nhưng có thể mang lại kết quả
không như mong đợi.
14
Trước những khó khăn của sự bùng nổ báo mạng như trên, nhu cầu tất yếu của các
cơ quan chức năng, các tổ chức, cá nhân là cần có một hệ thống có khả năng giải quyết
những vấn đề liên quan tới họ một cách dễ dàng và nhanh chóng. Hệ thống này phải có
khả năng thu thập các tin bài từ nhiều trang báo điện tử khác nhau, quản lý được các tin
bài, cho phép thống kê theo những tiêu chí liên quan, tìm kiếm các tin bài theo những tiêu
chí cho trước, xử lý được nội dung liên quan tới một lĩnh vực hay chủ đề… Vì vậy, nhu
cầu để xây dựng một hệ thống hỗ trợ cho việc tìm kiếm thông tin là thật sự quan trọng và
có ý nghĩa.
1.2. Vấn đề thu thập thông tin
Đã có rất nhiều hệ thống thu thập, tổng hợp tin tức đã ra đời. Ở Việt Nam,
HueCIT-NewsFinder và Báo Mới là 2 hệ thống tổng hợp tin khá nổi tiếng. HueCIT-
NewsFinder là phần mềm tìm kiếm tin tự động trên internet. Phần mềm có các khả năng
sau: tải tin thủ công hoặc tự động theo lịch lập sẵn, xem tin đã tải về, lưu trữ tin định kỳ
hoặc theo nhu cầu giúp giảm thiểu khối lượng xử lý, chuyển tin sang các trang thông tin
điện tử khác, tìm kiếm tin theo từ khóa và một số tiêu chí liên quan. Báo Mới là một
website tổng hợp thông tin tiếng Việt được điểu khiển tự động bởi máy tính. Hằng ngày
các tin tức từ các trang báo điện tử được tự động tổng hợp, phân loại nội dung vào các
chuyên mục thích hợp, phát hiện các tin bài đăng lại, nhóm các tin bài liên quan về cùng
một chủ đề, tự động bóc tách từ khóa giúp người đọc dễ dàng tìm kiếm các thông tin liên
quan đa chiều, đưa ra những gợi ý những bài viết mà độc giả có thể quan tâm.
Trên thế giới có khá nhiều trang web tổng hợp tin nổi tiếng như: Google News,
News 360, Fark, Pulse, Feedly… Google News là một trang web tin tức thu thập các tiêu
đề từ hơn 50.000 nguồn tin tức trên toàn thế giới, nhóm các thông tin tương tự lại với

nhau và hiển thị chúng theo sở thích của mỗi người đọc. Theo truyền thống, khi đọc tin
tức, công việc trước tiên là chọn một ấn phẩm và sau đó tìm các tiêu đề quan tâm. Với
Google News, người dùng có thể đọc các bài báo theo một cách khác, với các tùy chọn cá
nhân và đa dạng hơn để lựa chọn. Trên Google News, người dùng sẽ thấy các liên kết đến
nhiều trang báo về mọi lĩnh vực, việc làm đầu tiên là quyết định chủ đề quan tâm và sau
đó chọn chủ đề muốn đọc. News 360 sẵn có trên ứng dụng web hay các thiết bị di động,
15
là một trong những ứng dụng đầu tiên khám phá tin tức trên mạng xã hội như Facebook,
Twitter, tìm hiểu nhiều hơn về người dùng và những chủ đề mà họ quan tâm, từ đó phân
phối thông tin đến người dùng theo sở thích. Nó phân tích hành vi và hoạt động của
người dùng trên phương tiện xã hội, sử dụng phân tích ngữ nghĩa và xử lý ngôn ngữ tự
nhiên để tạo ra một biểu đồ, từ đó phân phối những nội dung liên quan. Fark, Pulse,
Feedly cũng là những ứng dụng tổng hợp tin được khá nhiều người dùng trên thế giới ưa
thích. Chúng đảm bảo những tin tức tốt nhất trong ngày sẽ đến được với người dùng.
Người dùng vẫn có thể thêm vào những chủ đề và các trang web ưa thích, kiểm soát được
nguồn tin và những chủ đề muốn đọc.
Để xây dựng những hệ thống tổng hợp tin tức, việc cần làm trước tiên là thu thập
được những trang tin từ nhiều nguồn thu thập khác nhau. Có 2 phương pháp thu thập phổ
biến là Crawler và RSS. Trong [9], [16], tác giả có giới thiệu về cách thức hoạt động của
một Crawler. Crawler là kỹ thuật dùng để tải và lưu trữ những trang web. Crawler duyệt
toàn bộ World Wide Web một cách có hệ thống nhằm mục đích thu thập dữ liệu, tri thức
hoặc với mục đích đánh dấu chỉ mục trang web. Một crawler bắt đầu bằng việc đặt một
tập hợp những đường dẫn URL (Uniform Resource Locator) trong hàng đợi, sau đó lấy
những đường dẫn URL theo thứ tự ưu tiên, tải trang web với đường dẫn URL tương ứng,
rút trích bất kỳ URL trong trang web này, và cuối cùng đặt những URL mới vào trong
hàng đợi. Toàn bộ quá trình này sẽ được tiếp tục. Cuối cùng những trang web thu thập
được sử dụng cho việc tổng hợp hay tìm kiếm sau này. RSS (Really Simple Syndication)
là một tệp tin XML được các website sử dụng cung cấp thông tin cho các tin bài trong
trang web đó trên internet. Công nghệ RSS cho phép người dùng Internet có thể đặt mua
thông tin từ các website có cung cấp RSS (RSS feeds); chúng thường là các website có

nội dung thay đổi và được cập nhật thường xuyên. Những chương trình nổi tiếng như
RSS Reader hay RSS Aggregator vừa quản lý thông tin đăng ký, vừa cho tải các tin bài.
Tuy nhiên, không phải tất cả những tin bài nhận được là phù hợp với người dùng, vì vậy
cần có những cơ chế thích hợp để người dùng có thể nhận được những thông tin quan
tâm. Trong [18] có đề cập về việc tăng cường khả năng tổng hợp tin dùng RSS dựa trên
Ontology. Dùng ontology, việc tổng hợp thông tin sẽ chính xác và đầy đủ hơn. [8] giới
16
thiệu một phương pháp tổng hợp tin RSS dựa trên thuật toán gom cụm. Với kỹ thuật này,
những trang thông tin liên quan nhau sẽ được gom cụm theo các chủ đề giúp người dùng
dễ dàng tìm kiếm những chủ đề mà họ quan tâm. Các kỹ thuật này thật sự hữu ích cho
việc thực hiện thu thập tin bài trên các báo mạng.
1.3. Vấn đề tìm kiếm thông tin theo ngữ nghĩa
Internet chứa hầu như tất cả những thông tin liên quan tới mọi lĩnh vực, mọi ngõ
ngách trong cuộc sống. Nhưng nó rất rộng, rộng đến mức gần như không ai có thể kiểm
soát được. Diện mạo của Internet lại thay đổi quá nhanh chóng và mạnh mẽ.
Có thể ví Internet như một biển dữ liệu khổng lồ, với muôn vàn những viên ngọc quý
nằm giữa các hạt sạn. Trong đời sống hằng ngày, nhu cầu tìm kiếm thông tin đóng vai trò
vô cùng to lớn, và một trong những vấn đề bức thiết nhất của công nghệ hiện nay là làm
sao "đãi cát tìm vàng", khai thác nguồn tài nguyên này một cách hợp lý, đem lại lợi ích
tốt nhất cho con người. Ngày nay, hầu hết mọi người đều sử dụng các bộ máy tìm kiếm
để tìm kiếm thông tin trên mạng Internet.
Trên thị trường hiện nay các công cụ tìm kiếm thông tin trên máy tính đã trở nên
đông đảo và gia tăng không ngừng. Thời gian gần đây, chúng ta nghe nhiều về “cuộc
chiến các bộ máy tìm kiếm trên Internet” với sự cạnh tranh giữa các hãng công nghệ hàng
đầu trên thế giới, đó là sự canh tranh giữa Google (google.com), Yahoo (yahoo.com),
Bing (bing.com), MSN (msn.com), Ask (ask.com), AOL (aol.com), Lycos (lycos.com),
Alta Vista (altavista.com). Các bộ máy tìm kiếm này rất nổi tiếng trên toàn thế giới với
ngôn ngữ được hỗ trợ chính là tiếng Anh nhưng cũng đã hỗ trợ cho các ngôn ngữ khác.
Với tham vọng là xây dựng các bộ máy tìm kiếm tận dụng những lợi thế địa phương của
quốc gia về ngôn ngữ và văn hóa, các quốc gia cũng xây dựng các bộ máy tìm kiếm riêng

cho mình như Baidu (baidu.com) của Trung Quốc hay Heeya (heeya.com) của Hàn Quốc
là những ví dụ thành công của các động cơ tìm kiếm địa phương. Ở Việt Nam, các bộ
máy tìm kiếm như CocCoc (coccoc.com), Xalo (xalo.vn), Timnhanh (timnhanh.com),
VinaSeek (vinaseek.net) cũng đang có những đầu tư rất lớn để phục vụ cho việc tìm kiếm
những trang Web tiếng Việt. Ở đây chỉ xin nhấn mạnh bộ máy tìm kiếm CocCoc, một
trong những bộ máy tìm kiếm Tiếng Việt đang rất nổi tiếng ở Việt Nam. Mục tiêu của
17
CocCoc là muốn xây dựng một công cụ tìm kiếm có thể hiểu và xử lý tiếng Việt tốt hơn
bất cứ một công cụ tìm kiếm nào khác. Tiếng Việt là một ngôn ngữ hết sức tinh tế nếu
không muốn nói là cực kỳ khó về mặt ngữ pháp và từ vựng. Để phát triển công cụ tìm
kiếm cần phải có những nghiên cứu đặc biệt để “dạy” cho máy tính “hiểu” và xử lý tiếng
Việt. Ngữ pháp, từ vựng tiếng Việt còn phức tạp với cả người, đừng nói là với máy
tính. Ví dụ, đối với từ vựng, tiếng Việt dùng bảng chữ cái Latin nhưng lại có nhiều dấu
khác nhau. “Hoa mi” khác với “hoạ” và “mi”. “Man” khác với “màn”, “mán”,
“mản”,”mãn”, “mạn”; và tất cả những cái này hiển nhiên lại khác với “măn”, “mằn,
“mắn”, “mặn”, “mân”, “mần”, “mấn”, “mẩn”, … Sai một dấu là đi một dặm. Và CocCoc
quyết tâm giải quyết được các vấn đề này của ngôn ngữ Tiếng Việt và đạt được một số
thành công ban đầu.
Các bộ máy tìm kiếm đã mang lại rất nhiều tiện lợi cho người dùng khi tìm kiếm
thông tin. Tuy nhiên, bất kỳ một bộ máy tìm kiếm nào cũng tồn tại những hạn chế của nó.
Khi thảo luận những vấn đề liên quan tới tìm kiếm, Google là nơi thường nói đến. Không
phải vì Google là bộ máy tìm kiếm tệ nhất mà bởi vì Google là bộ máy tìm kiếm tốt nhất
hiện nay. Những vấn đề của Google và thuật toán PageRank được đề cập ở [7, 20] vẫn
chưa được chinh phục, và những bộ máy tìm kiếm khác cũng đối mặt với những vấn đề
tương tự. Ở đây xin bàn về một số hạn chế của Google như sau:
- Sự nhọc nhằn về ngữ nghĩa dẫn tới sự thiên lệch trong kết quả tìm kiếm. Khi tìm
kiếm những thông tin về apple, hầu hết các kết quả tìm kiếm là những thông tin liên quan
tới tập đoàn apple (1 tập đoàn công nghệ nổi tiếng của Mỹ, được biết đến nhiều với các
sản phẩm về máy tính Mac, máy nghe nhạc Ipod, điện thoại Iphone). Những kết quả này
thật sự hữu dụng nếu người dùng muốn tìm kiếm các sản phẩm của hãng công nghệ này.

Nhưng nếu họ muốn các thông tin về loại trái cây tên là apple, kết quả chưa thật sự như
mong đợi.
- Thuật toán bị đánh lừa. Chẳng hạn tìm kiếm flowers, hầu hết các kết quả là
những của hàng online bán flowers. Google tạo ra một sự thiên lệch trong kết quả tìm
kiếm khi người ta đề cập tới môt sản phầm trong trang web của họ và liên kết tới một cửa
hàng bán sản phẩm đó. Những liên kết dịch vụ này sinh ra trọng số lớn tới những cửa
18
hàng vì thuật toán PageRank của Google tưởng rằng những trang với nhiều link trỏ tới là
quan trọng. Sự thiên lệch cũng xảy ra khi một chủ đề cụ thể được thảo luận bởi nhiều
người trên blog hoặc forum. Những thảo luận này có xu hướng đưa những chủ đề đó lên
đầu của danh sách kết quả tìm kiếm thay vì những trang thực sự chứa thông tin mô tả chủ
đề. Kết quả người dùng nhận được là những trang với những thảo luận về một chủ đề chứ
không phải những trang định nghĩa chủ đề này.
Các hệ thống tìm kiếm thông tin hiện nay phần lớn vẫn dựa trên từ khóa và mức
độ phổ biến của tài liệu. Một danh sách các từ khóa là dạng biểu diễn sơ lược nhất của
nội dung và cách biểu diễn này mang mức độ thông tin thấp. Vấn đề khó khăn đối với
người sử dụng là ở khả năng mô tả nhu cầu thông tin bằng một số từ khóa biểu diễn và
chuyển nhu cầu này thành dạng thức truy vấn phù hợp với hệ thống. Đặc biệt đối với
người sử dụng ít kinh nghiệm không thể đặc tả đúng từ khóa cho vấn đề cần tìm kiếm. Đó
chính là những lý do cơ bản khiến cho các hệ thống tìm kiếm hiện nay có kết quả trả về
không phải lúc nào cũng thỏa mãn yêu cầu của người sử dụng, như là độ chính xác không
cao hay không tìm thấy được những tài liệu liên quan khi chúng được mô tả với những từ
khóa khác đồng nghĩa hoặc gần nghĩa với từ khóa mà người dùng cung cấp. Từ những
mô hình tìm kiếm đơn giản ban đầu như Boolean, nhiều tác giả đã nỗ lực cải thiện hiệu
quả của việc tìm kiếm thông qua các mô hình phức tạp hơn như mô hình không gian
vector (Vector Space Model), các mô hình xác suất (Probabilitic Models), mô hình ngôn
ngữ (Language Model). Nhiều nghiên cứu khác nhằm nỗ lực thay đổi cách đánh trọng số,
đưa vào xử lý ngôn ngữ tự nhiên, khử nhập nhằng, mở rộng tài liệu, mở rộng câu truy vấn
… cũng góp phần làm tăng hiệu quả tìm kiếm. Mặc dù có nhiều cải tiến để cải thiện kết
quả, những hạn chế của việc sử dụng từ khóa vẫn chưa được khắc phục.

Hiện nay, trong lĩnh vực Khoa học Máy tính có một sự chuyển hướng dần đến
hướng tri thức hoặc xử lý ngữ nghĩa. Theo đó, những hệ thống tìm kiếm dựa trên khái
niệm được nghiên cứu phát triển nhằm thay thế cho những hệ thống truyền thống vốn đã
bộc lộ nhiều khuyết điểm lớn. Việc tìm kiếm sẽ dựa trên không gian các khái niệm và các
mối quan hệ ngữ nghĩa giữa chúng. Những cách tiếp cận theo hướng ngữ nghĩa hay theo
cấu trúc khái niệm này hướng tới việc mô phỏng một cách tự nhiên cách con người giao
19
tiếp, nghĩa là mô phỏng cấp độ hiểu về ý nghĩa của từ, cụm từ hay văn bản mà người
dùng cung cấp tương ứng với những gì người dùng nghĩ. Trong đó, cách tiếp cận dựa trên
các Ontology được xem là cách tiếp cận hiện đại và phù hợp nhất cho việc thiết kế biểu
diễn, xử lý nội dung và ý nghĩa của các tài liệu của con người. Bên cạnh đó, nhiều mô
hình biểu diễn cho tài liệu giàu ngữ nghĩa hơn cũng được đề xuất như mạng ngữ nghĩa,
đồ thị khái niệm CGs, đồ thị hình sao, đồ thị tần số, đồ thị khoảng cách, đồ thị song
phương,…được đánh giá có nhiều tiềm năng vì tận dụng được các thông tin quan trọng
về cấu trúc và các mối quan hệ ngữ nghĩa vốn không được xét đến trong các mô hình
biểu diễn truyền thống.
Như vậy, liên quan tới bài toán tìm kiếm thông tin vẫn còn tồn tại nhiều vấn đề tìm
ẩn cần được giải quyết. Tìm lời giải cho bài toán tìm kiếm ngữ nghĩa có ý nghĩa vô cùng
quan trọng.
1.4. Vấn đề phát hiện sự trùng lắp thông tin
Thông tin trên internet có kích thước vô cùng lớn. Sự tràn ngập thông tin làm cho
việc truy xuất thông tin đối với người dùng trở nên vô cùng phức tạp. Vì vậy, các Search
Engine ra đời đem lại nhiều tiện lợi cho việc tìm kiếm thông tin. Tương ứng với câu truy
vấn của người dùng, Search Engine sẽ trả về danh sách các kết quả gần với yêu cầu của
họ. Để khám phá thông tin, người sử dụng phải duyệt qua một danh sách dài và kiểm tra
tựa đề, những đoạn trích ngắn một cách tuần tự. Điều này làm tiêu tốn khá nhiều thời
gian của người dùng khi có rất nhiều thông tin trùng lắp. Vì vậy, việc phát hiện sự trùng
lắp thông tin hiệu quả là rất quan trọng, đặc biệt đối với những ứng dụng có dữ liệu lớn.
Phát hiện thông tin trùng lắp được sử dụng khá nhiều trong các ứng dụng với
nhiều lĩnh vực khác nhau:

- Trong những hệ thống quản lý tài liệu: có hàng triệu tài liệu trong những hệ
thống này và chúng cần được kiểm soát, vì vậy việc nhận dạng những tài liệu
trùng lắp là vô cùng cần thiết.
- Phát hiện sự ăn cắp ý tưởng: những công nghệ điện tử hiện đại ngày nay có thể
sao chép ý tưởng một cách hết sức dễ dàng. Để xử lý vấn đề này, cơ chế phát
hiện sự trùng lắp cần được sử dụng.
20
- Thu thập trang web (web crawling): sự tăng trưởng mạnh mẽ của world wide
web đòi hỏi những bộ thu thập hiện đại phải trở nên hiệu quả hơn, những trang
web trùng lắp sẽ không được thu thập về.
- Trong thư viện kỹ thuật số: những thư viện kỹ thuật số thường lưu trữ một
lượng lớn các bộ sưu tập xuất bản điện tử, vì vậy cần có những hệ thống giúp
phát hiện sự chồng chéo, trùng lắp thông tin.
- Làm sạch dữ liệu: trong các hệ thống cơ sở dữ liệu, một bước cần thiết để làm
sạch dữ liệu và tích hợp dữ liệu là xác định những dữ liệu trùng lắp.
- Trong những hệ thống quản lý email: xác định những thư rác trùng lắp.
Đã có rất nhiều nghiên cứu liên quan tới việc phát hiện sự trùng lắp thông tin và
nhiều thuật toán đã được đưa ra để nhận dạng sự trùng lắp. Một trong những thuật toán
đầu tiên được giới thiệu bởi Broder [5]. Kỹ thuật này tính toán độ tương tự giữa 2 tài liệu,
mỗi tài liệu được chia ra thành những mảnh gọi là shingles. Nếu 2 tài liệu chứa cùng tập
shingles thì chúng được xem là tương đương và có thể được cho là gần giống nhau. [24]
đề xuất phương pháp chỉ số đảo ngược phân bố để tính toán độ tương tự và nhận dạng dữ
liệu dư thừa. [13] so sánh độ tương tự của từng cặp câu để tìm ra những tài liệu gần giống
nhau. SpotSigs đã được đề xuất trong [14] kết hợp những từ đứng trước stopword với
những chuỗi ngắn của những thuật ngữ có nội dung liền kề. [10] trình bày một phương
pháp phát hiện sự trùng lắp thích nghi, có thể đạt được độ chính xác cao trên các lĩnh vực
khác nhau. Một cách tiếp cận khác dựa trên ngữ nghĩa cũng được sử dùng để phát hiện
tin bài gần giống nhau. [6] giới thiệu một phương pháp phát hiện sự ăn cắp ý tưởng dùng
tiếp cận tương tự chuỗi dựa trên ngữ nghĩa và [12] cũng đưa ra một số độ đo tương tự
dựa trên text mà đặc trưng cho quan hệ giữa những đồ thị web ngữ nghĩa.

Bài toán phát hiện sự trùng lắp thông tin đã được nhiều nhà khoa học nghiên cứu
và đã được áp dụng khá rộng rãi trong nhiều ứng dụng khác nhau. Nghiên cứu bài toán
phát hiện sự trùng lắp của tin bài trong tập dữ liệu web lớn có ý nghĩa rất thực tiễn.
1.5. Mục tiêu và giới hạn đề tài
Đề tài tập trung tìm hiểu, nghiên cứu các giải pháp và kỹ thuật đã có của việc thu
thập và tìm kiếm tin bài theo ngữ nghĩa cho một lĩnh vực đặc thù, từ đó đưa ra mô hình
21
chung cho hệ thống tìm kiếm tin bài theo ngữ nghĩa trên báo điện tử, nêu ra được các vấn
đề cần giải quyết và các thuật giải liên quan. Đề tài tập trung nghiên cứu và giải quyết các
vấn đề sau:
- Tìm hiểu các kỹ thuật giúp cho việc thu thập tin bài.
- Nghiên cứu một số mô hình biểu diễn tri thức, trong đó có mô hình Ontology
mô tả tri thức lĩnh vực, cùng với đó là các phương pháp biểu diễn ngữ nghĩa
liên quan đến nội dung tin bài.
- Nghiên cứu và đề xuất kỹ thuật rút trích các keyphrase một cách hiệu quả.
- Đưa ra các vấn đề và thuật toán cho việc tìm kiếm ngữ nghĩa.
- Giải quyết bài toán tìm kiếm theo chủ đề.
- Liệt kê các tin bài không trùng lắp cho bài toán điểm tin.
Trên cơ sở đó, đề tài sẽ xây dựng hệ hỗ trợ thu thập và tìm kiếm thông tin theo
ngữ nghĩa cho lĩnh vực Lao động-Việc làm trên các báo điện tử. Hệ thống đáp ứng các
chức năng chính sau:
- Hỗ trợ thu thập và quản lý tin bài: cho phép thu thập tin bài từ các trang báo điện tử và
quản lý các tin bài đã thu thập về…
- Hỗ trợ tìm kiếm: tìm kiếm tin bài trong cơ sở dữ liệu đã thu thập về. Việc tìm kiếm bao
gồm các chức năng: tìm kiếm theo từ khóa, tìm kiếm theo ngữ nghĩa và tìm kiếm theo
chủ đề cần quan tâm. Tìm kiếm từ khóa sẽ cho kết quả là các tin bài có nội dung trùng
với các từ khóa ở câu truy vấn. Tìm kiếm ngữ nghĩa sẽ không so trùng một cách chính
xác những gì người dùng cung cấp mà dựa trên tri thức của một lĩnh vực, từ đó trả về tập
kết quả thích hợp với ý định của người tìm kiếm. Tìm kiếm theo chủ đề sẽ liệt kê các tin
bài có liên quan với chủ đề quan tâm.

- Điểm tin: liệt kê các tin tức không trùng lắp tại một thời điểm của tất cả các trang báo
điện tử có trong hệ thống. Các tin tức được nhiều trang báo đăng nhiều nhất sẽ là những
tin chính và nằm ở các vị trí đầu tiên trên trang điểm tin.
Trong thế giới internet, có rất nhiều loại website: báo điện tử (E-newspaper), cổng
thông tin (Portal), sàn giao dịch (Marketplace), cửa hàng và siêu thị trực tuyến (E-store),
mạng xã hội (Social Network), Web Blog… Trong phạm vi của luận văn, đề tài chỉ tập
22
trung vào việc thu thập các trang báo điện tử chính thống (E-newspaper) như: báo “Tuổi
Trẻ Online”, báo “VNEXPRESS”, báo “Dân Trí”…
Việc xây dựng hệ thống hỗ trợ tìm kiếm các tin bài trên báo điện tử theo ngữ nghĩa
hiện vẫn còn khá mới và các phương pháp xử lý vẫn chưa cho lời giải tối ưu. Các phương
pháp và kỹ thuật hiện có thường chỉ hỗ trợ cho một số miền tri thức nhất định trong
những ứng dụng cụ thể và tỏ ra không hiệu quả trong việc áp dụng giải quyết nhiều dạng
bài toán khác nhau. Ngoài ra, việc xây dựng một cơ sở tri thức cho một lĩnh vực cũng gặp
nhiều khó khăn vì đòi hỏi kiến thức của chuyên gia về lĩnh vực và tốn khá nhiều thời gian
công sức. Trong bối cảnh đó, luận văn chỉ nghiên cứu xây dựng thử nghiệm một hệ hỗ trợ
tìm kiếm tin bài về một lĩnh vực, cụ thể là lĩnh vực Lao động-Việc làm. Kho dữ liệu tin
bài chứa các tin bài có nội dung là ngôn ngữ Tiếng Việt.
CHƯƠNG 2
CƠ SỞ LÝ THUYẾT
Chương 2 trình bày các phương pháp thu thập thông tin, mô hình ontology
CK_ONTO và mô hình tổng quát cho một trang báo điện tử. Tiếp theo là một số phương
pháp rút trích keyphrase và cuối cùng là các phương pháp biểu diễn tài liệu và phương
pháp tính khoảng cách ngữ nghĩa giữa các khái niệm.
2.1. Các phương pháp thu thập thông tin
2.1.1. Web Crawler
Web crawler là chương trình khai thác sơ đồ cấu trúc của các website. Chức năng
chủ yếu của một Web Crawler là lấy dữ liệu và nội dung từ các trang web, sau đó thực
hiện tái tổ chức và lưu trữ những dữ liệu đó vào các kho chứa cục bộ. Những dữ liệu
được Web Crawler thu thập sau đó sẽ được xử lý để nhằm đáp ứng các mục đích của

từng loại ứng dụng cụ thể như hệ thống tìm kiếm thông tin trên Web, hệ thống phân tích
chứng khoán,… Quy trình đơn giản nhất của một Web Crawler là bắt đầu thu thập dữ
liệu từ một địa chỉ nguồn, sau đó trích xuất các liên kết ngoài trong trang web để mở rộng
truy cập vào các trang web tiếp theo. Quá trình này tiếp tục với các trang web mới với
23
công việc thu thập dữ liệu đồng thời truy cập các liên kết ngoài khác, quy trình được lặp
đi lặp lại liên tục cho đến khi gặp được một điều kiện dừng thu thập đã được cài đặt trước
đó. Tuy nhiên, đằng sau quy trình thu thập được mô tả một cách đơn giản như trên lại là
một mảng các vấn đề phức tạp có liên quan như việc kết nối mạng, các tiêu chuẩn của
một URL, việc duyệt các tài liệu HTML và cách thức giao tiếp với các Server. Trên thực
tế, các thế hệ Web Crawler gần đây có thể coi là một trong những module phức tạp nhất
trong một hệ thống mà nó được kèm theo.
Tùy thuộc vào mục đích của hệ thống, các Web Crawler của các hệ thống khác
nhau có chiến lược thu thập dữ liệu khác nhau. Ví dụ, đối với những hệ thống tìm kiếm
thông tin, Web Crawler thường có xu hướng và mục tiêu chính là download tất cả các
trang web mà nó gặp. Ngược lại, các crawler khác lại chỉ chọn một số trang web để tải và
duyệt trong số rất nhiều các trang web nó gặp, gọi là preferential crawler – crawler dựa
trên kinh nghiệm, thường được sử dụng trong các hệ thống là kho dữ liệu có chủ điểm, tự
động hóa các nguồn lực và đáp ứng cho các đại lý phần mềm. Các crawler có lựa chọn
được xây dựng theo một chủ đề xác định gọi là các topic crawler hay focused crawler.
 Cấu trúc cơ bản của một web crawler
Cấu trúc đơn giản của một chương trình crawler
bao
gồm một danh sách các
URL gọi là frontier. Danh sách này được khởi tạo bởi
các
URL hạt nhân đã được
cung cấp bởi người dùng hoặc các chương trình khác. Mỗi vòng lặp
crawling
gồm: lấy

ra URL cần được index tiếp theo từ frontier, nạp trang web tương ứng với URL
đó
bằng
giao thức HTTP, duyệt trang web vừa tải về để lấy ra các URL và các thông tin
mà ứng
dụng
cần, và cuối cùng là thêm các URL chưa được thăm vào frontier. Trước
khi các URL được thêm vào frontier chúng sẽ được gán một độ đo thể hiện đánh giá
hiệu quả khi thăm trang web
tương
ứng với URL đó. Quá trình crawling có thể kết
thúc khi một số lượng nhất định các trang web đã
được
tải. Nếu chương trình crawler
đã sẵn sàng để duyệt một trang web khác và trạng thái của frontier


rỗng,
một tín hiệu
trạng thái kết thúc (dead-end) sẽ được gửi cho crawler. Chương trình crawler
sẽ

không
có trang web mới để tải và dừng
lại.
24
Hình 2.1: Quy trình xử lý của Crawler.
Công việc crawling có thể được xem như một bài toán duyệt đồ thị. Toàn bộ thế
giới web được xem như một đồ thị lớn với các đỉnh là các trang web và các liên kết là các
cung (cạnh). Một crawler bắt đầu tại một vài đỉnh và sau đó đi theo các cung để tới các

đỉnh khác. Quá trình tải một trang web và trích ra các liên kết bên trong tương tự như
việc mở rộng một đỉnh trong bài toán tìm kiếm trên đồ thị. Một crawler có chủ điểm cố
gắng đi theo các cung được kỳ vọng dẫn tới các vị trí trong đồ thị là hợp lệ với chủ điểm
đó.
2.1.2. Really Simple Syndication (RSS)
Sự phát triển của công nghệ đã đưa thông tin lên trực tuyến, thông tin được cập
nhật liên tục từng phút, thậm chí từng giây. Điều này khiến người dùng vô cùng khó khăn
trong việc theo dõi tin tức. Hầu hết mọi người đều quan tâm về tin tức mới nhất, những
cập nhật mới nhất của cộng đồng. Việc kiểm tra các trang web liên tục để xem có bất cứ
điều gì thay đổi là việc làm không khả thi. Một trong những giải pháp để kiểm tra thông
tin mới nhất là sử dụng đánh dấu trang. Nhưng đây không phải là một giải pháp thích
hợp. Đầu tiên, người dùng phải lướt qua các trang web để xem xét sự thay đổi. Thứ hai,
25

×