Chương 1: Tổng quan 1.1 Phát biểu vấn đề Trong truy hồi thông tin, khi tìm kiếm tài liệu, người dùng mong đợi công cụ tìm kiếm trả về những tài liệu liên quan nằm ở đầu của danh sách kết quả ([24]). Thêm vào đó, công trình nghiên cứu về sự tương tác lẫn nhau (interaction) của những term trong câu truy vấn ([21]) đã cho thấy những cặp có tính tương quan cao là những term cấu thành những cụm từ (phrase). Điều này chỉ ra rằng khi tìm kiếm người dùng có khuynh hướng sử dụng những term mà chúng thường xuất hiện thành cụm từ hay thường xuất hiện gần nhau trong tài liệu. Vì vậy, khoảng cách giữa các term, hay còn gọi là term proximity, đã được sử dụng ngầm bên dưới khi người dùng tìm kiếm tài liệu.
Dựa trên sự quan sát này, đã có nhiều công trình nghiên cứu tập trung vào khoảng cách giữa các term nhằm cải thiện độ chính xác ở những tài liệu ở đầu danh sách được trả về ([2][3][19][23][25]). Mặc dù các công trình nghiên cứu này có hướng tiếp cận khác nhau nhưng tất cả đều có thể chứng tỏ rằng hiệu quả truy hồi tài liệu có thể được cải thiện khi tích hợp các độ đo về khoảng cách vào trong các mô hình truy hồi hiện có. Tìm kiếm theo khoảng cách là cách tìm kiếm tài liệu có chứa hai hay nhiều term xuất hiện trong một khoảng cách được cho trước trong đó khoảng cách được định nghĩa là số lượng từ (word) hay kí tự nằm giữa các term và trong một vài trường hợp có thể yêu cầu thêm thứ tự của các term được thỏa mãn (Wikipedia1). Ví dụ, trailer NEAR3 boys có nghĩa là người dùng yêu cầu không có hơn ba từ nằm giữa trailer và boys và chúng có thể có bất kỳ thứ tự nào.
Để làm tăng độ hiệu quả truy hồi tài liệu, ngoài những nghiên cứu tập trung vào độ đo khoảng cách giữa các term còn có những nghiên cứu khác trong lĩnh vực tìm kiếm ngữ nghĩa cụ thể là các nghiên cứu xem xét khai thác các đặc tính ontology của các thực thể có tên ([4][5][6]). Thực thể có tên (Named Entity – NE) là những thực thể được đề cập đến bằng tên ví dụ như con người, tổ chức, nơi chốn và có thể được mô tả trong 1 http://en.org/wiki/Proximity_search_(text) Lê Văn Minh Tuấn 9 Tìm kiếm theo ngữ nghĩa có khoảng cách ontology ([20]). Ontology định nghĩa các lớp thực thể, cây phân cấp của các lớp thực thể, các thuộc tính của các lớp thực thể, và các quan hệ giữa các lớp thực thể. Ngoài Ontology, việc xử lý các thực thể có tên này còn cần thêm các tri thức cụ thể về thế giới đang xét.
Các tri thức này được chứa trong cơ sở tri thức. Cơ sở tri thức sẽ chứa đựng thông tin về các thực thể có tên cụ thể thuộc về các lớp thực thể đã được định nghĩa trong Ontology. Tuy nhiên, theo hiểu biết của chúng tôi, chưa có một công trình nào ở tìm kiếm theo ngữ nghĩa xem xét tới các câu truy vấn khoảng cách có chứa thực thể có tên và từ khóa. Thực tế khoảng cách giữa thực thể có tên và từ khóa đã được xem xét tới trong ([18]).
Nó được thực hiện trong lĩnh vực tìm kiếm chuyên gia (expert search), tức là việc tìm kiếm những người có kĩ năng và kinh nghiệm trong một chủ đề cho trước. Tuy nhiên, nó không phải dành cho truy hồi văn bản. Các mô hình tính độ đo khoảng cách được đề cập ở trên tính khoảng cách giữa các term dựa trên token. Khi được đánh chỉ mục, một tài liệu được phân tích thành các token (hay còn gọi là term).
Mỗi token sẽ được gán cho một ví trí và khoảng cách giữa chúng sẽ được tính dựa trên vị trí này. Xét tài liệu sau: D: “Cultural exhibitions on Ho Chi Minh City development and integration opened in Lam Son park” Khi đánh chỉ mục, tài liệu D được phân tích thành 15 token “cultural”, “exhibitions”, “on”, “ho”, “chi”, “minh”, “city”, “development”, “and”, “integration”, “opened”, “in”, “lam”, “son”, “park” có vị trí lần lượt từ 0 đến 14. Khoảng cách giữa các token có thể được tính dễ dàng dựa trên các vị trí này. Ví dụ, khoảng cách giữa “on” và “development” là 4 vì có 4 token “ho”, “chi”, “minh”, “city” nằm giữa chúng.
Tuy nhiên, khi tính đến NE, khoảng cách term được tính dựa trên token không còn áp dụng được nữa. Mỗi NE xuất hiện trong tài liệu thường bao phủ nhiều hơn một token. Ví dụ, trong tài liệu D ở trên, có một NE gọi là “Ho Chi Minh City” và nó bao phủ 4 token. Chúng tôi gọi số token bao phủ bởi một NE là chiều dài của NE đó.
Một NE có thể có nhiều tên khác (alias) với nhiều chiều dài khác nhau, vì vậy nó có thể có nhiều chiều dài khác nhau trong tài liệu. Ngoài ra, những NE thuộc về cùng một lớp thực thể cũng có chiều dài khác nhau trong tài liệu. Hãy xem xét các câu truy vấn cụm từ sau để có thể thấy chiều dài khác nhau của NE làm cho khoảng cách term dựa trên token không còn áp dụng được: Lê Văn Minh Tuấn 10 Tìm kiếm theo ngữ nghĩa có khoảng cách Q1: “Cultural exhibitions on Saigon City development” Q2: “Cultural exhibitions on city development” Ở truy vấn Q1, các tài liệu trả về phải chứa các term “Cultural”, “exhibitions”, “on”, “Saigon”, “City”, “development” đứng ngay sát cạnh nhau. Ở Q1, “Saigon City” là một NE có ID là city_123 và nó bao phủ 2 token.
Ở đây câu truy vấn yêu cầu phải có term “on” xuất hiện ngay phía trước và term “development” xuất hiện ngay phía sau thực thể city_123 trong tài liệu. Ở tài liệu D, có một cụm từ “Cultural exhibitions on Ho Chi Minh City development”. Bởi vì “Ho Chi Minh City” là một tên khác của “Saigon City”, cho nên một cách trực quan thì tài liệu D có thể so trùng được với Q1. Tuy nhiên, theo khoảng cách term dựa trên token ở trên, tài liệu D không được trả về vì nó không thỏa điều kiện về khoảng cách.
Một cách cụ thể, thực thể city_123 có chiều dài là 2 trong truy vấn Q1 vì vậy khoảng cách giữa term “development” và “on” được yêu cầu là 2. Nhưng trong tài liệu D, thực thể city_123 có chiều dài là 4, vì vậy khoảng cách giữa term “development” và “on” là 4, chính sự khác biệt này làm D không thể so trùng được với Q1. Chúng ta có thể thấy rằng lỗi này là do bởi vì cùng một NE nhưng nó có thể xuất hiện với nhiều tên khác nhau và nhiều chiều dài khác nhau trong truy vấn và tài liệu. Mặc dù NE trong truy vấn và tài liệu có thể so trùng được với nhau (như city_123 ở trên) nhưng chiều dài của chúng có thể khác nhau và điều này làm cho khoảng cách dựa trên token bị sai lệch.
Một ví dụ khác là truy vấn Q2 tìm kiếm tài liệu chứa tất cả các term “Cultural”, “exhibitions”, “on”, “city”, “development” đứng sát nhau. Ở đây “city” là một lớp thực thể gọi là City. Ở Q2, câu truy vấn không đề cập đến một thành phố cụ thể nào nhưng đề cập đến tất cả thực thể có tên thuộc về lớp City. Bởi vì “Ho Chi Minh City” là một thực thể thuộc lớp City cho nên một cách trực quan thì D có thể so trùng với câu truy vấn Q2.
Thế nhưng ở Q2 khoảng cách giữa term “development” và “on” là 1 nhưng trong tài liệu D khoảng cách giữa chúng lại là 4. Vì vậy, nếu theo cách tính khoảng cách dựa trên token, tài liệu D không thể so trùng được với Q2. Ngoài Thành phố Hồ Chí Minh, còn có rất nhiều thực thể thành phố khác thuộc lớp City và mỗi thành phố trong số chúng có thể có chiều dài khác nhau. Những chiều dài khác nhau của chúng làm cho khoảng cách giữa các term nằm trước và sau chúng cũng khác nhau.
Vì vậy việc so trùng term không còn Lê Văn Minh Tuấn 11 Tìm kiếm theo ngữ nghĩa có khoảng cách dễ dàng như trong trường hợp so trùng từ khóa thuần. Nó phải đối mặt với các khoảng cách động và biến đổi gây ra bởi những thực thể có tên có chiều dài khác nhau. Hai ví dụ trên cho thấy rằng khoảng cách được tính dựa trên token không thể áp dụng cho các câu truy vấn và tài liệu có chứa NE. Trong luận án này, chúng tôi không đề xuất một mô hình xếp hạng mới có sử dụng khoảng cách giữa các term nhưng chúng tôi xem xét các khoảng cách động giữa các từ khóa và các thực thể có tên trong truy vấn và tài liệu như đã phân tích ở các ví dụ trên.
Cho đến nay, theo hiểu biết của chúng tôi, chưa có hệ thống truy hồi nào có hỗ trợ các câu truy vấn về khoảng cách giữa các từ khóa và các thực thể có tên. Mục tiêu của luận án này là khai thác các đặc tính ontology của thực thể có tên trong tìm kiếm theo khoảng cách, xem xét và phân tích các khoảng cách động giữa các từ khóa và các thực thể có tên, và sau đó phát triển một giải thuật để tính toán các khoảng cách động này. Sau khi các khoảng cách được tính ra, bất cứ mô hình xếp hạng nào được đề cập ở trên đều có thể được áp dụng để xếp hạng các tài liệu được truy hồi. Trong [12], chúng tôi đã đề xuất tìm kiếm theo khoảng cách có thực thể có tên trong đó vị trí của các term được cập nhật tĩnh lúc đánh chỉ mục nhưng chưa tiến hành thực nghiệm để đánh giá hiệu quả.
Trong luận án này, ngoài cách tiếp cận được đề xuất trong [12], chúng tôi còn đề xuất thêm tìm kiếm theo khoảng cách có thực thể có tên trong đó vị trí của các term được cập nhật động và tiến hành thực nghiệm để đánh giá hiệu quả của các phương pháp này trong việc cải thiện hiệu suất truy hồi dựa trên các độ đo độ chính xác, độ đầy đủ và độ hài hòa F. Dựa trên các nghiên cứu đó, chúng tôi biến đổi thư viện S-Lucene ([4][15][16]) để hiện thực các phương pháp tìm kiếm theo khoảng cách có thực thể có tên của chúng tôi. Chi tiết của các phương pháp này sẽ được trình bày chi tiết trong Chương 3 và phần thực nghiệm đánh giá sẽ được chúng tôi trình bày trong Chương 4.2 Các công trình liên quan Trong các mô hình truy hồi hiện tại, các tài liệu được xếp hạng chủ yếu dựa trên nhiều loại đại lượng thống kê như tần số xuất hiện của term trong tài liệu (within- document term frequency – tf), tần số tài liệu nghịch đảo (inverse document frequency – idf) và chiều dài của tài liệu.