Tiêu chuẩn phân loại

Một phần của tài liệu Tìm hiểu vể đối sánh lược đồ và xây dựng ứng dụng VNMATCH (Trang 29)

4 Ứng dụng của bài toán đối sánh lược đồ

2.1 Tiêu chuẩn phân loại

Bài toán đối sánh lược đồ đã được nghiên cứu trong một thời gian dài, và đã có nhiều ứng dụng cụ thể áp dụng bài toán này.

Hình 3 minh họa các phương pháp đối sánh lược đồ đã được nghiên cứu và phát triển trong các ứng dụng cụ thể.

Ngô Văn Quân, lớp cao học CNTT 2004

Chúng ta phân biệt các phương pháp đối sánh dựa trên phương pháp tiếp cận mà chúng sử dụng

Schema-based ›‹ Instance-based: Schema-based chỉ sử dụng các

thông tin chứa trong lược đồ như metadata, name, type, description... Còn Instance-based sử dụng dữ liệu để trích lọc ngữ nghĩa (contents)

Element-based ›‹ Structural-based: Element-based là quá trình đối

sánh có thể thực hiện trên từng phần tử trong lược đồ một cách độc lập, ví dụ như các thuộc tính (attributes). Structural-based thực hiện đối sánh có sự kết hợp các phần tử lại với nhau.

Linguistic ›‹ Constraint: Đối sánh có thể sử dụng cách tiếp cận ngôn ngữ như so sánh các thuộc tính name, description .. hoặc sử dụng cách tiếp cận ràng buộc như xem xét cả ràng buộc định nghĩa trên các phần tử như kiểu dữ liệu, unique, key…

Hybrid ›‹ Composite: Để có một kết quả đối sánh tốt hơn người ta thường kết hợp một vài cách tiếp cận với nhau. Các cách tiếp cận này có thể được thực hiện trong một bộ đối sánh hybrid hoặc kết hợp các kết quả đối sánh của các cách tiếp cận độc lập (composite)

2.2 Đối sánh da trên lược đồ (schema-based)

Phương pháp đối sánh dựa trên lược đồ chỉ xem xét các thông tin về lược đồ, tùy thuộc vào việc sử dụng ngôn ngữ định nghĩa lược đồ các ta có các thuộc tính khác nhau của phần tử lược đồ như name, description, data type, constraints, .. và các quan hệ giữa chúng. Tiếp theo tôi trình bày về bộ đối sánh dựa trên ngôn ngữ và ràng buộc, phương pháp tiếp cập chung đối với mức element để so sánh các thuộc tính của các phần tử lược đồ để xác định độ tương đồng giữa chúng.

Ngô Văn Quân, lớp cao học CNTT 2004

2.2.1Phương pháp tiếp cn da trên ngôn ng (linguistic)

Phương pháp này chủ yếu xem xét các thuộc tính dạng chuỗi ký tự của các phần tử lược đồ như name, description.Thuộc tính name có thể được so sánh qua 2 dạng là cú pháp (syntactic) và ngữ nghĩa (semantic).

Đối sánh thuật ngữ name dựa trên cú pháp là tính toán độ tương đồng chỉ dựa trên các chuỗi biểu diễn name. Có nhiều thuật toán đã được phát triển ứng dụng cho các lĩnh vực khác như sửa lỗi chính tả (spelling correction), thu thập thông tin … Trong đó đặc biệt 3 thuật toán sau: EditDistance, N-Gram, SoundEx đã được áp dụng vào bài toán đối sánh lược đồ.

• EditDistance (Levenstein):Sử dụng kỹ thuật quy hoạch động, độ tương đồng của 2 chuỗi được tính từ số lần thực hiện các thao tác: xóa, thêm, thay thế của một ký tự cần thiết để chuyển một chuỗi này thành chuỗi kia. • N-Gram: Chuỗi được so sánh theo tập n-gram của nó. Ví dụ chuỗi doc và

document là tương tự theo tập tri-gram, {doc} và {doc,ocu,cum,ume,men,ent} chia sẻ phần tử doc.

• SoundEx: Phương pháp này tính độ tương đồng âm giữa các name tương ứng với mã SoundEx. Phương pháp này hiệu quả cho các từ được viết khác nhau có khả năng giống nhau,ví dụ document, documentation.

Đối sánh dựa trên ngữ nghĩa sử dụng các quan hệ về mặt thuật ngữđể ước lượng độ tương đồng giữa các name như synonymy, hypernymy, hyponymy. ví dụ từ Car và automobile là đồng nghĩa nên tương tự nhau. Cách tiếp cận này cần trợ giúp của các thông tin hỗ trợ như từ điển, thesaurus, ontology hoặc các bảng định nghĩa từđồng nghĩa cho các ngôn ngữ khác nhau.

Ngoài ra trên thực tế các lược đồ còn có nhiều sự hỗn tạp mà chúng thường gặp như:

• Từ được ghép bởi nhiều từ khác: Ví dụ Org_Sender. • Từ được viết gọn lại: Ví dụ Org có nghĩa là Organization. • Từ có nhiều nghĩa.

Ngô Văn Quân, lớp cao học CNTT 2004

2.2.2Phương pháp tiếp cn da trên ràng buc

Các lược đồ thường chứa các thông tin ràng buộc như size, data type, key,

range, unique… cho mỗi phần tử. Nếu các thông tin này xuất hiện trong cả hai lược đồ thì nó sẽ được khai thác để ước lượng độ tương đồng. Ví dụ có thể tính toán độ tương đồng giữa hai phần tử dựa trên data type, key…

Đối với các thông tin này, cách tiếp cận chung là tạo một bảng trong đó chứa hệ số tương tự của các ràng buộc. Ví dụ như kiểu String và kiểu varchar là hoàn toàn tương tự nhau.

2.2.3Phương pháp tiếp cn da trên cu trúc

Phương pháp tiếp cận này khai thác các quan hệ giữa các phần tử và đối sánh kết hợp các phần tử xuất hiện trong cùng một cấu trúc. Phụ thuộc vào các ngôn ngữ mô tả lược đồ khác nhau mà có các kiểu quan hệ giữa các phần tử khác nhau. Ví dụ như các quan hệ is-a/part-of, hoặc các ràng buộc tham chiếu. Thông thường lược đồ được biểu diễn dưới dạng đồ thị (có hướng hoặc vô hướng). Để xác định độ tương đồng giữa các phần tử người ta thường sử dụng khái niệm phần tử hàng xóm (element neighborhood) để hạn chế phạm vi khi so sánh các phần tử.

2.3 Đối sánh da trên d liu

Phương pháp này duyệt qua các bản ghi dữ liệu để xác định sự tương ứng và được chọn khi các thông tin trong lược đồ bị giới hạn hoặc trong trường hợp dữ liệu được biểu diễn dưới dạng bán cấu trúc. Trong trường hợp đặc biệt không có lược đồ người ta phải xây dựng nó từ các dữ liệu đã có, trường hợp này người ta phải sử dụng các kỹ thuật được gọi là trích lọc lược đồ. Ngay cả khi có lược đồ thì thông tin về dữ liệu cũng có thể được xem xét để tăng khả năng khai thác ngữ nghĩa trong lược đồ

Đối với phương pháp này, kích thước dữ liệu đầu vào bài toán lớn hơn nhiều so với lược đồ nên thời gian thực hiện đối sánh cũng là một trong những vấn đề cần quan tâm.

Ngô Văn Quân, lớp cao học CNTT 2004

2.4 Đối sánh kết hp

Đối sánh chỉ sử dụng một phương pháp tiếp cận sẽ không thích hợp để cho ra một kết quả tốt với sự đa dạng của lược đồ. Vì vậy hầu hết các hệ thống đối sánh lược đồ hiện tại đều kết hợp sử dụng nhiều phương pháp đối sánh. Đối sánh kết hợp có thể được thực hiện theo hai cách khác nhau là hybrid hoặc composite. Hybrid tích hợp nhiều cách tiếp cận vào trong engine trong khi composite kết hợp kết quả của nhiều cách tiếp cận độc lập lại với nhau. Trong hầu hết các hệ thống có sử dụng đối sánh lược đồ đều sử dụng đối sánh kết hợp (Cupid)

2.5 Match Cardinality

Kết quả đối sánh giữa hai lược đồ S1 và S2 là tập các co-element giữa các phần tử của nó, một phần tử S1 (S2) có thể tồn tại trong nhiều co-element. Hơn nưa, một hay nhiều phần tử S1 có thể tương đương với một hoặc nhiều phần tử của S2. Vì vậy chúng ta có các quan hệ về số lượng 1:1. 1:n, n:1, m:n .

Cardinality s (S1) t (S2)

1:1 Price Cost Price=Cost

n:1 FirstName, LastName Name Concat(FirstName, LastName) = Name 1:n Name FirstName, LastName Split(Name) = {FirstName, LastName} m:n P.PersName, P.DeptNoD.DeptNo, D.DeptName A.Person, A.Department SELECT P.PersName, D.DeptNameFROM P, D WHERE P.DeptNo=D.DeptNo = {A.Person, A.Department} Bảng 1: Đối sánh dựa trên số lượng phần tử

Ngô Văn Quân, lớp cao học CNTT 2004

2.6 Các h s mc định trong bài toán đối sánh

Trong các phương pháp đối sánh đã trình bày ở trên trong các dự án cụ thể đều có sử dụng các hệ số mặc định để chỉ ra sự tương tự giữa các phần tử theo các tiêu chí đặc biệt. Ví dụ bảng hệ số tương tự giữa các phần tử khi so sánh các kiểu dữ liệu của chúng với nhau, với tiêu chí này người ta không xây dựng bất cứ thuật toán nào mà thường sử dụng các hệ số được định nghĩa sẵn. Ngoài ra còn các hệ số mặc định để chỉ ra độ ưu tiên của một thuật toán so với thuật toán khác, ví dụ độ ưu tiên của mức ngôn ngữ so với độ ưu tiên của mức cấu trúc.

Type(s) Type(t) Datatype_match(s,t)

string string 1.0 string date 0.2 decimal float 0.8 float float 1.0 float integer 0.9 … … …

Có một số phương pháp để xây dựng bảng hệ số như trên nhưng phương pháp thường được các chuyên gia sử dụng là dựa vào thực nghiệm. Quá trình xây dựng các hệ số được thực hiện theo các bước sau:

1. Thực hiện đối sánh bằng tri thức chuyên gia, được kết quả là một tập hợp các ánh xạ giữa các phần tử của hai lược đồ Sexp kết quả thực tế mà bài toán cần hướng tới).

2. Thực hiện đối sánh tự động với hai lược đồ và cũng thu được tập hợp các ánh xạ giữa các phần tử của hai lược đồ Sauto.

3. Sẽ có sự khác nhau giữa tập hợp ánh xạ do chuyên gia và tập ánh xạ do máy thực hiện. Các hệ số Wdefault sẽ được điều chỉnh sao cho tập Sauto giống với tập Sexp nhất có thể.

Ngô Văn Quân, lớp cao học CNTT 2004

Hình 2-3: Xây dựng các hệ số ưu tiên

Các hệ số thu được có thể được áp dụng cho nhiều bài toán khác nhau, thuật toán khác nhau.

3 Các phương pháp đánh giá h thng đối sánh

Để đánh giá kết quả của các hệ thống đối sánh lược đồ chúng ta có thể sử dụng các phương pháp sau đây

1. So sánh kết quả đối với kết quả đối sánh của các chuyên gia. Đây là một phương pháp khá hiệu quả và nó thường được sử dụng để xây dựng các hệ số ưu tiên trong các thuật toán đối sánh. Các hệ số được điều chỉnh sao cho kết quả tự động bằng máy với kết quả của chuyên gia giống nhau nhất. Thực hiện với nhiều lược đồ sẽ thu được các hệ số thực nghiệm tối ưu nhất.

2. So sánh kết quảđối sánh với kết quả của các hệ thống khác.

3. Đánh giá tự động: Ký hiệu B là tập các ánh xạ đúng (ánh xạ đúng là ánh xạ do chuyên gia thực hiện), C: Tập các ánh xạ sai, A tập ánh xạ đúng

Ngô Văn Quân, lớp cao học CNTT 2004

nhưng không được thuật toán tìm thấy và D là tập ánh xạ sai được thuật toán loại bỏ

Hình 2-4: Đánh giá hệ thống đối sánh

Ta có hai công thức sau để ước lượng hiệu quả của thuật toán đối sánh • Cho biết sự tin cậy của thuật toán đối sánh

Precision= C B B + , • Cho biết phần trăm của các ánh xạ hợp lệ (có giá trị) Recall= A B B +

Khi tập A và tập C không tồn tại thì Precision và Recall có giá trị 1. Tuy nhiên một giá trị Recall hoặc Precision thì không thể ấn định được chất lượng của thuật toán đối sánh.

Như vậy cần phải xem xét các phương pháp kết hợp hai giá trị trên đối lại với nhau. Có một số phương pháp kết hợp đã được xây dựng sau

1. FMeasure(α ) được mô tả trong [9]: FMeasure(α)= recall precision recall precision C B A B * * ) 1 ( * * * ) 1 ( −α + +α = −α +α

Trong đó 0<α <1 cho phép các giá trị thể hiện sự quan trọng khác nhau đối với Precision và Recall. FMeasure(α ) hội tụ về Precision khi α=1 và hội tụ về Recall khi α =0

Ngô Văn Quân, lớp cao học CNTT 2004

2. FMeasure : Khi Precision và Recall được xem có độ quan trọng bằng nhau ta có công thức sau FMeasure= recall precision recall precision C B B A B + = + + + * * 2 * 2

3. Overall: Đây là công thức được nêu trong [10] và công thức này được nhắm vào chính các ứng dụng đối sánh lược đồ Overall= 1 *(2 1 ) precision recall B A C B B A C A − = + − = + + −

Để so sánh hai phương pháp FMeasure và Overall ta có hình sau. Nhìn vào đồ thị ta thấy FMeasure tối ưu hơn so với Overall. Với cùng giá trị của Precision và Recall thì FMeasure cao hơn so với Overall. Overall nhạy cảm với biến Precision hơn. Khi Precision=0,5 thì Overall=0;

Ngô Văn Quân, lớp cao học CNTT 2004

Chương 3 Thiết kế h thng đối sánh lược đồ.

1 Kho sát

Hiện nay các công ty, tổ chức đều có các cơ sở dữ liệu chưa các thông tin quản lý, tác nghiệp điều hành. Đối với các công ty, hoặc các tổ chức có qui mô lớn, dữ liệu phân tán trên cả mặt logic và vật lý. Các tổ chức này thường dùng các hệ quản trị cơ sở dữ liệu và hệ thống phần mềm khác nhau để quản lý cơ sở dữ liệu, điều này dẫn đến việc tích hợp dữ liệu các cơ sở dữ liệu này thành một thể thống nhất gặp rất nhiều khó khăn vì sự hỗn tạp của dữ liệu.

Các hệ thống cơ sở dữ liệu thường được dùng bao gồm: Lotus notes, MS SQL Server, Oracle, MySQL. Trong hình dưới đây minh họa sự hỗn tạp của các nguồn dữ liệu văn bản, đây là một mô hình đang được áp dụng trong các tổ chức ở Việt Nam hiện nay.

Ngô Văn Quân, lớp cao học CNTT 2004

Organization 3 Organization 2

Organization 1

Domino serverSQL Oracle

Schema1 Schema2 Schema3

E-docman App

E-docman

App E-docman App

Mediator Local schema Local schema Global schema Query Result Hình 3-1: Sự hỗn tạp của các nguồn dữ liệu

Hiện tại nhu cầu về bài toán tích hợp dữ liệu (Data integration) hoặc chuyển đổi dữ liệu (Data translation) một cách tự động hoặc bán tự động là thực sự cần thiết. Trên thực tế các công ty hay tổ chức hiện nay khi xây dựng các ứng dụng có sử dụng dữ liệu đã có sẵn thì thường phải xây dựng một công cụ với các thao tác thủ công (manual) để tiến hành chuyển đổi hoặc tích hợp dữ liệu cũ vào ứng dụng mới. Những thao tác thủ công sẽ không lợi ích về mặt kinh tế cũng như

Ngô Văn Quân, lớp cao học CNTT 2004

quá trình xử lý sẽ xuật hiện các lỗi thao tác bằng tay. Như vậy người ta cần phải xây dựng các mô hình tự động hoặc bán tự động cho bài toán này để giảm thiểu tối đa các thao tác thủ công.

Ngô Văn Quân, lớp cao học CNTT 2004

2 Gii thiu

Trong hình dưới đây là hai lược đồ về cơ sở dữ liệu văn bản. chúng ta có thể nhận ngay ra các xung đột trong hai lược đồ này. Vấn đề đặt ra bây giờ là xử lý các xung đột đó một cách tự động nhiều nhất các thao tác có thể.

Hình 3-2:Lược đồ văn bản

2.1 Gii thiu bài toán đối sánh lược đồ.

Đối sánh (Match) là thao tác xử lý 2 lược đồ đầu vào và cho đầu ra một ánh xạ các phần tử phù hợp giữa hai lược đồ. Đối sánh lược đồ là bước khó trong nhiều ứng dụng: Trong Thương mại điện tử, trợ giúp ánh xạ các message giữa các định dạng XML khác nhau, trong Datawarehouse, giúp ánh xạ dữ liệu nguồn vào trong các lược đồ của Warehouse…

2.2 X lý lược đồ trong tiếng Vit

Trên thực tế trong các ứng dụng về cơ sở dữ liệu ở Việt Nam hiện nay, có rất nhiều các lược đồ được thiết kế sử dụng tiếng Việt, các thuộc tính định danh (identify name) thường sử dụng tiếng Việt không dấu để biểu diễn, còn các các mô tả thuộc tính có thể là tiếng Việt có dấu hoặc không có dấu. Ngoài ra các lược đồ này còn kết hợp cả tiếng Anh, như vậy việc xử lý các lược đồ này còn gặp rất

Ngô Văn Quân, lớp cao học CNTT 2004

nhiều khó khăn do có quá nhiều các xung đột về ngữ nghĩa, từ vựng, sự hạn chế của các giải thuật xử lý ngôn ngữ cho tiếng Việt …

Dựa trên những thuật toán xử lý cho các thứ tiếng khác ta cũng hoàn toàn có thể xây dựng được thuật toán xử lý cho tiếng Việt, nếu ta có được các bộ từ điển như tiếng Anh.

Tôi đề xuất một vài phương pháp tiếp cận cho tiếng Việt trong bài toán đối sánh

Một phần của tài liệu Tìm hiểu vể đối sánh lược đồ và xây dựng ứng dụng VNMATCH (Trang 29)

Tải bản đầy đủ (PDF)

(85 trang)