Bài toán mở rộng tập truy vấn với mục đích xác định cụ thể mục đích, ngữ cảnh tìm kiếm của người sử dụng thông qua việc bổ sung thêm một số từ, khái niệm liên quan nhằm đưa ra những kết
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI
Hà Nội - 2011
Trang 2Mục lục
Chương 1 Bài toán Mở rộng truy vấn trong hệ thống tìm kiếm 9
1 1 Giới thiệu hệ thống tìm kiếm 9
1 2 Bài toán Mở rộng truy vấn 10
1.2 1 Định nghĩa bài toán Mở rộng truy vấn 10
1.2 2 Một số cần quan tâm khi thực hiện mở rộng truy vấn 12
1 3 Tóm tắt chương 1 13
Chương 2 Một số phương pháp mở rộng truy vấn 14
2.1 Phương pháp thủ công 14
2.2 Phương pháp tự động 15
2.2.1 Mối quan hệ giữa các khái niệm 15
2.2.2 Một số nghiên cứu về mở rộng truy vấn sử dụng tập từ điển 19
2.3 Phương pháp kết hợp 20
2.3.1 Tự động sinh ra tập từ đồng nghĩa 20
2.3.2 Phương pháp sử dụng query log 20
2.3.3 Mở rộng truy vấn dựa vào tập từ đồng nghĩa và hình thức biểu diễn từ 22
2.3.4 Mở rộng truy vấn sử dụng đồ thị khái niệm wikipedia 23
2.4 Tóm tắt chương 2 26
Chương 3 Mô hình đề xuất 27
3.1 Cơ sở thực tiễn 27
3.2 Mở rộng truy vấn 28
3.3 Mô hình hệ thống tìm kiếm thực thể áp dụng cho tiếng Việt 33
3.4 Tóm tắt chương 3 34
Chương 4 Thực nghiệm và đánh giá 35
4.1 Môi trường thực hiện 35
4.2 Quá trình thực nghiệm 36
4.2.1 Nội dung, kịch bản thực nghiệm 36
4.2.2 Thực nghiệm mở rộng truy vấn 36
4.2.3 Thực nghiệm và đánh giá kết quả tìm kiếm trả về thông qua việc mở rộng truy vấn 45 Tài liệu tham khảo 49
Trang 3Danh sách hình vẽ
Hình 1 Mô hình hệ thống tìm kiếm 9
Hình 2 Các câu truy vẫn hỗ trợ khi nhập câu truy vấn “Hồ Chí Minh” 12
Hình 3 Mô hình của phương pháp xây dựng khối (building block) 15
Hình 4 Mối liên hệ giữa từ “car” với các từ khác thông qua các mối quan hệ 16
Hình 5 Giới thiệu về YAGO 18
Hình 6 Đồ thị mô tả mối quan hệ cho câu truy vấn “jaguar” 22
Hình 7 Mô hình Mở rộng truy vấn sử dụng đồ thị khái niệm Wikipedia 24
Hình 8 Mô hình Mở rộng truy vấn 28
Hình 9 Mô hình chung của hệ thống tìm kiếm 33
Hình 10 Đồ thị mối quan hệ giữa các câu truy vấn chứa từ “máy tính” 42
Trang 4Danh sách bảng
Bảng 1 Mối quan hệ ngữ nghĩa trong WordNet 17
Bảng 2 Tập câu truy vấn và session 30
Bảng 3 Cấu hình phần cứng sử dụng trong thực nghiệm 35
Bảng 4 Một số phần mềm sử dụng 35
Bảng 5 Tập 10 câu truy vấn đầu tiên trong một phiên giao dịch của người dùng 37
Bảng 6 Một số câu truy vấn và link kết quả các phiên giao dịch của người dùng 39
Bảng 7 Thống kê số truy vấn, phiên giao dịch và tập luật liên kết dựa vào tập query log ngày 11/04/2009 40
Bảng 8 Tập 20 câu truy vấn đầu tiên chứa từ “máy tính” 40
Bảng 9 Một số luật liên kết giữa các câu truy vấn có chứa từ “máy tính” 41
Bảng 10 Thống kê số câu truy vấn chứa từ “máy tính” và tập luật liên kết 41
Bảng 11 Tập 20 khái niệm liên quan câu truy vấn “máy tính” trọng số cao nhất 43
Bảng 12 Một số các câu truy vấn mở rộng cho truy vấn “máy tính” 44
Bảng 13 Kết quả mở rộng truy vấn của một số câu truy vấn 45
Bảng 14 Số lượng trang web tìm được khi thực hiện tìm kiếm 46
Bảng 15 Số lượng trang web có nội dung khác nhau 46
Bảng 16 Số lượng trang web thực sự chứa cụm từ truy vấn 47
Trang 5Bảng viết tắt
Trang 6Mở đầu
Các bài toán cơ bản cho trong xử lý ngôn ngữ tự nhiên vẫn luôn nhận được sự quan tâm đặc biệt từ các nhà nghiên cứu Đây là nền tảng cho việc xây dựng và phát triển các bài toán ứng dụng khác Mở rộng truy vấn là một trong số đó, bài toán này được đã được nhiều nhà nghiên cứu quan tâm tới từ lâu [8, 12, 15, 13] và hiện nay vẫn được nghiên cứu và cải tiến Bài toán mở rộng tập truy vấn với mục đích xác định cụ thể mục đích, ngữ cảnh tìm kiếm của người sử dụng thông qua việc bổ sung thêm một
số từ, khái niệm liên quan nhằm đưa ra những kết quả chính xác đáp ứng nhu cầu của người dùng Đồng thời, mở rộng truy vấn được ứng dụng trong nhiều bài toán khác như: Hệ thống tìm kiếm [14, 21], Hệ thống hỏi đáp [14],…Vì vậy, bài toán Mở rộng truy vấn đã nhận được sự quan tâm từ các nhà nghiên cứu tại các hội nghị lớn trên thế giới trong những năm gần đây như: ACM1, WWW2, Text Retrieval Conference (TREC)3…
Trong thời gian gần đây, mặc dù đã có nhiều phương pháp mới đưa ra nhằm cải tiến việc mở rộng truy vấn nhưng đây vẫn là bài toán nhận được nhiều sự quan tâm từ các nhà nghiên cứu cho các ngôn ngữ nói chung và tiếng Việt nói riêng Tương tự như tiếng Anh, mở rộng truy vấn cũng là một bài toán được đề cập nhiều từ xưa tới nay nhằm cải tiến việc tìm kiếm để đưa ra kết quả chính xác trong các hệ thống như Hệ thống tìm kiếm, Hệ thống hỏi đáp, Việc đưa ra một phương pháp tốt nhất cho tiếng Việt hiện nay vẫn đang là một vấn đề còn gặp nhiều khó khăn do hiện tại tài nguyên ngôn ngữ học cũng như các kĩ thuật xử lý còn đang dần được hoàn thiện Vì thế, nhiều bài toán xử lý cho ngôn ngữ tiếng Việt còn gặp nhiều hạn chế
Mục tiêu của luận văn này là tìm ra phương pháp nhằm nâng cao chất lượng kết quả tìm kiếm của hệ thống tìm kiếm tiếng Việt Để thực hiện công việc trên, luận văn thực hiện khảo sát, nghiên cứu để đề xuất một phương pháp Mở rộng truy vấn tối ưu cho ngôn ngữ Tiếng Việt Để tiếp cận mục tiêu này, luận văn nghiên cứu và giới thiệu một số phương pháp Mở rộng truy vấn được nghiên cứu từ trước tới nay, chú trọng tới các phương pháp cập nhật Từ đó, luận văn đề xuất mô hình mở rộng truy vấn bằng phương pháp sử dụng lịch sử giao dịch của n gười dùng dựa trên nghiên cứu của Bruno và các cộng sự, 2005[4] Thêm vào đó, luận văn áp dụng mô hình đề xuất vào
Hệ thống tìm kiếm thực thể tiếng Việt Thông qua kết quả cung cấp cho người dùng
Trang 7khi sử dụng Hệ thống tìm kiếm, hệ thống cũng đánh giá được hiệu quả của Mô hình xử
lý cho bài toán Mở rộng truy vấn
Nội dung của luận văn được chia thành các chương như sau:
giới thiệu sơ lược về mô hình của hệ thống tìm kiếm Các bài toán liên quan để cải tiến kết quả của Hệ thống tìm kiếm Tiếp đó, trình bày định nghĩa về bài
toán Mở rộng truy vấn và một số vấn đề gặp phải
Chương 2: Một số phương pháp thực hiện mở rộng truy vấn giới thiệu một số
phương pháp mở rộng truy vấn tiêu biểu đã được đưa ra từ trước tới nay
kiếm tiếng Việt Chương này thực hiện phân tích, đề xuất một phương pháp để
giải quyết bài toán Mở rộng truy vấn cho tiếng Việt và trình bày việc áp dụng phương pháp đề xuất để xây dựng Hệ thống tìm kiếm tiếng Việt
Chương 4: Một số thực nghiệm và kết quả đạt được trình bày quá trình thực
nghiệm của luận văn cho bài toàn Mở rộng truy vấn và việc áp dụng mô hình trên vào hệ thống tìm kiếm tiếng Việt, từ đó đưa ra một số đánh giá, nhận xét các kết quả đạt được
Trang 8Chương 1 Bài toán Mở rộng truy vấn trong hệ thống tìm kiếm
Tìm kiếm thông tin là nhu cầu cần thiết trong cuộc sống, con người có được thông tin
từ rất nhiều nguồn tài liệu khác nhau như sách vở, tạp chí,… Hiện nay, việc tin học hóa vào cuộc sống ngày càng cao và thời đại thông tin bùng nổ thì Internet là một trong những nguồn tài liệu mà con người thường sử dụng nhất Internet là một kho dữ liệu đồ sộ, tuy nhiên để khai thác được nó là một thách thức lớn vì dữ liệu trên Internet quá đa dạng và không có cấu trúc Vì thế, để tìm được thông tin cần thiết và chính xác với mong muốn của người sử dụng là một bài toán khó Chương này sẽ giới thiệu tổng quát về hệ thống tìm kiếm và trình bày bài toán Mở rộng truy vấn để giải quyết vấn đề trên
1 1 Giới thiệu hệ thống tìm kiếm
Thông tin trên World Wide Web rất đa dạng và là kho dữ liệu lớn Tuy nhiên,
để khai thác nguồn tri thức này một cách hiệu quả là một vấn đề lớn Đặc biệt khi lượng thông tin ngày càng nhiều và luôn thay đổi Ngoài ra, hình thức thông tin cũng ngày càng đa dạng, từ văn bản tới âm thanh, hình ảnh,… Vì vậy sẽ gây khó khăn cho người dùng trong việc tìm kiếm thông tin Do đó, cần phải tổ chức, quản lý thông tin
từ www cho phù hợp nhằm thuận lợi cho việc khai thác Máy tìm kiếm ra đời là một công cụ hữu ích cho việc khai thác thông tin Kiến trúc chung của một hệ thống tìm kiếm được mô tả theo như hình 1 bên dưới
Hình 1 Mô hình hệ thống tìm kiếm
Trang 9Các module của hệ thống tìm kiếm bao gồm:
- Thu thập dữ liệu (Crawler): Thành phần này chịu trách nhiệm đi dọc theo các
siêu liên kết trên WWW để thu thập các trang web để đảm bảo tính đầy đủ, và tươi mới của thông tin
- Đánh chỉ mục (Indexer): Thành phần này thực hiện việc lưu trữ nội dung các
trang Web theo cấu trúc chỉ mục ngược đảm bảo việc truy suất nhanh thông tin
- Xử lý truy vấn (Query Engine): Thành phần này thực hiện xử lý với các truy
vấn của người dùng rồi chuyển về dạng phù hợp thực hiện cho việc tìm kiếm
- Xếp hạng (Ranking): Thành phần này thực hiện việc xếp hạng lại kết quả các
trang theo độ phù hợp với câu truy vấn trước đi khi trình bày tới người dùng Như đã đánh giá, để đưa ra được kết quả chính xác theo mong muốn của người
sử dụng thì hệ thống tìm kiếm phải ngày càng được hoàn thiện Để tăng độ chính xác
và cải thiện hệ thống, có rất nhiều bài toán con được đặt ra Dựa vào mô hình chung của hệ thống tìm kiếm, ta có thể thấy một số bài toán được đề cập đến như: Xử lý truy vấn ban đầu, việc thu thập dữ liệu, bài toán đánh chỉ mục dữ liệu hay bài toán xếp hạng,… Đây là những bài toán đã nhận được nhiều nhà nghiên cứu đưa ra giải pháp nhằm cải thiện kết quả [5][6]
Đối với luận văn này, chúng tôi đánh giá muốn một hệ thống tìm kiếm có thể đưa ra kết quả chính xác cho người dùng thì hệ thống đó phải hiểu được người dùng mong muốn tìm kiếm điều gì? Tức là phải hiểu được câu truy vấn người dùng nhập vào hay các thông tin về ngữ cảnh, mục đích tìm kiếm phải xác định được Với suy nghĩ trên, luận văn này thực hiện tập trung vào bài toán xử lý truy vấn ban đầu, một trong những phương pháp được đề cập là thực hiện Mở rộng truy vấn
1 2 Bài toán Mở rộng truy vấn
1.2 1 Định nghĩa bài toán Mở rộng truy vấn
Khi sử dụng Hệ thống tìm kiếm, người dùng sẽ nhập vào câu truy vấn để trả về một tập tài liệu có nội dung liên quan Tuy nhiên, có rất nhiều kết quả được trả về với những nội dung khác nhau, cụ thể như sau:
- Khi nhập vào hệ thống một câu truy vấn, hệ thống sẽ trả về nhiều khái niệm đồng nghĩa
Ví dụ: nhập từ khóa “cafe”, kết quả trả về có thể có những tài liệu có thông tin
liên quan tới từ khóa “café” Tuy nhiên, cũng có những tài liệu có nội dung liên quan tới khái niệm “restaurant” Vì vậy, dựa vào tập tài liệu trả về bao gồm
Trang 10thông tin của cả 2 khái niệm trên, người dùng có thể tìm được thông tin đúng với yêu cầu
- Trường hợp khác, hệ thống cũng có thể trả về những tập tài liệu chứa câu truy vấn nhưng có thông tin khác nhau
Ví dụ: Nhập từ “apple”, hệ thống có thể trả về các tập tài liệu chứa từ khóa và
các từ khóa liên quan như “company” và “fruit”
Từ “apple”, có nghĩa là quả táo Có thể liên tưởng tới việc người dùng muốn tìm thông tin liên quan tới một loại trái cây Tuy nhiên, “apple” cũng là thương hiệu của một công ty sản xuất máy tính nổi tiếng Vì vậy, để tìm được đúng tài liệu mong muốn, người dùng phải thực hiện tìm kiếm trong tập tài liệu trả về Điều này gây bất tiện cho người sử dụng
Nhận xét: Khi người dùng nhập vào các từ khóa không “tốt”, tức các từ khóa
đa nghĩa, không có ý nghĩa hoặc từ khóa thiếu thông tin về miền tri thức tìm kiếm Thông qua máy tìm kiếm, kết quả trả về sẽ bao gồm nhiều thông tin và người dùng sẽ mất thêm thời gian cho việc tìm kiếm để có được thông tin mà mình mong muốn Để giải quyết vấn đề trên, bài toán “Mở rộng truy vấn” được đặt ra nhằm bổ sung thêm thông tin và xác định ngữ cảnh giúp hệ thống tìm kiếm đưa ra kết quả chính xác nhất
Định nghĩa: Mở rộng truy vấn là quá trình bổ sung một số từ vào truy vấn của
người dùng nhằm tạo ra các truy vấn mới tương đồng ngữ nghĩa, để từ đó giúp hệ
thống có thêm thông tin theo ngữ cảnh nhằm cải tiến các kết quả truy vấn [19]
Ví dụ: Câu truy vấn của người dùng: “car”
Sau khi mở rộng truy vấn, câu truy vấn mở rộng sẽ bao gồm: car, cars, automobile,
auto,
Theo Efthimiadis [7] đã nhận xét phần lớn các lợi ích thu được trong việc tìm kiếm thông tin có độ truy hồi cao phụ thuộc vào việc so trùng các từ khóa Đối với việc mở rộng truy vấn, hệ thống xác định ngữ nghĩa truy vấn được chính xác hơn, điều
đó cho phép kết quả truy vấn tốt hơn Thông qua kết quả truy vấn mở rộng, người dùng có thể học tập cách phát biểu truy vấn rõ ràng và chính xác hơn để thu được các kết quả hữu ích
Trang 111.2 2 Một số cần quan tâm khi thực hiện mở rộng truy vấn
Năm 2010, qua quá trình nghiên cứu Sean [19] đã đưa ra hai vấn đề cần quan tâm tới
khi thực hiện bài toán mở rộng truy vấn là:
Nguồn dữ liệu
Các khái niệm như thế nào được sử dụng cho việc mở rộng truy vấn? Tức là ta
quan tâm tới nguồn thông tin được sử dụng cho việc mở rộng truy vấn để đảm bảo bao
trùm được toàn bộ được tất cả các ý nghĩa của câu truy vấn
Hiện nay, nhiều máy tìm kiếm cũng đã hỗ trợ người dùng trong việc bổ sung
thêm thông tin vào câu truy vấn.Ví dụ: Như máy tìm kiếm Google hỗ trợ cho câu truy
vấn “Hồ Chí Minh” như sau:
Hình 2 Các câu truy vẫn hỗ trợ khi nhập câu truy vấn “Hồ Chí Minh”
Dựa vào những gợi ý của Google thì những câu truy vấn trên chỉ là bổ sung
thêm các thông tin để nói đến một người, có thể là Bác Hồ hay Nguyễn Ái Quốc,
Nguyễn Tất Thành Tuy nhiên, khi nhập vào câu truy vấn “Hồ Chí Minh”, người dùng
cũng có thể mong muốn tìm kiếm những thông tin liên quan tới một địa danh như
“Thành phố Hồ Chí Minh”, hay những thông tin khác như “Giải thưởng Hồ Chí
Minh”, “tư tưởng Hồ Chí Minh”,…
Ta có thể nhận thấy, những thông tin gợi ý mở rộng trên của máy tìm kiếm Google chưa bao hàm hết được những thông tin có thể được mở rộng của câu truy vấn
ban đầu Vì vậy, ta cần quan tâm tới nguồn dữ liệu phục vụ cho việc mở rộng truy vấn
phải đảm bảo có đầy đủ thông tin về câu truy vấn
Trang 12 Độ đo được sử dụng cho việc đánh trọng số các khái niệm
Để có thể đưa ra những câu truy vấn mở rộng nhằm làm rõ ý nghĩa cũng như ngữ cảnh cho câu truy vấn thì cần phải có một cách thức đánh giá thứ tự ưu tiên cho các khái niệm có liên quan, hay cần phải có một phương thức hay độ đo để đánh trọng
số cho các khái niệm
1 3 Tóm tắt chương 1
Trong chương này, luận văn giới thiệu khái quát về kiến trúc chung của hệ thống tìm kiếm, một số bài toán được đặt ra nhằm cải thiện độ chính xác cho hệ thống Đồng thời, đề cập tới bài toán Mở rộng truy vấn – một phương pháp xử lý truy vấn đầu vào cho hệ thống tìm kiếm Trong chương tiếp theo, luận văn trình bày một số phương pháp Mở rộng truy vấn đã được nghiên cứu và công bố
Trang 13Chương 2 Một số phương pháp mở rộng truy vấn
Mở rộng truy vấn được nhiều nhà khoa học trên thế giới quan tâm vào có nhiều công trình nghiên cứu về bài toán này [13, 15, 18] Đã có rất nhiều nhóm giải pháp và hướng tiếp cận khác nhau, mỗi phương pháp có những ưu nhược điểm riêng Chương này thực hiện trình bày các phương pháp đã được nghiên cứu và áp dụng vào Hệ thống tìm kiếm, Hệ thống hỏi đáp, mỗi phương pháp trình bày một hướng xử lý cụ thể
Bài toán mở rộng truy vấn được đặt ra trong việc xây dựng truy vấn ban đầu cho việc tìm kiếm trực tuyến Theo Efthimiadis [8], các phương pháp chính được sử dụng để mở rộng truy vấn như sau:
- Phương pháp thủ công
- Phương pháp tự động
- Phương pháp kết hợp
2.1 Phương pháp thủ công
Đây là mở rộng truy vấn chủ yếu kết hợp việc tìm kiếm Boolean Có rất nhiều
mô hình tìm kiếm trực tuyến đã được phát triển dựa trên mô hình Boolean và các phương pháp tương tác giữa người dùng và hệ thống truy hồi Có nhiều phương pháp được công bố, như: xây dựng khối (building block), tìm kiếm đơn giản (brief search), successive fraction,…
Phương pháp xây dựng khối (building block):
Được MARKEY và COCHRANE đưa ra năm 1981 [15], phương pháp này được người dùng sử dụng thường xuyên
Phương pháp này gồm các bước chính sau:
- Bước 1: Dựa vào câu truy vấn ban đầu, người tìm kiếm (người dùng hệ thống)
sẽ thực hiện phân tích chủ đề của câu truy vấn
- Bước 2: Dựa vào chủ đề của câu truy vấn được xác định, tiếp tục phân tích và
đưa ra một tập các khái niệm có liên quan
o Việc lựa chọn các khái niệm liên quan dựa vào mối quan hệ từ đồng nghĩa (synonyms) và từ gần nghĩa (quasi-synonyms)
Trang 14Ví dụ: Có một khái niệm t Sau khi người dùng phân tích khái niệm trên sẽ đưa ra
3 chủ đề có liên quan tới khái niệm t là A, B, C Từ các chủ đề lựa chọn các khái niệm có liên quan tới câu truy vấn, thực hiện lựa chọn các khái niệm đồng nghĩa hoặc gần nghĩa
…
Term (A1, , An) OR-ed Term (B1, , An) OR -ed Term (C1, , Cn) OR-ed
2.2.1 Mối quan hệ giữa các khái niệm
Mối quan hệ giữa các khái niệm (khái niệm ở đây có thể là một từ hoặc một cụm danh từ) được biểu diễn dưới dạng cấu trúc phân cấp Dựa vào những đặc trưng và đặc tính ngữ nghĩa, ta có thể phân thành nhiều loại mối quan hệ khác nhau
Theo Girju, một số mối quan hệ ngữ nghĩa quan trọng là thường dùng để thể hiện mối quan hệ giữa các khái niệm như: quan hệ đồng nghĩa, trái nghĩa, quan hệ một phần [11] Ngoài ra, các khái niệm và mối quan hệ giữa chúng cũng được thể hiện thông qua các tập corpus, từ điển ngôn ngữ học,….Vì thế, cũng có rất nhiều mối quan
hệ khác nhau để biểu diễn chúng
Trang 15 Giới thiệu về WordNet
WordNet4 là một từ điển trực tuyến trong Tiếng Anh, được phát triển bởi các nhà từ điển học trường đại học Princeton WordNet bao gồm khoảng 100.000 khái niệm bao gồm danh từ, động từ, tính từ, phó từ liên kết với nhau thông qua 17 mối quan hệ (được mô tả trong bảng 1) [11] Thông thường, người ta thường hay sử dụng WordNet cho việc tìm kiếm các mối quan hệ ngữ nghĩa Đồng thời, dựa vào các mối quan hệ này, một từ trong WordNet có thể tìm được các mối liên hệ với các khái niệm khác
Ví dụ: Từ “car” trong WordNet có thể tìm được mối liên hệ với các từ như:
Vehicle, Owner, Wheels, high,… thông qua các mối quan hệ như: is-a, has part, hasOwner, hasSpeed,… (như hình 4)
Hình 4 Mối liên hệ giữa từ “car” với các từ khác thông qua các mối quan hệ
4
http://wordnet.princeton.edu/
Trang 16Bảng 1 Mối quan hệ ngữ nghĩa trong WordNet
Hypernymy
(is - a)
Danh từ - Danh từ Động từ - Động từ
Cat is-a feline Manufacture is-a make
Hyponymy
(reverse is-a)
Danh từ - Danh từ Động từ - Động từ
Feline reverse is-a cat Manufacture reverse is-a make
Is-part-of Danh từ - Danh từ Leg is-part-of table
Has-part Danh từ - Danh từ Table has-part leg
Is-member-of Danh từ - Danh từ UK is-member-of NATO
Has-member Danh từ - Danh từ NATO has-member UK
Is-suff-of Danh từ - Danh từ Carbon is-stuff-of coal
Has-stuff Danh từ - Danh từ Coal has-stuff carbon
Cause-to Động từ - Động từ To develop cause-to to grow Entail Động từ - Động từ To snore entail to sleep
Atribute Tính từ - Danh từ Hot attribute temperature
Synonymy
(synset)
Danh từ - Danh từ Động từ - Động từ Tính từ - Tính từ Phó từ - Phó từ
Car synonym automobile
To notice synonym to observe Happy synonym content Mainly synonym primarily
Antonymy Danh từ - Danh từ
Động từ - Động từ Tính từ - Tính từ Phó từ - Phó từ
Happines antonymy unhappiness
To inhale antonymy to exhale Sincere antonymy insincere Always antonymy never
Similarity Tính từ - Tính từ Abridge similarity shorten
See-also Động từ - Động từ
Tính từ - Tính từ
Touch see-also touch down Inadequate see-also insatisfactory
Trang 17 Giới thiệu về ontology YAGO
Năm 2007, Fabian nghiên cứu và giới thiệu ontology YAGO[9] YAGO được xây dựng tự động từ sự kết hợp giữa Wikipedia và từ điển Wordnet Nó bao gồm các thực thể và các mối quan hệ giữa chứng Hiện tại, YAGO có khoảng 1,7 triệu thực thể
và 15 triệu sự kiện Chúng bao gồm các mối quan hệ phân cấp và không phân cấp Thông qua kết quả thực nghiệm, Fabian đánh giá độ chính xác của ontology YAGO là 95%
Hình 5 Giới thiệu về YAGO
Trang 182.2.2 Một số nghiên cứu về mở rộng truy vấn sử dụng tập từ điển
Năm 1993, Voorhess đã khai thác các ngữ nghĩa chứa trong Wordnet nhằm cải tiến hiệu quả của truy vấn bằng chỉ mục với các ngữ nghĩa của từ thay cho các từ gốc [8] Kết quả cho thấy hiệu quả của những vector tạo ra bởi kĩ thuật khử nhập nhằng có phần xấu hơn các vector gốc Qua thực nghiệm, các tác giả nhận thấy những phát biểu truy vấn ngắn có thể gặp khó khăn trong bước khử nhặp nhằng khi tìm kiếm thông tin,
vì quan hệ phân cấp is-a không đủ mạnh cho việc chọn các nghĩa chính xác của từ Từ
đó, trong vấn đề về giải pháp mở rộng truy vấn sử dụng tự động các synsset được tạo hoặc vấn đề giải quyết các ngữ nghĩa không chính xác, việc so trùng chính xác các thiếu sót có hiệu suất truy hồi thông tin thấp hơn so với các giải pháp so trùng không chính xác
Năm 1994, Voorhees, đã sử dụng WordNet để tiến hành thực nghiệm trên các tập TREC trong miền chuyên biệt Các kết quả cho thấy việc mở rộng truy vấn có thể cải tiến những vấn đề từ vựng không trùng khớp, đặc biệt trong trường hợp các từ được mở rộng có liên quan về từ vựng với các từ trong truy vấn Ngược lại, việc mở rộng truy vấn cho các truy vấn dài chỉ cải thiện rất nhỏ tính hiệu quả của truy vấn thông tin, vì bản thân truy vấn nguyên thủy đã mô tả đầy đủ yêu cầu thông tin
Năm 1998, theo phân tích của nhóm Mandala [17] WordNet có nhược điểm là các danh từ riêng không đầy đủ và không có khả năng để hình thức hóa các quan hệ giữa các từ thuộc các phần khác nhau của từ loại Ngoài ra, quan hệ bộ phận (meronymy) bị hạn chế trong sự diễn dịch của nó Để giải quyết vấn đề này, năm 2006 Grootjen và Van De Weider [10] dùng giải pháp kết hợp bao gồm một từ điển chuyên
đề toàn cục và từ điển chuyên đề cục bộ được tạo tự động Điều này đã bổ sung những khiếm khuyết về từ vựng trong quá trình khai thác WordNet
Năm 2005, nhóm Nilsson [12] đã sử dụng một ontology miền đặc trưng dựa trên hệ thống SuiS (Stockholm University Information System) để thực hiện mở rộng truy vấn SuiS chỉ cho phép các kiểu câu hỏi gồm Who, What, When, Where và chỉ có các từ đồng nghĩa và trái nghĩa được sử dụng để tăng độ chính xác Thực nghiệm cho thấy sự cải tiến mang lại kết quả tốt Tuy nhiên, phương pháp này giới hạn đối với câu hỏi WHO, chưa thực hiện được với các truy vấn tự do
Năm 2011, tận dụng các mối quan hệ cũng như các sự kiện đã được định nghĩa trong ontology YAGO được mô tả ở trên, nhóm tác giả Abdullah và Rehab [1] đã sử dung YAGO để thực hiện mở rộng truy vấn Ngoài ra, nhóm tác giả đã sử dụng kết quả của việc mở rộng truy vấn vào Hệ thống hỏi đáp QASYO
Trang 192.3 Phương pháp kết hợp
Khác với các phương pháp đã trình bày ở trên, việc mở rộng truy vấn sử dụng phương pháp này được thực hiện kết hợp giữa hệ thống và người sử dụng Hệ thống sẽ thực hiện liệt kê và xếp hạng tập các từ có liên quan và người sử dụng phải quyết định lựa chọn các khái niệm theo quan điểm tìm kiếm để tự thêm vào câu truy vấn Vì vậy, người dùng là người quyết định cuối cùng việc mở rộng của một từ Nó phản ảnh tầm quan trọng tương đối và tính hữu dụng của các khái niệm dựa vào quan điểm của người sử dụng, do đó tăng sự hài lòng của người sử dụng
2.3.1 Tự động sinh ra tập từ đồng nghĩa
Phương pháp này được thực hiện sử dụng các từ đồng nghĩa và có liên quan tới khái niệm ban đầu nhằm cải thiện độ chính xác và độ hồi tưởng của việc mở rộng truy vấn
Ví dụ 1: Từ khóa “feline” (có nghĩa là: như mèo) Sau khi sử dụng các từ đồng nghĩa
hoặc các từ liên quan, ta có từ khóa mở rộng là “feline cat”
Ví dụ 2: Các đối tượng liên quan tới việc: grow (trồng), eaten (ăn), digested (tiêu hóa)
thì liên quan tới khái niệm “food” (thức ăn)
Theo Pushpak [26], phương pháp trên được thực hiện qua các bước thực hiện như sau:
- Bước 1: Người dùng tạo ra câu truy vấn ban đầu tập tài liệu ban đầu trả về
- Bước 2: Người dùng lựa chọn một tập các tài liệu liên quan tới kết quả mong
muốn
- Bước 3: Hệ thống sẽ đánh trọng số cho các từ có trong tập tài liệu Từ đó, lấy ra
tập từ vựng có trọng số cao có liên quan tới câu truy vấn, tập từ này sẽ phục vụ cho việc mở rộng câu truy vấn ban đầu
2.3.2 Phương pháp sử dụng query log
Năm 2005, Bruno và Paulo đưa ra một phương pháp thực hiện mở rộng truy vấn dựa trên các khái niệm [4] Phương pháp thực hiện gồm 3 bước:
- Bước 1: Xác định các mối quan hệ giữa các câu truy vấn dựa vào query log của
người dùng
Để tìm được các mối quan hệ giữa các truy vấn có trong tập log, ông cùng các cộng sự đưa ra phương pháp dựa vào tập luật kết hợp, với phương pháp này tác giả đề cập tới 6 luật kết hợp
Trang 20- Bước 2: Xây dựng đồ thị thể hiện mối quan hệ các khái niệm
Sử dụng tập querylog và tập các luật kết hợp đã được tìm thấy từ bước 1, chúng
ta có thể tìm thấy các câu truy vấn đã được thực hiện trước đó có liên quan tới câu truy vấn hiện tại của người dùng Cụ thể là: Chúng ta sẽ thực hiện tìm kiếm một câu truy vấn có trong log mà có ý nghĩa tương đồng với câu truy vấn hiện tại, hay nó bao gồm các khái niệm có trong câu truy vấn hiện tại
Chúng ta có câu truy vấn Qa, sau đó sẽ tìm kiếm các câu truy vấn khác có liên quan tới Qa thông qua luật kết hợp mà chúng ta đã xác định Nếu như Qc Qb và
Qb Qa thì Qc cũng là một ứng cử viên được sử dụng để mở rộng cho Qa
Thông qua các mối quan hệ chúng ta sẽ xây dựng được một đồ thị thể hiện các mối quan hệ cho câu truy vấn Qa Gọi Ra là một tập các truy vấn trong log có liên quan tới Qa.:
• Với mỗi Qi và Qj thuộc Ra , ta tìm được luật Qi Qj
• Xây dựng được đồ thị quan hệ Ga cho câu truy vấn Qa Trong đó:
Trang 21– Qi, Qj là các đỉnh kề trong đồ thị Ga
– Mối quan hệ Qi Qj là cạnh của đồ thị trong Ga
Hình 6 Đồ thị mô tả mối quan hệ cho câu truy vấn “jaguar”
- Bước 3: Dựa vào đồ thị, chỉ ra các khái niệm có liên quan để mở rộng câu truy
vấn người dùng
Dựa vào hình 6 thì ta có thể thấy các khái niệm có liên quan tới như sau:
Concept1 = {renautl, sauber, ferrari}
Concept2 = {atari, cars}
Concept3 = {lion, tiger}
Việc mở rộng truy vấn dựa vào các khái niệm
Sau khi tìm kiếm và liệt kê ra được một tập các khái niệm có liên quan tới câu truy vấn của người dùng, chúng ta cần chỉ ra khái niệm nào là tốt nhất để thỏa mãn thông tin mà người dùng cần Khi người dùng lựa chọn một khái niệm có liên quan tới câu truy vấn, chúng ta sẽ thêm những khái niệm này vào câu truy vấn ban đầu của người dùng để thực hiện mở rộng truy vấn
Để phân loại các khái niệm được sử dụng cho việc mở rộng, người ta phân thành 4 loại như sau: Từ đồng nghĩa, Từ cụ thể, Từ khái quát, Từ kết hợp
2.3.3 Mở rộng truy vấn dựa vào tập từ đồng nghĩa và hình thức biểu
diễn từ
Năm 2007, để cải tiến kết quả của hệ thống hỏi đáp RAPOSA, Sarmento đưa ra một phương pháp mở rộng truy vấn dựa vào tập từ đồng nghĩa [16] Hệ thống RAPOSA bao gồm 6 module
- Phân tích cú pháp câu hỏi (Question Parser)
Trang 22- Tìm kiếm các đoạn chứa từ khóa (Snippet Searcher)
- Trích xuất câu trả lời (Answer Extractor)
- Kết hợp các câu trả lời (Answer Fusion)
- Lựa chọn câu trả lời (Answer Selector)
Đối với module Xử lý truy vấn (Query Generator), Sarmento thực hiện bằng
phương pháp mở rộng câu hỏi nhờ tập từ đồng nghĩa, cách thức thực hiện như sau:
- Bước 1: Dựa vào cấu trúc ngữ pháp, xác định được cách biểu diễn của từ
đưa từ về hình thức cơ bản của từ
- Bước 2: Sử dụng từ điển đồng nghĩa Lựa chọn ra n từ liên quan đầu tiên
- Bước 3: Xác định các hình thức biểu diễn khác của tập từ đó Tập hợp tất cả
các từ đồng nghĩa được biểu diễn dưới dạng mọi hình thức là tập truy vấn mở rộng cho câu truy vấn ban đầu
Ví dụ: Câu hỏi: “Quantas vezes ganhou Portugal a Taca Davis"
- Động từ trong câu: “ganhou”, đưa về dạng cơ bản của từ là: “ganhar”
- Thực hiện lựa chọn 5 từ đồng nghĩa nhất với từ “ganhar” là: “poupar”,
“vencer”, “conquistar”, “perder”, “ter” (“angariar”, “dar”, “disputar”)
- Lựa chọn những hình thức biểu diễn khác của các từ được mở rộng, như:
“ganh*”, “poup*”, “venc*”, “conquist*”, “perd*”, “ter”
- Sau đó sẽ thực hiện lấy tập từ mở rộng này để tìm kiếm tiếp
2.3.4 Mở rộng truy vấn sử dụng đồ thị khái niệm wikipedia
Đồ thị khái niệm là một trong những phương pháp được sử dụng trong trí tuệ nhân tạo nhằm đại diện cho kiến thức tiềm ẩn trong các văn bản Dựa vào đồ thị khái niệm, ta có thể biết được mối quan hệ giữa các khái niệm Năm 2008, Hadi và Abolfazl dựa trên tập dữ liệu wikipedia đã xây dựng đồ thị khái niệm [13] Mô hình của phương pháp theo như hình 7 bên dưới:
Trang 23Hình 7 Mô hình Mở rộng truy vấn sử dụng đồ thị khái niệm Wikipedia
- Bước 3: Phân cụm các khái niệm
Dựa vào các vector đặc trưng cho từng cụm tài liệu, lựa chọn k khái niệm có trọng số cao nhất Vì vậy, tương ứng với mỗi cụm dữ liệu sẽ có một cụm khái niệm
- Bước 4: Thể hiện mối quan hệ giữa các khái niệm bằng đồ thị
Trang 24Dựa vào vector đặc trưng cho từng cụm tài liệu và các cụm khái niệm, thực hiện xây dựng đồ thị khái niệm thể hiện các khái niệm có liên quan tới câu truy vấn ban đầu Trong đó:
o Tâm là câu truy vấn ban đầu
o Các đỉnh là các khái niệm có liên quan tương ứng có trong cụm
o Cạnh của đồ thị thể hiện mối quan hệ giữa câu truy vấn và các khái niệm liên quan thông qua trọng số tương ứng
- Bước 5: Lựa chọn câu truy vấn mới
Thông qua các cụm khái niệm, hệ thống sẽ liệt kê ra các khái niệm liên quan
có trọng số tương ứng, từ đó bổ sung vào câu truy vấn ban đầu để xây dựng câu truy vấn mở rộng Tập truy vấn mở rộng này sẽ được làm giàu cho tập query log ban đầu
Ngoài các phương pháp trên, một số phương pháp khác cũng đã được nhiều nhà nghiên cứu giới thiệu và áp dụng vào một số hệ thống, như:
- Năm 1996, Aland [2] đề xuất phương pháp mở rộng truy vấn sử dụng các
độ đo UMLS
- Năm 2007, Anand xây dựng hệ thống tìm kiếm Meta-Search, trong đó việc
xử lý câu truy vấn được sử dụng theo phương pháp sử dụng việc phân tích chủ đề ẩn [3]
- Năm 2001, Weining Qianvà cộng sự cũng đã thực hiện mở rộng truy vấn dựa vào cấu trúc, phương pháp này đã được áp dụng vào máy tìm kiếm XMLS [21]
- Tháng 01/2010, máy tìm kiếm được sử dụng riêng cho Mobile được xây dựng bởi Huy-Nguyen Việc xây dựng máy tìm kiếm dựa trên bài toán Phân cụm và Mở rộng truy vấn [14]
- Năm 2010, Sérgio và cộng sự giới thiệu một phương pháp mở rộng truy vấn dựa vào các mối quan hệ giữa các gens trong lĩnh vực y tế [20]
Trang 252.4 Tóm tắt chương 2
Trong chương hai, luận văn giới thiệu chi tiết một số phương pháp đã được
sử dụng cho việc mở rộng truy vấn Đồng thời, cũng giới thiệu về một số hệ thống tìm kiếm hay hệ thống hỏi đáp sử dụng một số phương pháp mở rộng truy vấn Trong chương tiếp theo, luận văn thực hiện đánh giá các phương pháp đã tìm hiểu được, từ đó đề xuất một mô hình mở rộng truy vấn phù hợp với ngôn ngữ tiếng Việt Tiếp theo đó, áp dụng kết quả của bài toán mở rộng truy vấn vào hệ thống tìm kiếm tiếng Việt