Các mô hình truy hồi tài liệu theo từ khóa không thể thỏa mãn người dùng với các dạng truy vấn sau đây:
Q1: Tìm kiếm các tài liệu về Sài Gòn.
Q2: Tìm kiếm các tài liệu về công ty.
Q3: Tìm kiếm các tài liệu về thành phố Paris.
Q4: Tìm kiếm các tài liệu về thành phố Paris thuộc bang Texas của nước Mỹ.
Ở truy vấn Q1, các tài liệu nói về thành phố Sài Gòn thông qua một số tên khác của nó nhƣ là “Thành phố Hồ Chí Minh” hoặc “TPHCM” cũng là các kết quả đúng. Ở truy vấn Q2, một tài liệu phù hợp không nhất thiết phải chứa từ khóa “công ty”, mà chỉ cần nói về một hoặc một vài công ty (tức là thuộc lớp Công ty), nhƣ NIKE, SONY và APPLE. Ở truy vấn Q3, người sử dụng không mong chờ nhận các tài liệu về Paris như là một trường đại học hoặc một diễn viên. Lưu ý là có nhiều thành phố tên Paris trên thế giới, và bất kỳ tài liệu nào nói về một trong các thành phố này đều là kết quả đúng.
Trong khi đó, truy vấn Q4 muốn tìm các tài liệu nói về một thành phố Paris xác định rõ ràng (ở bang Texas của Mỹ).
Các ví dụ trên cho thấy các đặc điểm ontology của thực thể có tên cần đƣợc khai thác để biểu diễn truy vấn và tài liệu. Ngoài các đặc điểm ontology cơ bản là tên, lớp và định danh, luận án còn xét đến cặp tên-lớp, là đặc điểm ontology kết hợp tên và lớp của thực thể có tên.
Nhƣ đã nêu ở Phần 2.1, mô hình không gian vectơ là một mô hình phổ biến và là nền tảng để phát triển các mô hình khác trong truy hồi tài liệu. Luận án đề xuất một mô hình trên nhiều không gian vectơ tương ứng với các đặc điểm ontology khác nhau của thực thể có tên. Để biểu diễn một cách hình thức các truy vấn và tài liệu bằng các
đặc điểm ontology của thực thể có tên, luận án định nghĩa bộ ba (N, C, I), trong đó N, C, và I lần lƣợt là tập hợp các tên, lớp và định danh của các thực thể trong ontology về thực thể. Theo đó:
1. Mỗi truy vấn q hoặc tài liệu d đƣợc mô hình hóa nhƣ là một tập con của (N{*})(C{*})(I{*}). Mỗi bộ ba (tên/lớp/địnhdanh) trong tập này đƣợc xem là một thuật ngữ (term) ontology của thực thể có tên. Trong đó „*‟
biểu thị một tên, lớp hoặc định danh không xác định của một thực thể có tên trong truy vấn hoặc tài liệu.
2. Truy vấn q đƣợc mô tả bởi bộ bốn (qN , qC
, qNC , qI
), trong đó, qN , qC
, qNC và qI
lần lƣợt là các vectơ trên N, C, NC, và I.
3. Tài liệu d đƣợc biểu diễn bởi bộ bốn (dN , dC
, dNC , dI
), trong đó dN , dC
, dNC
và dI
lần lƣợt là các vectơ trên N, C, NC, và I.
Văn bản thô
Truy vấn q: "Who is the president of Stanford University?"
Tài liệu d: "The California Compact ... and has been in existence for several years. The California group is co-chaired by Stanford University President Don Kennedy and ..."
Các đặc điểm ontology của thực thể có tên
1. Stanford University đƣợc biểu diễn bởi bộ ba (Stanford University/University/University_T.52) và có tên khác là Stanford.
2. California Compact đƣợc biểu diễn bởi bộ ba (California Compact/Organization/*).
3. California đƣợc biểu diễn bởi bộ ba (California/Province/Province_T.4198).
4. Don Kennedy đƣợc biểu diễn bởi bộ ba (Don Kennedy/Man/*)
Hệ thống phân cấp ontology cho các lớp của các thực thể có tên ở trên
1. Lớp University có các lớp cha là EducationalOrganization, Organization, Group và Agent.
2. Lớp Organization có các lớp cha là Group và Agent.
3. Lớp Province có các lớp cha là PoliticalRegion và Location.
4. Lớp Man có các lớp cha là Person và Agent.
Các tập hợp bộ ba thực thể có tên biểu diễn truy vấn và tài liệu Truy vấn q = {(Stanford University/University/University_T.52)}
Tài liệu d = {(California Compact/Organization/*), (California/Province/Province_T.4198), (Stanford University/University/University_T.52), (Don Kennedy/Man/*)}
Hình 3.1. Biểu diễn truy vấn và tài liệu bằng các tập hợp bộ ba thực thể có tên
Một đặc điểm ontology của một thực thể có thể không đƣợc xác định rõ vì nhiều lý do. Thứ nhất, người dùng chỉ quan tâm đến một hoặc một số đặc điểm của thực thể này nên không đề cập đến các đặc điểm khác trong truy vấn nhƣ ở Q1, Q2 và Q3. Thứ hai, ngữ cảnh của thực thể này trong tài liệu là không đủ rõ để nhận diện nó. Thứ ba, động cơ nhận diện thực thể có hạn chế trong việc nhận diện thực thể này một cách đầy đủ. Hình 3.1 trình bày ví dụ về một cặp truy vấn và tài liệu trong tập kiểm tra của TREC, và việc biểu diễn chúng bằng các tập hợp bộ ba của thực thể có tên. Trong đó, hai thực thể Stanford University và California đƣợc nhận diện có định danh lần lƣợt là University_T.52 và Province_T.4198, còn các định danh của hai thực thể California Compact và Don Kennedy không xác định đƣợc bởi động cơ nhận diện thực thể có tên của KIM. Hệ thống phân cấp ontology cho các lớp trong ví dụ đƣợc rút trích từ KIM ontology.
Mỗi vectơ trong bốn vectơ thành phần cho một truy vấn hoặc tài liệu đƣợc giới thiệu ở trên là một vectơ nhƣ trong mô hình không gian vectơ truyền thống, nhƣng trên túi các thuật ngữ ontology là các tên, các lớp, các cặp tên-lớp, hoặc các định danh, thay vì các từ khóa (bag-of-words). Tuy nhiên, khác với truy hồi tài liệu theo từ khóa, sự xuất hiện của một thực thể có tên trong một tài liệu hàm chứa và kéo theo các thông tin tiềm ẩn trong thực thể đó. Ví dụ nhƣ với một truy vấn về Location thì tài liệu nói về thành phố Sài Gòn là một tài liệu phù hợp để truy hồi, vì thành phố Sài Gòn thuộc về lớp Location. Điều này có thể đƣợc hiện thực bằng cách thêm vào tài liệu đó lớp cha của lớp City là lớp Location. Nhƣ vậy, mỗi tài liệu cần đƣợc mở rộng với các đặc điểm ontology bao phủ các đặc điểm ontology gốc của các thực thể xuất hiện trong nó. Việc mở rộng này tốn thời gian, nhưng có thể được làm trước nên không ảnh hưởng đến thời gian chạy (run-time) để trả lời các truy vấn.
Do đó, so với cách tính trọng số tf.idf trong mô hình không gian vectơ truyền thống cho vectơ tài liệu, mô hình đề xuất có hai khác biệt quan trọng sau đây trong việc tính tần suất của các đặc điểm ontology của thực thể có tên:
1. Tần suất của một tên của một thực thể có tính đến sự xuất hiện của các bí danh của thực thể đó. Tức là, nếu một tài liệu chứa một thực thể có bí danh là một tên nào đó thì tên này cũng đƣợc xem nhƣ xuất hiện trong tài liệu. Ví dụ, nếu một tài liệu đề cập đến quốc gia Georgia, thì mỗi lần xuất hiện của
thực thể này trong tài liệu đƣợc tính là một lần xuất hiện của tên Gruzia, bởi vì nó là bí danh của Georgia. Các bí danh của thực thể có tên đƣợc định nghĩa trong ontology về thực thể.
2. Tần suất của một lớp có tính đến sự xuất hiện của các lớp con của nó. Tức là, nếu một tài liệu chứa một thực thể mà lớp của nó là một lớp con của một lớp nào đó, thì lớp cha này cũng đƣợc xem nhƣ xuất hiện trong tài liệu. Ví dụ, nếu một tài liệu đề cập đến Paris nhƣ một thành phố, thì mỗi lần xuất hiện của thực thể này trong tài liệu đƣợc tính là một lần xuất hiện của lớp Location, bởi vì City là lớp con của Location. Sự bao phủ lớp đƣợc định nghĩa trong hệ thống phân cấp lớp của ontology về thực thể.
Độ tương tự của một tài liệu d và một truy vấn q được định nghĩa là:
sim(d ,q
) = wN.cosine(dN ,qN
) + wC.cosine(dC ,qC
) + wNC.cosine(dNC
,qNC
) + wI.cosine(dI ,qI
) (3-1)
Trong đó wN + wC + wNC + wI = 1. Các trọng số wN, wC, wNC và wI của các vectơ thành phần có thể đƣợc điều chỉnh tùy theo mức độ quan trọng của bốn đặc điểm ontology trong từng miền ứng dụng cụ thể.
Lưu ý rằng việc kết hợp hai vectơ N và C không thể thay thế được vectơ NC vì vectơ NC đề cập đến các thực thể với cặp tên-lớp xác định. Ví dụ, một tài liệu cùng đề cập đến một thực thể với tên là Paris và một thành phố khác thì tài liệu này không nhất thiết đề cập đến thành phố Paris. Bên cạnh đó, vectơ NC không thể thay thế cho vectơ I bởi vì các thực thể khác nhau có thể có cùng tên và lớp, ví dụ một thành phố Paris ở Pháp và một thành phố Paris ở Mỹ. Ngoài ra, các tên và lớp của một thực thể đƣợc xác định từ định danh của nó, nên việc kết hợp I với N hoặc C là không cần thiết.
Tóm lại, ở đây luận án mở rộng khái niệm thuật ngữ là các từ khóa trong mô hình không gian truyền thống với các thuật ngữ là các tên, lớp, cặp tên-lớp, hoặc định danh của các thực thể, và sử dụng bốn vectơ trên bốn không gian nói trên để biểu diễn cho một truy vấn hoặc một tài liệu trong mô hình đề xuất.
Xử lý truy vấn và tài liệu
Nhƣ trình bày ở trên, trong mô hình đa không gian vectơ đề xuất, mỗi truy vấn hoặc tài liệu đƣợc biểu diễn bằng bốn vectơ trên các không gian N, C, NC, và I. Mỗi vectơ đƣợc xây dựng trên một túi thuật ngữ ontology tên, lớp, cặp tên-lớp hoặc định danh tương ứng với truy vấn hoặc tài liệu.
Mỗi truy vấn q trong mô hình đa không gian vectơ được xử lý theo các bước sau:
1. Các thực thể có tên trong truy vấn đƣợc rút trích bởi một động cơ nhận diện thực thể có tên.
2. Với mỗi thực thể có tên đƣợc nhận diện:
a. Nếu thực thể chỉ đƣợc nhận diện có tên n, thì n đƣợc bổ sung vào túi thuật ngữ ontology tên biểu diễn q.
b. Nếu thực thể chỉ đƣợc nhận diện có lớp c, thì c đƣợc bổ sung vào túi thuật ngữ ontology lớp biểu diễn q.
c. Nếu thực thể chỉ đƣợc nhận diện có tên n và lớp c, thì <n, c> đƣợc bổ sung vào túi thuật ngữ ontology cặp tên-lớp biểu diễn q.
d. Nếu thực thể đƣợc nhận diện đầy đủ có tên n, lớp c và định danh id, thì id đƣợc bổ sung vào túi thuật ngữ ontology định danh biểu diễn q.
Mỗi tài liệu d trong mô hình đa không gian vectơ được xử lý theo các bước sau:
1. Các thực thể có tên trong tài liệu đƣợc rút trích bởi một động cơ nhận diện thực thể có tên giống nhƣ trong xử lý truy vấn.
2. Với mỗi thực thể có tên đƣợc nhận diện:
a. Nếu thực thể chỉ đƣợc nhận diện có tên n, thì n đƣợc bổ sung vào túi thuật ngữ ontology tên biểu diễn d.
b. Nếu thực thể chỉ đƣợc nhận diện có lớp c, thì c và super_class(c) đƣợc bổ sung vào túi thuật ngữ ontology lớp biểu diễn d.
c. Nếu thực thể chỉ đƣợc nhận diện có tên n và lớp c, thì lần lƣợt bổ sung vào các túi thuật ngữ ontology tên, lớp và cặp tên-lớp biểu diễn d các thuật ngữ sau:
n
c, super_class(c)
<n, c>, <n, super_class(c)>
d. Nếu thực thể đƣợc nhận diện đầy đủ có tên n, lớp c và định danh id, thì lần lƣợt bổ sung vào các túi thuật ngữ ontology tên, lớp, cặp tên-lớp và định danh biểu diễn d các thuật ngữ sau:
name(id)
c, super_class(c)
<name(id), c>, <name(id), super_class(c)>
id
Ở đây, name(id) là một tên bất kỳ của thực thể có định danh là id và super_class(c) là một lớp cha bất kỳ của lớp c. Các thông tin này đƣợc định nghĩa trong ontology về thực thể có tên mà hệ thống sử dụng.
Nhƣ đã trình bày và phân tích ở phần đầu của Phần 3.3 này, khác với xử lý truy vấn, mỗi tài liệu cần đƣợc mở rộng với các đặc điểm ontology bao phủ các đặc điểm ontology gốc của các thực thể xuất hiện trong nó. Hay nói cách khác, các túi thuật ngữ ontology biểu diễn tài liệu cần đƣợc thêm vào các thuật ngữ ontology bao phủ, tức là đƣợc hàm ý hay kéo theo bởi, các thuật ngữ ontology gốc của các thực thể xuất hiện trong tài liệu. Cụ thể là ở bước 2.b, super_class(c) là thuật ngữ ontology bao phủ của c.
Ở bước 2.c, n, c, super_class(c), và <n, super_class(c)> là các thuật ngữ ontology bao phủ của <n, c>. Ở bước 2.d, name(id), c, super_class(c), <name(id), c> và <name(id), super_class(c)> là các thuật ngữ ontology bao phủ của id.
Với truy vấn và tài liệu ví dụ nhƣ ở Hình 3.1, Hình 3.2 trình bày các túi từ khóa trong mô hình từ khóa và các túi thuật ngữ ontology trong mô hình đa không gian vectơ đề xuất của truy vấn và tài liệu. Lưu ý là trong các túi từ khóa hoặc thuật ngữ ontology này có sự lặp lại của các phần tử. Trong đó, qN, qC, qNC và qI lần lƣợt là các túi thuật ngữ ontology tên, lớp, cặp tên-lớp và định danh biểu diễn truy vấn q, còn dN, dC, dNC và dI lần lƣợt là các túi thuật ngữ ontology tên, lớp, cặp tên-lớp và định danh biểu diễn tài liệu d. Tác vụ “+” dùng để gộp các túi thuật ngữ tương ứng với từng thực thể có tên trong truy vấn hoặc tài liệu.
Văn bản thô
Truy vấn q: "Who is the president of Stanford University?"
Tài liệu d: "The California Compact ... and has been in existence for several years. The California group is co-chaired by Stanford University President Don Kennedy and ..."
Mô hình từ khóa
Các túi từ khoá biểu diễn truy vấn q và tài liệu d:
q = {president, Stanford, university}
d = {California, compact, existence, year, California, group, co-chair, Stanford, university, president, Don, Kennedy}
Mô hình đa không gian vectơ
Các túi thuật ngữ ontology qN, qC, qNxC và qI biểu diễn truy vấn q:
qN = qC = qNC =
qI = {University_T.52}
Các túi thuật ngữ ontology dN, dC, dNxC và dIbiểu diễn tài liệu d:
dN = {California Compact} + {California} + {Stanford University, Stanford} + {Don Kennedy}
dC = {Organization, Group, Agent} + {Province, PoliticalRegion, Location}
+ {University, EducationalOrganization, Organization, Group, Agent} + {Man, Person, Agent}
dNC = {<California Compact, Organization>, <California Compact, Group>, <California Compact, Agent>}
+ {<California, Province>, <California, PoliticalRegion>, <California, Location>}
+ {<Stanford University, University>, <Stanford University, EducationalOrganization>, <Stanford University, Organization>, <Stanford University, Group>, <Stanford University, Agent>, <Stanford, University>,
<Stanford, EducationalOrganization>, <Stanford, Organization>, <Stanford, Group>, <Stanford, Agent>}
+ {<Don Kennedy, Man>, <Don Kennedy, Person>, <Don Kennedy, Agent>}
dI = {Province_T.4198} + {University_T.52}
Hình 3.2. Biểu diễn truy vấn và tài liệu trong mô hình từ khóa và mô hình đa không gian vectơ
Vấn đề chồng lấp dữ liệu
Tiếp theo luận án xem xét một cách chi tiết các vectơ thành phần của truy vấn và tài liệu trong mô hình đa không gian vectơ đề xuất ở trên. Đối với mỗi thực thể có tên đƣợc xác định đầy đủ có tên, lớp và định danh trong truy vấn hoặc tài liệu, tên có thể đƣợc bổ sung vào túi thuật ngữ ontology biểu diễn vectơ qN
hoặc dN
, lớp có thể đƣợc bổ sung vào túi thuật ngữ ontology biểu diễn vectơ qC
hoặc dC
, và cặp tên-lớp có thể đƣợc bổ sung vào túi thuật ngữ ontology biểu diễn vectơ qNC
hoặc dNC
, và định danh có thể đƣợc bổ sung vào túi thuật ngữ ontology biểu diễn vectơ qI
hoặc dI
. Nhƣ vậy
mỗi đặc điểm ontology của thực thể có thể đƣợc dùng ở nhiều hơn một vectơ. Đó là vấn đề chồng lấp dữ liệu, xảy ra ở cả truy vấn và tài liệu khi biểu diễn chúng bằng các vectơ trên các đặc điểm ontology của thực thể. Việc xử lý truy vấn và tài liệu của mô hình đa không gian vectơ nhƣ trình bày ở trên đã giả định là có chồng lấp dữ liệu ở tài liệu và không có chồng lấp dữ liệu ở truy vấn.
Đầu tiên là xem xét vấn đề chồng lấp dữ liệu đối với tài liệu. Đối với tài liệu, các thông tin cần được lưu trữ đầy đủ, tức là các vectơ là các góc nhìn khác nhau trên cùng một tài liệu. Tùy thuộc vào truy vấn mà các mô hình truy hồi tài liệu sẽ trả về các tài liệu ở góc nhìn phù hợp. Nhƣ vậy khi biểu diễn tài liệu, sự chồng lấp dữ liệu là cần thiết nhằm đáp ứng các truy vấn khác nhau từ phía người dùng.
Kế đến là xem xét vấn đề chồng lấp dữ liệu đối với truy vấn. Ví dụ, với một truy vấn có chứa Paris có định danh, thực thể này bao gồm bốn đặc điểm ontology có thể đƣợc dùng để biểu diễn cho Paris trong các vectơ truy vấn thành phần, lần lƣợt là định danh của chính thực thể này, cặp tên-lớp Paris-City, lớp City, và tên Paris. Phụ thuộc vào việc thực thể có tên trong truy vấn đƣợc biểu diễn bởi chỉ một đặc điểm ontology cụ thể nhất hay tất cả bốn đặc điểm ontology trong mô hình đa không gian vectơ mà luận án gọi đó là mô hình không chồng lấp (non-overlapping) hoặc có chồng lấp (overlapping), lần lƣợt đƣợc ký hiệu là NEn hoặc NEo.
Nói một cách cụ thể, cả hai mô hình NEn và NEo đều có chồng lấp dữ liệu khi biểu diễn một tài liệu d bằng bốn vectơ dN
, dC , dNC
và dI
. Do đó, tài liệu trong hai mô hình này đƣợc xử lý giống nhƣ phần xử lý tài liệu của mô hình đa không gian vectơ đƣợc trình bày ở trên. Điểm khác biệt giữa hai mô hình NEn và NEo là ở việc biểu diễn và xử lý truy vấn. Ở mô hình không chồng lấp NEn, khi biểu diễn một truy vấn q bằng bốn vectơ qN
, qC , qNC
và qI
, chỉ có đặc điểm ontology cụ thể nhất của một thực thể và chỉ xuất hiện ở đúng một vectơ. Truy vấn trong mô hình NEn đƣợc xử lý giống nhƣ phần xử lý truy vấn của mô hình đa không gian vectơ trình bày ở trên.
Trong khi đó, ở mô hình chồng lấp NEo, khi biểu diễn một truy vấn q bằng bốn vectơ qN
, qC , qNC
và qI
, mỗi đặc điểm ontology của một thực thể có thể xuất hiện ở nhiều hơn một vectơ.