Mục lục
Danh mục từviết tắt, thuật ngữ..
Danh mục bảng biểu ..
Danh mục hình vẽ..
Mở đầu ..
1. Giới thiệu chung..
2. Nội dung luận văn..
Chương 1 Đối sánh lược đồ..
1.1 Tổng quan về đối sánh lược đồ..
1.1.1 Các khái niệm cơbản về đối sánh lược đồ..
1.1.2 Các lĩnh vực ứng dụng đối sánh lược đồ..
1.2 Các tiếp cận đối sánh lược đồ..
1.2.1 Phân loại các tiếp cận đối sánh lược đồ..
1.2.2 Các tiếp cận đối sánh lược đồ..
1.2.3 Các phương pháp đối sánh lược đồ..
1.3 Các hệthống đối sánh lược đồXML..
1.3.1 Cupid (trung tâm nghiên cứu Microsoft)..
1.3.2 Similarity Flooding (Đại học Stanford và đại học Leipzig)..
1.3.3 LSD (Đại học Washington)..
1.3.4 Clio (IBM Almaden và đại học Toronto)..
1.3.5 Một sốhệthống đối sánh lược đồkhác..
1.4 Kết chương..
Chương 2 Các định nghĩa hình thức ..
2.1 Vấn đề đối sánh lược đồXML..
2.1.1 Đối sánh ngữnghĩa và đối sánh cú pháp..
2.1.2 Thông tin đầu vào của tiến trình đối sánh..
2.1.3 Thông tin đầu ra của tiến trình đối sánh..
2.1.4 Các định nghĩa hình thức..
2.2 Mô hình hóa lược đồXML..
2.2.1 Các nút đồthịlược đồ..
2.2.2 Các cạnh đồthịlược đồ..
2.2.3 Các ràng buộc đồthịlược đồ..
2.2.4 Các định nghĩa hình thức..
2.3 Ánh xạnguồn–đích..
2.4 Kết chương..
Chương 3 Đối sánh tự động lược đồXML ..
3.1 Tổng quan về đối sánh tự động lược đồXML..
3.2 Đo độtương đồng ngôn ngữ..
3.2.1 WordNet và quan hệngữnghĩa giữa các từ..
3.2.2 Thuật toán của Hirst và St-Onge..
3.2.3 Giải pháp của hệthống Cupid..
3.3 Xét tính tương thích kiểu dữliệu lược đồXML và phân tích phân cấp kiểu
người thiết kế..
3.3.1 Xét tính tương thích kiểu dữliệu lược đồXML..
3.3.2 Phân tích phân cấp kiểu người thiết kế..
3.4 Đo độtương đồng cấu trúc..
3.4.1 Định nghĩa ngữcảnh nút..
3.4.2 Đo độtương tự đường dẫn..
3.4.3 Đo độtương đồng ngữcảnh nút..
3.5 Đo độtương đồng nút và tạo ánh xạgiữa các phần tử..
3.5.1 Đo độtương đồng nút..
3.5.2 Tạo ánh xạgiữa các nút và cạnh đối sánh..
3.6 Đánh giá tiến trình đối sánh lược đồXML..
3.6.1 Các phương pháp đánh giá..
3.6.2 Đánh giá giải pháp..
3.7 Áp dụng đối sánh lược đồtrong bài toán chuyển đổi tài liệu có cấu trúc.Error!
3.7.1 Tổng quan vềtài liệu có cấu trúc..
3.7.2 Chuyển đổi tự động tài liệu có cấu trúc..
3.7.3 Mô hình cho hệthống chuyển đổi tự động tài liệu XML..
3.8 Kết chương..
Kết luận và hướng phát triển ..
1. Đóng góp chính của luận văn..
2. Hướng phát triển..
Danh mục tài liệu tham khảo ..
Phụlục.
114 trang |
Chia sẻ: maiphuongdc | Lượt xem: 1648 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Luận văn Đối sánh tự động lược đồ XML, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
một tên ràng buộc (chẳng hạn như ràng buộc
duy nhất, số yếu tố), Ccategory là một danh mục ràng buộc (ràng buộc trên nút,
Chương 2: Các định nghĩa hình thức
Võ Sỹ Nam. Luận văn cao học – ngành công nghệ thông tin
41
ràng buộc trên cạnh, ràng buộc trên tập cạnh), Capply-to định nghĩa các thành
phần áp dụng ràng buộc (ví dụ tên nút trong trường hợp ràng buộc trên nút) và
Cvalue là giá trị của ràng buộc (nếu nó tồn tại, nếu không thì lấy giá trị mặc
định ∅).
Ta không cần kiểm tra tính hợp khuôn dạng của đồ thị lược đồ (ví dụ nếu
nhãn cạnh là thuộc tính thì kiểm tra rằng nút nguồn là một nút phức hợp và
nút đích là một nút nguyên tố). Điều này là do ta xây dựng đồ thị lược đồ trên
cơ sở các lược đồ XML hợp lệ đã có. Dựa trên các khái niệm nút và cạnh, ta
đưa ra thêm các khái niệm đường dẫn, đường dẫn nguyên thủy như sau:
Định nghĩa 2.7 (Đường dẫn) Một đường dẫn từ một nút n1 tới nút nk là một
dãy n1, n2, … , nk, trong đó n1, n2, … , nk ∈NG, và với bất kỳ hai nút liên tiếp
ni and ni+1 (1 ≤ i ≤ k-1), tồn tại một cạnh ei (l, ni , ni+1) ∈ EG – {Ea}. Một
đường dẫn chỉ bao gồm các cạnh chứa và cạnh thuộc-tính-của. Ta gọi n1 và nk
lần lượt là nút bắt đầu và nút kết thúc của đường dẫn. Đường dẫn được xem là
đi qua nút ni (1 ≤ i ≤ k). Độ dài của đường dẫn là tổng số nút mà đường dẫn đi
qua, tức là, k với đường dẫn P = (n1, n2, … , nk), biểu thị như length(P)= k.
Định nghĩa 2.8 (Đường dẫn nguyên thủy) Một đường dẫn từ nút n1 tới nút
nk, là một đường dẫn nguyên thủy khi và chỉ khi nút bắt đầu n1 không có cạnh
vào (nghĩa là nút bắt đầu là gốc của đồ thị lược đồ).
Khái niệm đồ thị lược đồ được mô tả ở trên không bao gồm các tính năng
như thừa kế kiểu và kiểu trừu tượng. Các vấn đề này sẽ được xem xét trong
chương 3. Chú ý rằng đồ thị lược đồ được xây dựng bằng cách mở rộng các
kiểu chia sẻ trong lược đồ XML. Dựa trên việc hình thức hóa đồ thị lược đồ,
ta đưa ra thêm một số định nghĩa về việc chuyển đổi khởi dựng nguồn thành
khởi dựng đích (khái niệm khởi dựng ở đây nhằm nói đến nút và cạnh trong
đồ thị lược đồ). Một phần tử ánh xạ liên kết một khởi dựng từ S tới một khởi
Chương 2: Các định nghĩa hình thức
Võ Sỹ Nam. Luận văn cao học – ngành công nghệ thông tin
42
dựng tương đồng ngữ nghĩa từ T (lần lượt là các đồ thị lược đồ nguồn và
đích). Mặc dù một nguồn có thể không có một khởi dựng tương ứng trực tiếp
tới một khởi dựng đích, các khởi dựng đích có thể được dẫn xuất từ các khởi
dựng nguồn bằng cách áp dụng một tập các phép toán đã định nghĩa trước. Cơ
chế này có những điểm tương đồng với việc tạo khung nhìn ảo trong tích hợp
dữ liệu, ở đó một khung nhìn ảo trên nguồn phải đối sánh với một lược đồ
trung gian (ví dụ ghép nối của các phần tử nguồn FirstName và LastName
thành một phần tử ảo Name mà đối sánh với phần tử đích Name). Khung nhìn
ảo cũng áp dụng được cho cạnh (ví dụ hai cạnh Author→FirstName và
Author→LastName được hợp nhất với nhau thành một cạnh ảo
Author→Name đối sánh với cạnh Author→Name trong lược đồ đích). Dựa
trên các định nghĩa trong [20] cho vấn đề tạo khung nhìn ảo, ta có thể đưa ra
các định nghĩa hình thức ánh xạ giữa các lược đồ nguồn và đích như sau:
Định nghĩa 2.9 (Bảng ký tự lược đồ) Cho một lược đồ K (tuân theo hình
thức đồ thị lược đồ), ta gọi bảng ký tự lược đồ của K hay ΣK là hợp của các
nút và các cạnh trong đồ thị lược đồ của K: ΣK = NK ∪EK.
Định nghĩa 2.10 (Khung nhìn ảo) Cho một lược đồ nguồn S và bảng ký tự
ΣS của nó, một khung nhìn ảo υS trên S là một dẫn xuất từ bảng ký tự ΣS áp
dụng một tập các phép toán đã định nghĩa trước O ={o1,…on.}.
Định nghĩa 2.11 (Phần tử ánh xạ, ánh xạ trực tiếp, ánh xạ phức hợp) Cho
VS là tập các khung nhìn ảo có thể được xây dựng trên ΣS. Một phần tử ánh xạ
là một hàm mst: ΣS∪VS → ΣT, nối kết một phần tử s trong ΣS∪VS tới một
phần tử t trong ΣT. Một phần tử ánh xạ là một ánh xạ trực tiếp nếu nó nối kết
một phần tử trong ΣS (⊆VS) tới một phần tử trong ΣT và là một ánh xạ phức
hợp nếu nó nối kết một phần tử ảo υS ∈VS tới một phần tử đích trong ΣT qua
một biểu thức ánh xạ đã định nghĩa trên O.
Chương 2: Các định nghĩa hình thức
Võ Sỹ Nam. Luận văn cao học – ngành công nghệ thông tin
43
2.3 Ánh xạ nguồn–đích
Một trong những ứng dụng cơ bản của đối sánh lược đồ là vấn đề chuyển
đổi giữa các nguồn dữ liệu có cấu trúc tuân theo các lược đồ tương đồng. Vấn
đề này đòi hỏi ta phải thiết lập các ánh xạ thích hợp giữa các phần tử tương
đồng trong hai lược đồ nguồn và đích đã cho, hay còn gọi là ánh xạ nguồn–
đích. Các nghiên cứu trong lĩnh vực CSDL đã đưa ra mô hình đại số quan hệ
khá hoàn chỉnh, do vậy ta có thể mở rộng mô hình này cho vấn đề ánh xạ
nguồn–đích trong đối sánh lược đồ. Nhiều nghiên cứu khác nhau (chủ yếu
trong lĩnh vực tích hợp dữ liệu) đã mô tả các phép toán tạo khung nhìn ảo trên
các lược đồ. Để giải quyết vấn đề này, họ chỉ ra một tập các phép toán sử
dụng như là các chuyển đổi truy vấn để tích hợp thông tin nguồn vào khung
nhìn đích. Một mở rộng của nghiên cứu này đã được đề xuất trong [20] nhằm
công thức hóa lại các truy vấn trong hệ thống tích hợp dữ liệu. Tuy vậy, các
nghiên cứu này chỉ quan tâm đến các lược đồ quan hệ và chúng không hoàn
toàn áp dụng được cho lược đồ XML. Các nghiên cứu về đối sánh cây, chẳng
hạn như [19] lại chú ý đến vấn đề phát hiện thay đổi cho cây gán nhãn. Họ
đưa ra ba phép toán trong đối sánh cây: delete, insert, relabel. Kịch bản thao
tác "rẻ nhất" cho việc chuyển đổi cây nguồn thành một cây đích là kết hợp các
phép toán này. Tuy vậy, trong các tiếp cận này, nhãn của nút không quan
trọng. Phép toán gán lại nhãn được xem là “rẻ” hơn phép xóa theo sau là một
phép toán chèn. Trong thực tế, nhãn là tên tổng quát của thẻ XML mang
thông tin ngữ nghĩa nên việc gán lại nhãn một nút thành một nút khác không
liên quan về ngữ nghĩa có thể cho ra một kết quả không mong muốn trong đối
sánh lược đồ XML.
Dựa vào các nghiên cứu trên và xuất phát từ các phép toán cơ bản đã
được mô tả trong đại số quan hệ chuẩn, ta có thể đưa ra các phép toán ánh xạ
nguồn–đích áp dụng cho đối sánh lược đồ XML. Sau đây chúng tôi sẽ xem
Chương 2: Các định nghĩa hình thức
Võ Sỹ Nam. Luận văn cao học – ngành công nghệ thông tin
44
xét những vấn đề cần phải giải quyết trong đối sánh lược đồ XML, từ đó mô
tả các phép toán này. Các vấn đề mô tả ở đây về cơ bản dựa trên nghiên cứu
về đại số ánh xạ nguồn–đích đã được đưa ra trong [22].
● Người thiết kế lược đồ có thể mô tả các khái niệm tương tự về mặt ngữ
nghĩa bằng cách sử dụng các tên khác nhau. Để giải quyết vấn đề này, ta cần
một phép toán đổi tên như sau:
Rename: t = rename(s), tạo ra một khởi dựng giống như s nhưng với một tên
khác là t. Ví dụ: writer=rename (author) chỉ ra rằng một thể hiện nguồn
author được đổi tên thành thể hiện đích writer.
● Với mỗi nút đích, có thể có một tập con thích hợp các giá trị mong đợi
hoặc một tập mẹ thích hợp các giá trị mong đợi trong nguồn. Ví dụ ta hãy xét
một lược đồ 1 trong đó một Author có con là các nút Paper và Book mô tả
publication của nó. Ngược lại, Author trong một lược đồ 2 đã cho có một nút
con là Publication. Trong lược đồ 1, các nút Paper và Book là các tập con của
nội dung Publication trong lược đồ 2, và các quan hệ Author→Paper và
Author→Book đều là chi tiết hóa của quan hệ Author→Publication trong lược
đồ 2. Do đó, nếu lược đồ 2 là đích, ta có thể cần đến phép hợp các nội dung
của Paper và Book và các quan hệ Author→Paper và Author→Book. Nếu
lược đồ 1 là đích, ta cần tìm kiếm một cách để lựa chọn nội dung của các
paper và các book và các quan hệ giữa author và các paper và author và book
từ các quan hệ giữa author và publication. Để giải quyết vấn đề này, ta cần
hai phép toán hợp và chọn như sau:
Hợp: Union: t = union (s1, s2), tạo ra một khởi dựng t mà nội dung của nó là
hợp của các giá trị s1 và các giá trị s2,
Chọn: Selection: t = selectP (s) (trong đó P là một vị từ) tạo ra một khởi dựng
t mà nội dung của nó là một phần của nội dung của s mà thỏa mãn vị từ P.
Chương 2: Các định nghĩa hình thức
Võ Sỹ Nam. Luận văn cao học – ngành công nghệ thông tin
45
● Người thiết kế lược đồ có thể không chọn cách biểu diễn các giá trị ở
cùng mức nguyên tố. Ví dụ, một tên tác giả được biểu diễn trong lược đồ đã
cho sử dụng phần tử Name. Trong khi trong một lược đồ khác, nó được tách
thành First-Name và Last-Name. Nếu lược đồ 1 là đích, ta cần nối các giá trị
của First-Name và Last-Name lại với nhau, còn nếu lược đồ 2 là đích, ta cần
tách các giá trị của các phần tử Name thành các giá trị First-Name và Last-
Name. Để giải quyết vấn đề này, ta cần hai phép toán nhập và tách như sau:
Nhập: Merge: t = merge (S1…Si), tạo ra một khởi dựng t mà giá trị của nó
thu được bằng cách nối các giá trị s1...si với nhau,
Tách: Split: (t1…ti) = splitcriteria (s), trong đó t1...ti thu được bằng cách phân
chia một khởi dựng s dựa vào tiêu chuẩn tách biệt. Một ví dụ của tiêu chuẩn
tách biệt này là khoảng trắng (“white space”) trong trường hợp các xâu.
● Một khởi dựng đích có thể thu được bằng cách áp dụng một phép kết
nối tự nhiên (như trong các lược đồ quan hệ) các khởi dựng nguồn. Để giải
quyết vấn đề này, ta cần một phép toán nối như sau:
Nối: Join: t= joinP(S1,S2), tạo ra khởi dựng đích t là kết nối tự nhiên của S1 và
S2 dưới vị từ P.
● Ta thường cần một số hàm đặc biệt để chuyển đổi nội dung của các giá
trị nguồn thành các giá trị đích, chẳng hạn như chuyển đổi đơn vị, chuyển đổi
định dạng ngày tháng hay các hàm toán học như min, avg, div, v.v.. Đối với
trường hợp này, ta cần một phép toán áp dụng như sau:
Áp dụng: Apply: t = applyf (s1…si) trong đó f là một hàm của các biến s1…si
và trả về t, mà giá trị của nó tương ứng với f (s1…si).
● Với mỗi trường hợp mà ta có một đối sánh một-một mà không có bất
kỳ sự thay đổi nào, ta cần một phép toán nối như sau:
Connect: t = connect(s), tạo ra khởi dựng t có cùng nội dung và nhãn như s.
Chương 2: Các định nghĩa hình thức
Võ Sỹ Nam. Luận văn cao học – ngành công nghệ thông tin
46
2.4 Kết chương
Việc đưa ra các định nghĩa hình thức cho vấn đề đối sánh lược đồ là một
bước quan trọng trong tiến trình đối sánh. Điều này giúp người dùng đánh giá
và so sánh được khả năng ứng dụng của các giải pháp đối sánh. Dựa trên việc
phân tích thông tin vào và ra cho một hệ thống đối sánh lược đồ XML, chúng
tôi đã mô tả các giả thiết cơ bản cho tiến trình đối sánh. Tiếp theo, chúng tôi
đã mô tả các định nghĩa cho mô hình dữ liệu biểu diễn lược đồ XML, là đồ thị
gán nhãn có hướng và có gốc, hay còn gọi là đồ thị lược đồ.
Ngoài việc tính toán độ tương đồng giữa các phần tử lược đồ, các giải
pháp đối sánh thường quan tâm đến việc phát hiện ánh xạ giữa các nút và
cạnh đối sánh cũng như các phép toán chuyển đổi nhằm mục đích truy lục dữ
liệu từ lược đồ nguồn. Do đó trong chương này chúng tôi cũng đã mô tả các
phép toán ánh xạ nguồn–đích như đổi tên, nối và áp dụng nhằm tạo các ánh
xạ trực tiếp cũng như hợp, chọn, nhập và tách để tạo các ánh xạ phức hợp.
Tuy vậy, công việc cơ bản trong bất cứ giải pháp đối sánh lược đồ nào
vẫn là việc tính toán độ tương đồng giữa các phần tử lược đồ, do vậy ta cần
phải chỉ ra các tiêu chuẩn đối sánh cũng như việc thực hiện chúng. Bên cạnh
đó, do tiến trình đối sánh lược đồ là không thể tự động được hoàn toàn, nghĩa
là cần phải có sự xác nhận của người dùng, các giải pháp đối sánh lược đồ cần
phải kết hợp được phản hồi người dùng trong kết quả đối sánh. Các vấn đề
này sẽ được trình bày trong chương tiếp theo.
Chương 3: Đối sánh tự động lược đồ XML
Võ Sỹ Nam. Luận văn cao học – ngành công nghệ thông tin
47
Chương 3
Đối sánh tự động lược đồ XML
Trong chương này đầu tiên chúng tôi mô tả các thuật toán đối sánh lược
đồ khác nhau và cách kết hợp chúng để thu được độ tương đồng giữa các
thực thể lược đồ. Vấn đề đặt ra ở đây là làm thế nào để sử dụng một cách tối
đa thông tin cấu trúc nhằm thu được các ánh xạ giữa các lược đồ XML nguồn
và đích. Để thực hiện điều này, chúng tôi dựa vào các kết quả nghiên cứu
trong nhiều lĩnh vực như tích hợp dữ liệu, chuyển đổi dữ liệu, trả lời truy vấn,
v.v.. nhằm đưa ra phép đo độ tương đồng giữa các phần tử lược đồ một cách
chính xác và hiệu quả nhất có thể. Tiếp theo chúng tôi chỉ ra cách tạo ra các
ánh xạ trực tiếp lẫn gián tiếp dựa trên các phép đo độ tương đồng này. Cuối
cùng, chúng tôi đánh giá giải pháp đã đưa ra dựa trên một tập dữ liệu thực tế
được cung cấp trong [5]. Quá trình đánh giá bao gồm hai phần: thứ nhất là
đánh giá giải pháp theo các phép đo chất lượng đối sánh và thứ hai là so
sánh giải pháp với hai hệ thống điển hình hiện này là Cupid và SF.
Cuối cùng, để đưa ra một áp dụng cho giải pháp đã mô tả, trong phần
cuối chương này chúng tôi sẽ xem xét vấn đề chuyển đổi tài liệu có cấu trúc,
một trong những lĩnh vực ứng dụng điển hình của đối sánh lược đồ XML.
Ngoài việc tổng hợp lại các nghiên cứu liên quan về vấn đề này, chúng tôi
cũng đề xuất một mô hình cho hệ thống chuyển đổi tự động tài liệu XML.
Chương 3: Đối sánh tự động lược đồ XML
Võ Sỹ Nam. Luận văn cao học – ngành công nghệ thông tin
48
3.1 Tổng quan về đối sánh tự động lược đồ XML
Để đối sánh lược đồ, về cơ bản ta cần tính toán độ tương đồng giữa các
phần tử lược đồ. Để tính toán độ tương đồng phần tử, các tiếp cận đối sánh
lược đồ hiện nay thường kết hợp nhiều phương pháp đối sánh khác nhau. Một
trong những tiếp cận đáng chú ý là giải pháp được đưa ra trong [22], trong đó
các tác giả đã áp dụng đối sánh lược đồ cho vấn đề chuyển đổi tài liệu có cấu
trúc. Dựa trên các nghiên cứu này, chúng tôi đưa ra một tiến trình tính toán độ
tương đồng phần tử như mô tả trong hình 3.1. Chúng tôi sử dụng các tiêu
chuẩn đối sánh cơ bản sau: đối sánh thuật ngữ, xét tính tương thích kiểu dữ
liệu và đối sánh cấu trúc. Sau đây là các bước cơ bản trong tiến trình này:
- Đo độ tương đồng ngôn ngữ: pha này tính toán độ tương đồng giữa các
nút lược đồ nguồn và đích dựa trên độ tương đồng nhãn có sử dụng WordNet.
Pha này có đầu vào là các nhãn trong hai đồ thị lược đồ và đưa ra một ma trận
độ tương đồng ngôn ngữ (trong phạm vi [0, 1]) giữa các nút nguồn và đích.
- Xét tính tương thích kiểu dữ liệu: pha này tính toán độ tương đồng giữa
các nút nguồn và đích dựa trên các ràng buộc của chúng. Ở đây chúng tôi chỉ
xét các nút nguyên tố được xem là tương đồng trong pha đối sánh thuật ngữ.
Trong pha này chúng tôi sử dụng phân cấp kiểu nội tại của lược đồ XML [27]
và các ràng buộc miền trên các nút nguyên tố nguồn và đích để cập nhật cho
phép đo độ tương đồng thuật ngữ.
- Đo độ tương đồng cấu trúc: pha này tính toán độ tương đồng của các
nút lược đồ nguồn và đích sử dụng các đặc điểm cấu trúc của chúng dựa trên
khái niệm ngữ cảnh nút. Chúng tôi thực hiện đối sánh cấu trúc theo hai bước.
Bước đầu tiên là gán cho mỗi nút trong lược đồ nguồn và đích một ngữ cảnh.
Tiếp theo chúng tôi so sánh các ngữ cảnh này để đưa ra một hệ số tương đồng
nút phản ánh sự tương đồng cấu trúc giữa hai nút lược đồ. Bước thứ hai chúng
tôi sử dụng độ tương đồng nút đã có để đưa ra tập các phần tử ánh xạ phức
Chương 3: Đối sánh tự động lược đồ XML
Võ Sỹ Nam. Luận văn cao học – ngành công nghệ thông tin
49
hợp và trực tiếp. Trong bước này, chúng tôi cũng xác nhận tính hợp lệ của các
ánh xạ phức hợp đã tạo ra trong pha phân tích phân cấp kiểu người thiết kế.
Hình 3. 1 Tiến trình tính toán độ tương đồng phần tử
3.2 Đo độ tương đồng ngôn ngữ
Mục đích của pha này là tính toán độ tương đồng giữa các nút lược đồ
dựa trên độ tương đồng nhãn của chúng. Để thực hiện đối sánh ngôn ngữ,
chúng tôi xem xét ý nghĩa của tên phần tử và thiết lập các quan hệ ngữ nghĩa
giữa chúng dựa trên WordNet, một CSDL từ vựng điện tử cho các từ tiếng
Anh [14].
3.2.1 WordNet và quan hệ ngữ nghĩa giữa các từ
WordNet phân biệt các quan hệ ngữ nghĩa khái niệm mà liên kết các khái
niệm và các quan hệ từ vựng liên kết các từ riêng lẻ. Về cơ bản chúng tôi chỉ
xét các quan hệ ngữ nghĩa khái niệm. Trong WordNet thông tin từ vựng được
tổ chức dưới dạng ý nghĩa từ hơn là hình thái từ. Ý nghĩa từ được xem xét qua
Ma trận độ tương
đồng ngôn ngữ Đo độ tương
đồng ngôn ngữ
Xét tính tương
thích kiểu dữ liệu
Đo độ
tương đồng
ngữ cảnh
nút
Đồ thị lược đồ
Ngữ cảnh tổ tiên
Ma trận độ tương đồng
ngôn ngữ đã hiệu chỉnh
Đo độ
tương
đồng nút
Ma trận độ tương đồng phần tử
Ngữ cảnh con
Ngữ cảnh lá
Chương 3: Đối sánh tự động lược đồ XML
Võ Sỹ Nam. Luận văn cao học – ngành công nghệ thông tin
50
khái niệm synset (synonym set - tập các từ đồng nghĩa). Trong WordNet một
hình thái từ có thể được kết hợp với nhiều synset, mỗi synset tương ứng với
một nghĩa khác nhau của từ. WordNet được tổ chức theo các quan hệ ngữ
nghĩa. Bởi vì một quan hệ ngữ nghĩa là một quan hệ giữa các ý nghĩa, và bởi
vì ý nghĩa có thể được biểu diễn bằng các synset, một cách tự nhiên có thể coi
các quan hệ ngữ nghĩa như là các con trỏ giữa các synset. WordNet sử dụng
nhiều quan hệ ngữ nghĩa khác nhau như đồng nghĩa/trái nghĩa hay tổng
quát/đặc biệt. Các liên kết WordNet có thể có ba hướng: lên, xuống và ngang.
Hướng lên tương ứng với sự tổng quát hóa của ngữ cảnh (kết nối nhiều khái
niệm riêng biệt thành một một khái niệm tổng quát hơn). Liên kết xuống
tương ứng với sự chi tiết hóa của ngữ cảnh. Liên kết ngang là các chi tiết hóa
rất cụ thể và ít xảy ra hơn các liên kết lên và xuống. Bảng C.1 trong phụ lục C
cho ta ví dụ về các liên kết này.
3.2.2 Thuật toán của Hirst và St-Onge
Hầu hết các thuật toán đối sánh lược đồ đều sử dụng WordNet để đối
sánh ngôn ngữ, nhưng thường ít cho ta thấy cách họ khai thác WordNet như
thế nào. Budanisky và Hirst đã đưa ra một khảo sát về các thuật toán này, bao
gồm các thuật toán của Hirst và St-Onge, thuật toán của Leacock và
Chodorow, thuật toán của Jiang và Conrath, thuật toán của Resnik và thuật
toán của Lin [2]. Dựa trên kết quả thực nghiệm, có thể thấy thuật toán của
Jiang và Conrath đưa ra độ tương đồng ngôn ngữ với độ chính xác cao nhất.
Rất tiếc các tác giả lại không cho biết cách làm của họ. Trong luận văn này về
cơ bản chúng tôi dựa trên nghiên cứu về thuật toán của Hirst và St-Onge [7].
Khi tìm kiếm quan hệ giữa hai từ, mỗi synset của từ đầu tiên phải được xem
xét cùng với mỗi synset của từ thứ hai, sau đó tìm kiếm một kết nối có thể
giữa một số synset của từ thứ nhất và một số synset của từ thứ hai.
Chương 3: Đối sánh tự động lược đồ XML
Võ Sỹ Nam. Luận văn cao học – ngành công nghệ thông tin
51
Hirst và St-Onge đưa ra ba mức quan hệ: rất mạnh, mạnh) và trung bình.
Quan hệ rất mạnh tương ứng với sự lặp lại từ (ví dụ author và authors, foot và
feet). Các quan hệ rất mạnh có trọng số cao. Hai từ có quan hệ mạnh nếu tồn
tại một liên kết ngang giữa các synset của chúng. Trong luận văn này, chúng
tôi giới hạn quan hệ mạnh trong các tiêu chí sau:
- Có một synset chung cho hai từ.
- Có một liên kết ngang giữa các synset của mỗi từ.
- Một trong các từ là một từ ghép và từ kia là một phần của từ ghép, và
có thể có bất kỳ loại liên kết nào giữa các synset liên kết mỗi từ.
Quan hệ mạnh có trọng số thấp hơn quan hệ rất mạnh. Không giống như
các quan hệ rất mạnh và mạnh, quan hệ trung bình có các trọng số khác nhau
phụ thuộc vào đường dẫn hiện có giữa các cặp synset. Ý tưởng của Hirst và
St-Onge trong việc đo độ quan hệ ngữ nghĩa đó là hai khái niệm là gần gũi về
ngữ nghĩa nếu các synset của chúng được kết nối bởi một đường dẫn không
quá dài và không thay đổi hướng quá thường xuyên. Họ cũng định nghĩa một
tập các đường dẫn được phép như sau: một đường dẫn được xem là được
phép nếu các liên kết tạo ra đường dẫn tuân theo ba điều kiện sau:
- Không có một hướng khác trước một liên kết lên (một khi ngữ cảnh
được đặc biệt hóa sử dụng một liên kết xuống hoặc ngang, không được mở
rộng ngữ cảnh sử dụng một liên kết lên).
- Không có nhiều hơn một thay đổi về hướng được phép (các thay đổi
hướng tạo thành các thay đổi ngữ nghĩa trong ngữ cảnh và do đó phải bị giới
hạn). Luật này có một ngoại lệ theo nghĩa một hướng ngang có thể được sử
dụng để tạo sự chuyển tiếp từ một hướng lên thành một hướng xuống.
- Độ dài đường dẫn được giới hạn trong một ngưỡng nào đó (nhìn chung
được lấy bằng bốn hoặc năm).
Chương 3: Đối sánh tự động lược đồ XML
Võ Sỹ Nam. Luận văn cao học – ngành công nghệ thông tin
52
Hình C.1 trong phụ lục C minh họa các ví dụ về đường dẫn được phép.
Để tính toán trọng số của quan hệ trung bình, đầu tiên chúng tôi nhận
dạng đường dẫn ngắn nhất giữa một cặp các synset. Nếu đường dẫn là không
được phép, thì trọng số gán cho quan hệ là NULL (tức là không có quan hệ).
Trong trường hợp khác, trọng số của đường dẫn và do đó độ tương đồng ngôn
ngữ được cho bởi công thức sau:
c – độ dài đường dẫn – k × số lần thay đổi hướng
Trong đó c và k là các hằng số với c = 8 và k = 1. Việc lựa chọn c và k là
từ thực nghiệm dựa trên các ví dụ đã cung cấp trong [2] trong đó các tác giả
so sánh một vài thuật toán đo khoảng cách ngữ nghĩa.
Bằng cách chuẩn hóa phép đo này, ta nhận được một hệ số ngôn ngữ
lsim, có phạm vi giữa [0, 1], trong đó 0 có nghĩa là không có quan hệ ngữ
nghĩa tồn tại giữa hai từ và 1 có nghĩa là giữa các từ rất tương đồng.
Mô tả chi tiết về thuật toán của Hirst và St-Onge có thể xem trong phụ
lục C. Hình C.2 trong phụ lục C minh họa các loại quan hệ ngữ nghĩa sử dụng
trong thuật toán này. Có thể sử dụng thuật toán tương tự cho tên kiểu. Để đơn
giản hóa vấn đề, trong luận văn này chúng tôi giả thiết rằng các nút có cùng
tên như kiểu của chúng.
3.2.3 Giải pháp của hệ thống Cupid
Trong phần trên, chúng tôi đã sử dụng WordNet làm nguồn từ vựng
nhằm so sánh tên các phần tử theo thuật toán của Hirst và St-Onge. Tuy
nhiên, trong thực tế các phần tử lược đồ thường có tên khác nhau do sử dụng
từ viết tắt, từ rút gọn, dấu chấm câu… Do đó, môđun xử lý độ tương đồng
ngôn ngữ cần phải giải quyết được vấn đề này.
Trong [11] các tác giả đã đề xuất một bước chuẩn hóa để giải quyết vấn
đề này. Đầu tiên họ thực hiện bước phân tích tên thành các token sử dụng dấu
Chương 3: Đối sánh tự động lược đồ XML
Võ Sỹ Nam. Luận văn cao học – ngành công nghệ thông tin
53
chấm câu, chữ hoa..., tiếp theo là họ chỉ ra từ viết tắt, từ rút gọn và cuối cùng
là loại bỏ giới từ, mạo từ, v.v... Trong mỗi bước này, họ sử dụng một từ điển
chuyên đề bao gồm cả ngôn ngữ chung lẫn các tham chiếu riêng cho lĩnh vực.
Về cơ bản, giải pháp của chúng tôi sử dụng ý tưởng này. Sau bước chuẩn hóa,
hệ thống Cupid còn thực hiện tiếp các bước như phân chia các từ thành danh
mục (nhằm giảm bớt các ứng viên đối sánh, tăng tốc độ cho pha đối sánh) và
thực hiện đối sánh ngôn ngữ bằng cách sử dụng các phương pháp đối sánh
xâu. Thay vì vậy, trong giải pháp của chúng tôi, tiến trình đối sánh được thực
hiện nhờ sử dụng thuật toán của Hirst và St-Onge đã mô tả ở trên.
Tuy vậy, cho dù dùng phương pháp nào đi nữa, đối sánh ngôn ngữ vẫn
có thể cho kết quả tương đồng cao ngay cả khi các nút không có sự tương ứng
ngữ nghĩa với nhau, do đó cần phải có phương pháp hiệu chỉnh sai lệch này.
Sau đây ta sẽ nêu các phương pháp đối sánh này.
3.3 Xét tính tương thích kiểu dữ liệu lược đồ XML và phân tích
phân cấp kiểu người thiết kế
3.3.1 Xét tính tương thích kiểu dữ liệu lược đồ XML
Để hiệu chỉnh bước đầu kết quả thu được từ pha đối sánh ngôn ngữ, các
tiếp cận hiện nay thường xem xét thêm các ràng buộc lược đồ. Một trong
những giải pháp thông dụng nhất là xét tính tương thích kiểu dữ liệu. Các
khuyến nghị lược đồ XML cung cấp khá nhiều kiểu dữ liệu nội tại và biểu
thức chính quy khác nhau [27], vì vậy có thể sử dụng các thông tin này để xây
dựng một bảng hệ số tương thích giữa các kiểu dữ liệu, kí hiệu là dsim. Các
kiểu dữ liệu lược đồ XML được phân thành nhiều danh mục (gọi là các kiểu
dữ liệu nguyên thủy) chẳng hạn như Duration, Boolean, String, Decimal, v.v..
Mỗi danh mục có một vài kiểu dữ liệu dẫn xuất (chẳng hạn integer là kiểu dữ
liệu dẫn xuất từ Decimal, và long là kiểu dữ liệu dẫn xuất từ integer). Hai
Chương 3: Đối sánh tự động lược đồ XML
Võ Sỹ Nam. Luận văn cao học – ngành công nghệ thông tin
54
kiểu dữ liệu được xem là tương đồng nhau nếu chúng thuộc cùng danh mục
kiểu dữ liệu, và sự tương thích kiểu dữ liệu của chúng phụ thuộc vào vị trí
tương ứng của chúng trong phân cấp kiểu dữ liệu lược đồ XML. Dựa trên
phân cấp kiểu dữ liệu lược đồ XML ta sẽ xây dựng một bảng tương thích kiểu
dữ liệu cho biết hệ số tương tự giữa hai kiểu dữ liệu đã cho (như một bảng đã
được xây dựng trong [11]). Ví dụ hệ số dsim giữa các kiểu int và short bằng
0,8 (do kiểu short được dẫn xuất từ kiểu int).
Độ tương thích kiểu dữ liệu thường được định nghĩa cho các nút nguyên
tố để đo độ tương đồng giữa các r
Các file đính kèm theo tài liệu này:
- 000000208336R.pdf