ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
Nguyễn Thị Thanh Na
GIẢI PHÁP PHÂN BIỆT TÊN NGƢỜI TRÊN WEB
DỰA TRÊN MÔ HÌNH THÔNG TIN NGƢỜI VÀ
THỬ NGHIỆM VÀO HỆ THỐNG TÌM KIẾM NGƢỜI
TIẾNG VIỆT
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
HÀ NỘI - 2011
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
Nguyễn Thị Thanh Na
GIẢI PHÁP PHÂN BIỆT TÊN NGƢỜI TRÊN WEB
DỰA TRÊN MÔ HÌNH THÔNG TIN NGƢỜI VÀ
THỬ NGHIỆM VÀO HỆ THỐNG TÌM KIẾM NGƢỜI
TIẾNG VIỆT
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
Cán bộ hƣớng dẫn: ThS. Nguyễn Cẩm Tú
HÀ NỘI - 2011
i
LỜI CẢM ƠN
Lời đầu 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 PGS.TS. Hà
Quang Thụy, ThS. Nguyễn Cẩm Tú và CN. Nguyễn Đạo Thái đã tận tình 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 cũng xin gửi lời cảm ơn tới các anh chị và các bạn sinh viên trong phòng thí
nghiệm KT-Sislab đã giúp tôi rất nhiều trong việc hỗ trợ kiến thức chuyên môn để hoàn
thành tốt khoá luận.
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 để tôi
học tập và nghiên cứu tại trường Đại học Công Nghệ. Xin cảm ơn sự hỗ trợ từ đề tài từ
QG.10.38 trong thời gian tôi thực hiện khóa luận.
Cuối cùng, tôi muốn được gửi lời cảm ơn 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 !
Sinh viên
Nguyễn Thị Thanh Na
ii
Tóm tắt
Tìm kiếm thông tin về thực thể người trên Web là một trong những hoạt động phổ
biến nhất của người dùng trên Internet. Tuy nhiên, thực thể người là một trong những kiểu
thực thể có độ nhập nhằng cao. Một tên có thể ứng với nhiều thực thể người khác nhau và
nhiều tên có thể ứng với cùng một thực thể người. Bài toán phân biệt tên người nhằm giải
quyết vấn đề nhập nhằng trong tên của thực thể người, từ đó nâng cao chất lượng tìm
kiếm thông tin người trên Web.
Khóa luận này tập trung giải quyết bài toán phân biệt tên người trên Web dựa trên
việc trích chọn đặc trưng theo mô hình thông tin Người. Các đặc trưng được trích chọn sử
dụng để phân cụm các văn bản chứa cùng một tên người nhưng chỉ đến các thực thể
người khác nhau.
Kết quả thực nghiệm ban đầu với tập tên người có độ nhập nhằng cao cho thấy mô
hình phân biệt tên người của hệ thống đạt kết quả độ đo F
0.5
= 84,8%% và F
0,2
= 83.1 %.
Điều này khẳng định mô hình là khả quan và có khả năng ứng dụng vào thực tế.
iii
Lời cam đoan
Tôi xin cam đoan mô hình phân biệt tên người dựa trên mô hình thông tin Người
và thực nghiệm được trình bày trong khóa luận này là do tôi thực hiện sự hướng dẫn của
ThS. Nguyễn Cẩm Tú và CN. Nguyễn Đạo Thái. Các số liệu và kết quả có được trong
luận văn là trung thực và chưa từng được công bố ở bất kỳ một công trình nào khác.
Tôi cũng nêu rõ nguồn gốc của những tham khảo từ các nghiên cứu liên quan trong
danh mục tài liệu tham khảo của khóa luận. Trong khóa luận, không có việc sao chép tài
liệu, công trình nghiên cứu của người khác mà không chỉ rõ về tài liệu tham khảo.
Sinh viên
Nguyễn Thị Thanh Na
iv
MỤC LỤC
LỜI CẢM ƠN i
Tóm tắt ii
Lời cam đoan iii
MỤC LỤC iv
Danh mục các bảng vii
Danh mục hình vẽ viii
Danh sách các từ viết tắt x
Mở đầu 1
Chương 1. Khái quát bài toán phân biệt tên ngƣời trên Web 3
1.1. Giới thiệu về vấn đề phân biệt tên người 3
1.1.1. Hệ thống tìm kiếm thực thể 3
1.1.2. Dãy hội nghị khoa học về vấn đề phân biệt tên người 14
1.2. Bài toán phân biệt tên người. 14
1.2.1. Phát biểu bài toán 14
1.2.2. Mối quan hệ của bài toán phân biệt người cùng tên với bài toán phân biệt nhập
nhằng ngữ nghĩa của từ và đồng tham chiếu 15
1.3. Một vài công trình nghiên cứu về phân biệt tên người tại ở Việt Nam 16
Tóm tắt chương 1 17
Chương 2.Một số giải pháp phân biệt tên ngƣời trên Web 18
2.1. Một số cách tiếp cận điển hình 18
2.1.1. Cách tiếp cận dựa trên thực thể định danh 18
2.1.2. Cách tiếp cận phân cụm dựa trên các đặc trưng được trích chọn 22
2.1.3. Cách tiếp cận dựa trên mô hình chủ đề. 24
2.2. Mô hình phân biệt tên người dựa trên mô hình thông tin Người 26
v
2.2.1. Mô hình thông tin Người 26
2.2.2. Phân biệt tên người dựa theo mô hình thông tin Người 27
2.3. Nhận xét 32
Tóm tắt chương 2 33
Chƣơng 3. Mô hình hệ thống phân biệt tên người trong tập văn bản và áp dụng trọng
hệ thống tìm kiếm thực thể người tiếng Việt 34
3.1. Đặc điểm miền dữ liệu các trang Web tin tức tiếng Việt 34
3.2. Cơ sở lý thuyết 35
3.2.1. Mô hình không gian vector 35
3.2.2. Độ tương đồng Cosin 37
3.2.3. Thuyết chắc chắn Stanford 37
3.2.4. Phân cụm phân cấp HAC (Hierachical agglomerative clustering) 38
3.3. Mô hình giải quyết bài toán 42
3.4. Áp dụng bài toán phân biệt tên người vào hệ thống tìm kiếm thực thể 49
Tóm tắt chương 3 50
Chương 4: Thực nghiệm và đánh giá 51
4.1. Môi trường và công cụ sử dụng thực nghiệm. 51
4.2. Quá trình thực nghiệm: 53
4.2.1. Xây dựng tập dữ liệu thực nghiệm 53
4.2.2. Trích chọn đặc trưng 55
4.2.3. Biểu diễn mô hình thông tin Người: 56
4.2.4. Phân cụm 56
4.4. Đánh giá 59
4.4.1. Phương pháp đánh giá. 59
4.4.2. Kết quả kiểm thử 60
vi
4.5. Nhận xét 60
Kết luận 62
PHỤ LỤC 64
TÀI LIỆU THAM KHẢO 65
vii
Danh mục các bảng
Bảng 1-1: 10 từ khóa được tìm kiếm nhiều nhất năm 2009 11
Bảng 1-2. 10 từ khóa được tìm kiếm nhiều nhất năm 2010 11
Bảng 3-1: Các đặc trưng được sử dụng trong khóa luận 44
Bảng 4-1: Cấu hình phần cứng 51
Bảng 4-2: Danh sách các phần mềm sử dụng: 51
Bảng 4-3: Bảng các gói của chương trình 52
Bảng 4-3: Bảng tập tên người thực nghiệm trong mô hình 54
Bảng 4-4: Kết quả phân cụm tự động của chương trình 57
Bảng 4-4: Bảng đánh giá kết quả phân cụm của hệ thống 60
Bảng 5-1: Nhãn của các loại đặc trưng người 64
viii
Danh mục hình vẽ
Hình 1: Cấu trúc chung của một máy tìm kiếm 5
Hình 2. Giao diện của máy tìm kiếm nơi nghỉ mát Cazoodle 7
Hình 3. Kết quả tìm kiêm Google cho từ khóa “lead honda” 7
Hình 4. Kiến trúc hệ thống tìm kiếm thực thể tiêu biểu dựa trên kỹ thuật trích xuất thông
tin 8
Hình 5. Hệ thống tìm kiếm căn hộ ở New York 10
Hình 6. Tổng hợp thông tin của người P từ 2 trang d
1
và d
2
13
Hình 7. Mô hình đoán nhận và giải quyết nhập nhằng thực thể tiếng Việt 16
Hình 8. Hệ thống phân biệt thực thể người sử dụng không gian vector 19
Hình 9. Trích từ tài liệu doc.36 20
Hình 10. Trích từ tài liệu doc.38 20
Hình 11. Chuỗi kết quả của đoạn trích trong tài liệu doc.36 21
Hình 12. Chuỗi kết quả của đoạn trích trong tài liệu doc.36 21
Hình 13. Các bước trong bài toán phân biệt tên người 27
Hình 14. Các bước trích chọn thuộc tính người. 29
Hình 15 : Đoạn tóm tắt của bài báo “Nữ cán bộ Agribank bị bắt vì nghi tham ô 6 tỷ
đồng.” 34
Hình 16: Tên người các tên người khác cùng xuất hiện với tên người “Trương Hồng
Nhung” 35
Hình 17. Biểu diễn văn bản trong khôn gian vector 36
Hình 18. Sơ đồ thuật toán phân cụm HAC 39
Hình 19: Phân cụm với độ đo single-link 41
Hình 20: Phân cụm với độ đo complete-link 41
Hình 21. Mô hình giải quyết bài toán phân biệt tên người dựa trên mô hình thông tin
Người 43
ix
Hình 22. Mô hình hệ thống tìm kiếm thực thể người 49
Hình 23. Chương trình thu thập dữ liệu. 54
Hình 24: Định dạng văn bản lưu các đặc trưng trích chọn được 55
Hình 25: Mô tả kết quả phân cụm 58
x
Danh sách các từ viết tắt
Từ hoặc cụm từ
Viết tắt
Word Sense Disambiguation
WSD
Person Name Disambiguation
PND
Cross-document Co-reference
CDC
Term Frequency
TF
Inverse Document Frequency
IDF
Term Frequency – Inverse Document Frequency
TF-IDF
Latent Dirichlet Allocation
LDA
Hierachical agglomerative clustering
HAC
World Wide Web
WWW
1
Mở đầu
Tên người là một trong những từ khóa được tìm kiếm nhiều nhất trên Web thông
qua máy tìm kiếm. Tuy nhiên, thực thể người là một trong những thực thể có độ nhập
nhằng cao nhất - một tên người có thể ứng với nhiều thực thể người khác nhau, nhiều tên
người cũng có thể là của cùng một thực thể người. Vì vậy, với một truy vấn tên người, kết
quả trả về từ máy tìm kiếm thường bao gồm những người khác nhau cùng tên. Để tìm
được thông tin quan tâm, người dùng phải đọc lần lượt nội dung các trang web trả về,
điều này gây mất thời gian và công sức của người dùng. Bài toán phân biệt tên người
nhằm giải quyết vấn đề trên bằng cách gom cụm kết quả trả về từ máy tìm kiếm sao cho
những trang Web thuộc cùng một cụm nói về một người và những trang Web thuộc các
cụm khác nhau nói về những người khác nhau. Bài toán này nhận được sự quan tâm rất
lớn từ các nhà nghiên cứu và các hội nghị lớn trên thế giới trong những năm gần đây như
Coling/ACL, Senseval, … Đặc biệt, dãy các hội nghị WePS-1,2,3
1
là hội nghị dành riêng
cho bài toán phân biệt tên người và tìm kiếm người trên Web.
Tại Việt Nam, bài toán phân biệt tên người vẫn đặt ra nhiều thách thức do tính
phức tạp của ngôn ngữ tiếp Việt và số lượng nghiên cứu về bài toán phân biệt tên người
vẫn còn hạn chế. Các nghiên cứu chủ yếu tiếp cận theo phương pháp tìm thể hiện tốt nhất
cho ngữ cảnh của người, tính độ tương đồng ngữ cảnh, từ đó phân cụm văn bản theo độ
tương đồng ngữ cảnh. Mặt khác, các phương pháp chỉ áp dụng trên các miền dữ liệu
tương đối đặc thù, không áp dụng được cho nhiều miền dữ liệu. Trên cơ sở hiểu và phân
tích các phương pháp mới giải quyết bài toán phân biệt tên người trên thế giới, khóa luận
đề nghị một mô hình giải quyết bài toán phân biệt tên người dựa trên mô hình thông tin
Người trên miền dữ liệu các trang tin điện tử tiếng Việt. Kết quả thực nghiệm cho thấy mô
hình là khả quan và có khả năng ứng dụng tốt vào thực tế.
Nội dung của khóa luận được bố cục gồm 4 chương:
Chƣơng 1. Giới thiệu khái quát về bài toán phân biệt tên người, các khái niệm và
vấn đề liên quan đến bài toán phân biệt tên người.
Chƣơng 2. Giới thiệu các phương pháp tiếp cận giải quyết bài toán phân biệt tên
người trên thế giới. Khóa luận cũng tập trung phân tích mô hình phân biệt tên người dựa
1
2
trên mô hình thông tin Người. Đây là cơ sở phương pháp luận quan trọng để khóa luận
đưa ra mô hình giải quyết bài toán phân biệt tên người trong tiếng Việt.
Chƣơng 3. Khóa luận giới thiệu các đặc trưng của miền dữ liệu các trang Web
thuộc lĩnh vực tin tức tiếng Việt, từ đó đưa ra mô hình giải quyết bài toán phân biệt tên
người trong tập văn bản và ứng dụng bài toán phân biệt tên người trong hệ thống tìm
kiếm thực thể tiếng Việt.
Chƣơng 4. Khóa luận trình bày quá trình thực nghiệm khâu phân cụm các trang
Web cho bài toán phân biệt tên người trên miền dữ liệu các trang Web tin tức, với dữ liệu
kiểm thử là danh sách tên người có độ nhập nhằng cao.
Phần kết luận và định hƣớng phát triển khóa luận: Tóm lược nội dung chính
đạt được của khóa luận đồng thời chỉ ra những điểm cần khắc phục và đưa ra những định
hướng nghiên cứu trong thời gian tới.
3
Chương 1. Khái quát bài toán phân biệt tên ngƣời trên Web
Con người luôn có mong muốn học hỏi và tiếp thu ngày càng nhiều tri thức. Họ có
thể tiếp thu tri thức từ sách báo, kinh nghiệm từ người đi trước, từ thực tiễn đời thường và
từ Internet. Trong các nguồn đó, thông tin từ Internet là nguồn tri thức khổng lồ đang
được quan tâm khai thác nhiều. Tìm kiếm thông tin người là một hoạt động phổ biến trên
WWW. Tuy nhiên, tên người rất mơ hồ, một tên người được sử dụng chung bởi nhiều
người khác nhau, nên việc tìm kiếm thông tin của một người trong số họ rất khó khăn.
Chương này tập trung giới thiệu khái quát về bài toán phân biệt tên người.
1.1. Giới thiệu về vấn đề phân biệt tên ngƣời
Vấn đề phân biệt tên người có vai trò quan trọng trong lĩnh vực khai thác dữ liệu
web. Số truy vấn tên người trong máy tìm kiếm trên Web chiếm tỉ lệ cao, tuy nhiên, kết
quả trả về cho tên người thường bị nhập nhằng (nhiều người khác nhau chia sẻ cùng tên).
Theo thống kê năm 2007 [8], 30% truy vấn trong máy tìm kiếm chứa một tên người, 4%
truy vấn Web là một tên người và tên người có độ nhập nhằng cao: Theo thống kê điều tra
dân số Mỹ, 90.000 tên khác nhau được chia sẻ cho hơn 100 triệu người. Trong hầu hết
trường hợp, kết quả trả về từ máy tìm kiếm là một hỗn hợp của các trang về những người
khác nhau cùng chia một tên. Vì vậy, vấn đề phân biệt nhập nhằng tên người trên Web
mang một ý nghĩa rất quan trọng đối với các hệ thống tìm kiếm thực thể người.
1.1.1. Hệ thống tìm kiếm thực thể
Vấn đề khai thác thông tin trên Web
Ngày nay, World Wide Web (WWW) đã trở thành một kho tài nguyên dữ liệu
khổng lồ về mọi lĩnh vực và đang ngày càng tăng trưởng với tốc độ cao. Kho tài nguyên
dữ liệu Web chứa nhiều thông tin quý giá phục vụ nhu cầu tìm kiếm thông tin của tất cả
mọi người trên thế giới. Với mục đích phục vụ nhu cầu khai thác thông tin của con người,
WWW hiện đang giữ một vai trò ngày càng quan trọng nhờ chứa những ưu điểm riêng
của nó.
Thông tin trên WWW rất phong phú. Nguồn thông tin trên Web luôn được cập
nhật từng ngày từng giờ bởi tất cả cá nhân, tổ chức trên thế giới, từ đó góp phần làm giàu
thêm kho tài nguyên khổng lồ WWW và giúp cho người dùng có nhiều cơ hội tìm kiếm,
tổng hợp các tri thức để tạo ra những giá trị mới.
4
Không chỉ mang lại nguồn thông tin phong phú, WWW còn là một kho tài nguyên
giúp người dùng có thể truy cập mọi lúc mọi nơi một cách thuận tiện.
Tuy nhiên, kho dữ liệu quá lớn cũng là nhược điểm của nguồn thông tin WWW.
Lượng thông tin nhiều với hình thức thể hiện thông tin phong phú, bằng cả văn bản, hình
ảnh và âm thanh nhưng số lượng thông tin hữu ích cho từng người dùng chiếm tỉ lệ nhỏ.
Điều này khó khăn cho người dùng trong việc xác định đâu là thông tin mình cần trong
một khối lượng khổng lồ thông tin.
Máy tìm kiếm là công cụ ra đời để đáp ứng nhu cầu trên, hay góp phần cải thiện
tốc độ khai thác thông tin của người dùng. Ta có thể hiểu máy tìm kiếm như sau:
Máy tìm kiếm là công cụ tìm kiếm cho phép tìm kiếm trang Web dựa theo các từ
khóa trong một tập rất lớn các tài liệu Web. Kết quả tìm kiếm là danh sách các trang Web
(tài liệu) có chứa từ khóa nói trên và được liệt kê theo thứ tự về độ quan trọng hay “hạng”
của chúng.
Máy tìm kiếm được coi là một hệ thống tìm kiếm thông tin điển hình. Hệ thống tìm
kiếm thường tập trung vào việc cải thiện hiệu quả thông tin được lấy ra bằng cách đánh
chỉ số dựa trên từ khóa và kỹ thuật cấu trúc lại câu lệnh truy vấn. Quá trình xử lý các văn
bản dựa trên từ khóa thực hiện việc trích các từ khóa trong văn bản, sử dụng một từ điển
được xây dựng trước, một tập các từ dừng và các quy tắc để chuyển các hình thái của từ
về dạng từ gốc. Sau khi các từ được lấy ra, các hệ thống tìm kiếm thường sử dụng phương
pháp TF-IDF (hoặc biến thể của nó) biểu diễn các trang Web. Độ tương đồng giữa một
câu truy vấn và một văn bản thường được tính bằng độ đo cosin góc giữa hai vector [1].
Có nhiều loại máy tìm kiếm, như máy tìm kiếm Google, Yahoo, MSN, AltaVista
Mỗi máy tìm kiếm có tổ chức riêng và cách thực thi riêng biệt nhằm mục cải thiện chất
lượng khai thác thông tin. Tuy nhiên, chúng thường có cấu trúc chung như hình 1.
5
Hình 1: Cấu trúc chung của một máy tìm kiếm [16]
Máy tìm kiếm bao gồm các thành phần chính sau:
- Thành phần crawling (Crawler): Thành phần này có chức năng thu thập các trang
Web bằng cách duyệt không gian Web, đi dọc theo các siêu liên kết trên các trang Web.
Sau đó, gửi lưu tập các trang web thu thập được vào Reposotory để lưu trữ.
- Thành phần chỉ mục (Indexer): Thực hiện việc lưu trữ nội dung các trang web
theo cấu trúc chỉ mục thuận và chỉ mục ngược.
- Thành phần phân tích truy vấn (Query engine): Thành phần có nhiệm vụ xử lý
truy vấn của người dùng. Nó thực hiện đọc truy vấn, phân tích và chuyển các truy vấn
dang định dạng thích hơp.
- Thành phần xếp hạng (Ranking): Thực hiện xếp hạng các trang Web theo độ
tương đồng giữa câu truy vấn và tài liệu Web trước khi hiển thị cho người dùng.
6
Với cách tổ chức và thực thi của mình, máy tìm kiếm chỉ đáp ứng phần nào nhu
cầu cải thiện khả năng khai thác thông tin do những tồn tại sau:
- Người dùng phải thay đổi câu truy vấn nhiều lần để xác định được câu lệnh truy
vấn phù hợp thông tin mà người dùng muốn tìm kiếm. Câu truy vấn sau thường phải dựa
vào kết quả trả về của hệ thống tìm kiếm khi người dùng nhập vào các các câu truy vấn
trước.
- Nhờ thành phần ranking, hệ thống tìm kiếm sẽ đưa về các trang web phù hợp
nhất với từ khóa mà người dùng nhập vào, tuy nhiên, các trang web trả về vẫn bao gồm cả
những thông tin người dùng quan tâm lẫn những thông tin người dùng không quan tâm, vì
vậy người dùng vẫn phải duyệt từng trang web để tìm thông tin mình đang tìm kiếm.
- Các hệ thống tìm kiếm vẫn chủ yếu dựa vào mức từ, các đặc trưng liên quan đến
ngữ nghĩa của ngôn ngữ còn ít. Vì vậy, kết quả trả về nhiều khi không đúng với mong
muốn của người dùng.
Hệ thống tìm kiếm thực thể
Hệ thống tìm kiếm thực thể ra đời với mục đích khắc phục những hạn chế trên đây
của hệ thống tìm kiếm thông thường. Trong hệ thống tìm kiếm thực thể, người dùng cũng
tiến hành tìm kiếm thông tin bằng cách nhập các từ khóa giống hệ thống tìm kiếm thông
thường. Nhưng điểm khác biệt giữa hai hệ thống này chính là kết quả đầu ra. Ở hệ thống
tìm kiếm thực thể, đối tượng trả về của hệ thống sẽ là các thực thể được trích chọn ra từ
nội dung của một hay nhiều trang Web liên quan, khác với đối tượng trả về của hệ thống
tìm kiếm thông thường là các trang Web chứa từ khóa, chính vì vậy người dùng không
cần duyệt qua các trang Web để tìm đến thông tin mình cần. Mặt khác, người dùng chỉ
cần nhập các thông tin mình yêu cầu về một thực thể, máy sẽ tự động đưa ra các thực thể
thỏa mãn thông tin người dùng yêu cầu, do đó người dùng không phải thay đổi câu truy
vấn nhiều lần như trong hệ thống thông thường. Hình 2 dưới đây mô tả giao diện của một
máy tìm kiếm thực thể Cazoodle ( cho dịch vụ tìm kiếm nơi
nghỉ mát.
7
Hình 2. Giao diện của máy tìm kiếm nơi nghỉ mát Cazoodle
Với đối tượng trả về khác nhau, mức độ chọn lọc thông tin phù hợp với nhu cầu
người dùng của các hệ thống sẽ khác nhau. Đối tượng trả về là các trang Web, mức độ
chọn lọc thông tin này là chưa cao.
Ví dụ, người dùng sử dụng máy tìm kiếm Google (máy tìm kiếm mạnh nhất cho
đến nay) tìm thông tin về giá xe máy Lead của Honda, người dùng sẽ nhập từ khóa “lead
honda”. Kết quả trả về như hình sau:
Hình 3. Kết quả tìm kiêm Google cho từ khóa “lead honda”
8
Với đối tượng trả về là các thực thể, hệ thống tìm kiếm thực thể cung cấp cho
người dùng một mức chọn lọc thông tin cao hơn và hệ thống sẽ được nhìn nhận dưới
dạng đồ thị các thực thể thay cho đồ thị Web trong máy tìm kiếm thông thường. Nhờ đặc
tính này, người dùng tìm kiếm thông tin mình quan tâm nhanh và dễ dàng hơn nhiều (xem
hình 5).
Tùy theo kỹ thuật sử dụng khác nhau, các hệ thống tìm kiếm thực thể được tổ chức
khác nhau. Sử dụng kỹ thuật trích xuất thông tin, hệ thống sẽ được tổ chức như
hình 4.
Hình 4. Kiến trúc hệ thống tìm kiếm thực thể tiêu biểu dựa trên kỹ thuật trích xuất thông
tin [17]
Mô hình hệ thống tìm kiếm thực thể dựa trên kỹ thuật trích xuất thông tin gồm hai
bộ phận chính là trích xuất thông tin về thực thể và tổng hợp thông tin về thực thể.
9
Thành phần trích xuất thông tin về thực thể làm nhiệm vụ trích xuất ra các thông
tin liên quan đến đến một thực thể xác đinh từ tất cả các trang Web chứa loại thực thể.
Việc này không đơn giản vì các dữ liệu trên trên Web thường là dữ liệu phi cấu trúc hoặc
bán cấu trúc.
Sau khi có thông tin về từng thực thể, thành phần tổng hợp thông tin về thực thể sẽ
tổng hợp lại các thông tin thu thập những lần khác nhau cho mỗi thực thể. Điều này là khó
khăn khi gặp các thực thể khác nhau nhưng dùng cùng tên và những tên khác nhau cùng
trỏ đến một thực thể, đặc biệt trong vấn đề tìm kiếm người.
Một số hệ thống tìm kiếm thực thể điển hình:
Một hệ thống tìm kiếm thực thể điển hình là hệ thống Cazoodle
2
do nhóm nghiên
cứu Kevin Chen-Chuan Chang, thuộc phòng thí nghiệm Cơ sở dữ liệu và Hệ thống thông
tin DAIS thuộc đại học Illinois, Mỹ. Hệ thống thực hiện các truy vấn thuộc các lĩnh vực
tìm kiếm nơi nghỉ mát (Vacation Rental), tìm kiếm căn hộ (Apartment Search) và giá cả
sản phẩm (Shopping Search). Dưới đây là kết quả tìm kiếm căn hộ có ở New York:
2
10
Hình 5. Hệ thống tìm kiếm căn hộ ở New York
Vấn đề phân biệt tên người trong hệ thống tìm kiếm thực thể
Như đã giời thiệu, truy vấn tìm kiếm tên người luôn chiếm một tỉ lệ cao trong cả
các máy tìm kiếm và trên cả Web (30% truy vấn trong máy tìm kiếm chứa một tên người,
4% truy vấn Web là một tên người). Trong danh sách 10 tên người được tìm kiếm nhiều
nhất năm 2009, từ khóa “Michael Jackson” – tên ca sĩ nhạc Pop nổi tiếng thế giới, đứng
đầu ở cả 3 trang tìm kiếm phổ biến và mạnh nhất Google, Yahoo và Bing. Danh sách 10
từ khóa được tìm kiếm nhiều nhất năm 2010 cho thấy: Google có đến 3 từ khóa là tên
người; Yahoo có 5 từ khóa là tên người; Bing có đến 7 từ khóa chứa tên người.
11
Bảng 1-1: 10 từ khóa được tìm kiếm nhiều nhất năm 2009[18]
STT
Google
Yahoo
Bing
1
Michael Jackson
Michael Jackson
Michael Jackson
2
Facebook
Twitter
Twilight
3
Tuenti
Swine Flu
WWE
4
Twitter
Stock Market
Megan Fox
5
Sanalika
Farrah Fawcett
Britney Spears
6
New Moon
Patrick Swayze
Naruto
7
Lady Gaga
Cash for Clunkers
American Idol
8
Windows 7
Jon and Kate Gosselin
Kim Kardashian
9
Dantri.com.vn
Billy Mays
NASCAR
10
Torpedo Gratis
Jaycee Dugard
Runescape
Bảng 1-2. 10 từ khóa được tìm kiếm nhiều nhất năm 2010[23][24][25]
STT
Google
Yahoo
Bing
1
Chatroulette
BP Oil Spill
Kim Kardashian
2
Ipad
World Cup
Sandra Bullock
3
justin bieber
Miley Cirus
Tiger Woods
4
nicki minaj
Kim Kardashian
Lady Gaga
5
Friv
Lady Gaga
Barack Obama
12
6
Myxer
iPhone
Hairstyles
7
katy perry
Megan Fox
Kate Gosselin
8
Twitter
Justin Biebe
Walmart
9
Gamezer
American Idol
Justin Bieber
10
Facebook
Britney Spears
Free
Các hệ thống tìm kiếm thực thể hiện tại chủ yếu thi hành bằng cách trích xuất các
đặc trưng thuộc tính của thực thể trên từng trang web. Đối với các bài toán tìm kiếm các
thực thể như nhà cửa, khu nghỉ mát … hệ thống đem lại kết quả khá khả quan. Nhưng
trong bài toán tìm kiếm người, nội dung của mỗi trang web thường chứa rất ít thông tin về
thuộc tính người, vì vậy, khi người dùng đưa quá nhiều từ khóa làm thông tin để tìm kiếm
người, hệ thống có thể không tìm thấy. Hơn nữa, tên người thường bị nhập nhằng, nên kết
quả trả về từ hệ thống phân biệt tên người có thể không chính xác. Nếu giải quyết được
tốt bài toán phân biệt tên người, ta có khả năng tổng hợp các thông tin khác nhau về cùng
một người trong những lần xuất hiện khác nhau, tạo ra một tập các đặc trưng thuộc tính
của người, từ đó cho ta một cái nhìn đầy đủ toàn diện về người đó. Hệ thống tìm kiếm
thay vì dựa vào các thuộc tính trích chọn trên từng trang web, sẽ dựa vào tập đặc trưng
thuộc tính này để đưa ra người mà người dùng quan tâm. Để hiểu hơn về quá trình tổng
hợp các đặc trưng thuộc tính của người, chúng ta xét ví dụ dưới đây.
Ví dụ:
Hai trang tài liệu d
1
và d
2
cùng mô tả thực thể người P. Trong tài liệu d
1
, người P
có 3 đặc trưng thuộc tính người là A, B. Trong tài liệu d
2
, người P có hai đặc trưng thuộc
tính là C, D và E. Việc tổng hợp đặc trưng được minh họa như hình 6.
13
d1 d2
Hình 6. Tổng hợp thông tin của người P từ 2 trang d
1
và d
2
Người dùng nhập vào các từ khóa A, B, D, E mong muốn tìm được người P.
Trường hợp hệ thống tìm kiếm thực thể người không kết hợp giải quyết bài toán
phân biệt tên người, khi người dùng nhập vào các từ khóa như trên, nếu không có bài viết
d
i
nào khác nói về người P và chứa 4 đặc trưng A, B, D, E. Hệ thống tìm kiếm thực thể
người sẽ không đưa ra kết quả là người P.
Trường hợp hệ thống tìm kiếm thực thể người kết hợp giải quyết bài toán phân biệt
tên người thì sau khi phân biệt nhập nhằng tên người. Hai bài báo d
1
và d
2
cùng nói về
người P sẽ được nhóm vào một cụm. Hệ thống tiến hành tổng hợp thông tin thuộc tính
của hai tài liệu này, nhận được thông tin thuộc tính cho người dùng P là S = {A, B, C, D,
E}. Khi người dùng nhập vào từ khóa trên, vì S chứa tất cả các từ khóa A, B, D và E, nên
hệ thống đưa ra kết quả chứa người P.
Từ những phân tích trên có thể thấy bài toán phân biệt tên người có vai trò quan
trọng để nâng cao độ chính xác cho hệ thống tìm kiếm thực thể người. Và bài toán phân
biệt tên người trong hệ thống tìm kiếm thực thể được quy về bài toán phân biệt tên người
trong tập văn bản.
P
C
D
E
P
B
A
A
B
C
D
E
P