Ví dụ về ontology cho phương tiện giao thông

Một phần của tài liệu TÍCH HỢP THÔNG TIN KHÔNG THUẦN NHẤT VỀ NGỮ NGHĨA TRONG MÔI TRƯỜNG PHÂN TÁN (Trang 30)

thông tin về miền dữ liệu. F. Noy và các cộng sự [44] đã đưa ra một số lí do để xây dựng các ontology:

Để chia sẻ cho mọi người các hiểu biết chung về cấu trúc thông tin của một miền dữ liệu.

Ví dụ, một số trang web chứa các thông tin về y tế hoặc các dịch vụ y tế, nếu các trang web có thể chia sẻ và công bố các ontology cho các thuật ngữ họ sử dụng thì các agent có thể thu thập và tổng hợp các thông tin từ những trang web này dễ dàng.

Để tăng cường khả năng sử dụng lại các miền tri thức. Đây là mục đích cấp thiết của việc nghiên cứu và phát triển ontology.

Ví dụ như các mô hình cho các miền khác nhau đều yêu cầu biểu diễn khái niệm thời gian, đó là khoảng thời gian, thời điểm, các độ đo tương đối của thời gian. Nếu một nhóm nghiên cứu nào đó có thể xây dựng được một ontology về thời gian một cách chi tiết thì các nhóm nghiên cứu khác có thể sử dụng ontology này cho miền tri thức của họ.

Để làm rõ ràng các giả thiết trong các miền dữ liệu.

Tạo khả năng thay đổi các giả thiết khi tri thức về miền thay đổi

Để phân biệt tri thức miền với tri thức thực thi.

Là một ứng dụng thông thường của các ontology. Ở đây, ta có thể phân biệt được việc cấu hình một sản phẩm từ những thành phần riêng biệt theo một đặc tả và việc cài đặt một chương trình mà việc cấu hình độc lập với sản phẩm và các thành phần.

Để phân tích tri thức miền.

Việc phân tích tri thức miền là khả thi mỗi khi đặc tả về các thuật ngữ là có sẵn. Các phân tích hình thức thực sự có giá trị khi sử dụng lại và mở rộng các ontology.

Thông thường, việc phát triển một ontology tương tự như việc định nghĩa một tập dữ liệu và các cấu trúc của chúng dùng để thực thi một chương trình. Các phương pháp hoạt động, các ứng dụng độc lập miền và các agent phần mềm sử dụng ontology và các cơ sở tri thức được xây dựng từ các ontology như là dữ liệu cho việc thực thi. Trong môi trường phân tán, ontology được sử dụng để thuần nhất các nguồn dữ liệu ở mức độ ngữ nghĩa và hỗ trợ cho việc tích hợp các dữ liệu không thuần nhất.

2.1.2 Tích hợp các ontology

Trong phần đầu, chúng ta biết rằng ontology được sử dụng như một phương tiện để thuần nhất các nguồn dữ liệu ở mức ngữ nghĩa. Các nguồn dữ liệu phân tán và không thuần nhất đều xây dựng một ontology riêng biệt, việc tích hợp thông tin từ các nguồn dữ liệu dựa trên việc tích hợp các ontology liên quan đến các nguồn dữ liệu đó. Đại số quan hệ mở rộng với ontology được phát triển bởi Bonatti et al. [6] thu hút nhiều quan tâm nghiên cứu và phát triển trong vài năm gần đây (xem [7],[8]) được coi là nền tảng cho các nghiên cứu về việc tích hợp các nguồn dữ liệu không thuần nhất. Trong phần này, tác giả sẽ trình bày các kiến thức cơ bản cho việc tích hợp các ontology của các nguồn dữ liệu.

2.1.2.1 Một số ví dụ về các nguồn dữ liệu không thuần nhất

Xét một số ví dụ về các nguồn dữ liệu không thuần nhất về ngữ nghĩa được lưu trữ dưới dạng các cơ sở dữ liệu quan hệ.

Ví dụ 2.1: Xét ví dụ về cơ sở dữ liệu của công ty kinh doanh thiết bị xe máy trong phần mở đầu.

Một người dùng khi truy vấn hai nguồn dữ liệu này cần phải giải quyết các vấn đề về sự không thuần nhất về ngữ nghĩa sau đây:

 Nếu người dùng muốn tìm tất cả các bản ghi liên quan đến “Lốp sau”

tính “Thiết bị” và “Mặt hàng” là như nhau và “Lốp sau” cũng là

“Lốp 2.75”.

 Tương tự, nếu người dùng muốn tìm giá của tất cả các phần của “Phanh đĩa” thì hệ thống cần hiểu rằng “Đĩa phanh” là một phần của “Phanh đĩa”. Tương tự, “Hộp dầu” cũng là một phần của “Phanh đĩa”. Kết quả cần được trả về là những bản ghi liên quan đến “Phanh đĩa”, “Đĩa phanh” và “Hộp dầu”.

 Nếu người dùng muốn tìm tất cả các “Vành đúc” mà có giá thấp hơn 70 USD, trong trường hợp này, do D2 sử dụng VND làm đơn vị thì hệ thống cần tự động chuyển đổi từ VND sang USD.

Ví dụ trên cho thấy một số vấn đề nảy sinh khi tích hợp các thông tin không thuần nhất về ngữ nghĩa xuất phát từ các cơ sở dữ liệu khác nhau.

Ví dụ 2.2: Ví dụ này không chỉ cho thấy sự khác nhau về ngữ nghĩa trong các quan hệ (được biểu diễn bằng các bảng) mà là sự không thuần nhất trong cùng một quan hệ.

Một công ty bảo hiểm thông thường lưu trữ thông tin về các hợp đồng bảo hiểm. Điều đó cho phép công ty có thể theo dõi được việc chi trả bảo hiểm cho các khách hàng khi có sự cố xảy ra. Thông tin được đưa vào bởi người quản lí hợp đồng và có thể được nhập vào theo nhiều kiểu khác nhau qua mỗi năm. Nếu như có sự sát nhập của hai công ty bảo hiểm thì công ty bảo hiểm mới cần có được các thông tin về các hợp đồng bảo hiểm đã lưu. Do đó, họ cần phải truy vấn trên cả hai cơ sở dữ liệu. Hai bảng dữ liệu (bảng 2.1, bảng 2.2) chứa thông tin từ hai cơ sở dữ liệu của hai công ty trước khi sát nhập.

Trước khi truy vấn các bảng dữ liệu, ta thấy rằng Burglary và Mugging là các dạng của Theft. Tương tự, Arson là một kiểu của Fire, Burglary là một kiểu của Robbery và Robbery thì tương tự như Theft. Như vậy, các truy vấn thông tin về Theft cần có các bản ghi liên quan đến các khái niệm trên.

2.1.2.2 Định nghĩa hình thức của ontology

Phần này trình bày một cách hình thức các kiến thức cơ bản về ontology và các khái niệm cơ bản cho xây dựng đại số quan hệ mở rộng. Các định nghĩa được trình bày dựa trên đại số quan hệ mở rộng của P. Bonatti et al. [6].

Định nghĩa 1 ([6]): Cho S là tập khác rỗng và một quan hệ hai ngôi trên S (

S S) là một quan hệ thứ tự bộ phận nếu thỏa mãn các điều kiện sau: 1. Với aS a, a (tính phản xạ)

2. Với a b, S a; bvà bathì ab(tính phản xứng) 3. Với a b c, , S a; b b,   c a c(tính bắc cầu)

Khi đó, (S, ) được gọi là tập thứ tự.

Định nghĩa 2 ([6]): Cho hai thứ tự trên tập S, (S, 1) và (S, 2), (S, 1) được gọi là tốt hơn (S, 2) nếu và chỉ nếu (x, y S, x 1 y x 2 y).

Nếu (S, 1) tốt hơn (S, 2) và (S, 2) không tốt hơn (S, 1) thì chúng ta nói (S, 1)

tốt hơn hẳn (S, 2).

Bảng 2.1 Claims 1

ClaimID Type Cost

1 Burglary 2000 2 Theft 150 3 Mugging 860 4 Arson 1800

Bảng 2.2 Claims 2

ClaimNumber Type Value

1 Robbery 400

2 Fire 550

3 Auto_accident 500

Định nghĩa 3 ([6]): ( Phân cấp ) Cho (S, ) là một tập thứ tự. Phân cấp trên S là thứ tự (S, 1) sao cho các điều kiện sau thoả mãn:

(i) (S, 1) tốt hơn (S, )

(ii) (S, ) là bao đóng bắc cầu, phản xạ của (S, 1)

(iii) Không có thứ tự nào khác thoả mãn (i) và (ii) mà tốt hơn hẳn (S, )

Định nghĩa 4 ([6]):Cho là một tập hữu hạn các quan hệ và S là một tập các khái niệm nào đó. Một ontology đối với là một ánh xạ bộ phận từ đến các phân cấp cho S.

Một ontology liên quan đến S sẽ mô tả các quan hệ giữa các khái niệm trong S. Phân cấp trên S chính là biểu đồ Hasse nhằm biểu diễn thứ tự bộ phận trong một miền nào đó. Do đó, trong các ví dụ sau chúng ta thường xem phân cấp như là đồ thị.

Ví dụ 2.3: Xét tập S = {Phanh đĩa, Xe máy, Hộp dầu} với một thứ tự bộ phận phản ánh quan hệ “part-of ” nói rằng Phanh đĩa là một phần (part-of) của

Xe máy, Hộp dầu là một phần (part-of) của Xe máy, và Hộp dầu là một phần (part-of) của Phanh đĩa. Hơn nữa, mọi cái là thành phần (part-of) của chính nó. Như vậy, quan hệ “part-of”, kí hiệu là  có thể được biểu diễn bởi tập sau (S,) =

{(Phanh đĩa, Phanh đĩa),(Xe máy, Xe máy), (Hộp dầu, Hộp dầu),(Phanh đĩa, Xe máy),(Hộp dầu, Phanh đĩa),(Hộp dầu, Xe máy)}. Phân cấp tương ứng sẽ là: {(Phanh đĩa, Xe máy),(Hộp dầu, Phanh đĩa)}.

Ví dụ 2.4: Xét cơ sở dữ liệu về bảo hiểm với  = {is-a}. S1 là tập các khái niệm trong bảng 2.3 và S2 là tập các khái niệm trong bảng 2.4. Các ontology liên quan đến các bảng dữ liệu được biểu diễn như sau:

2.1.2.3 Tích hợp các ontology

Để có thể tích hợp được các ontology ta cần hiểu được mối quan hệ giữa các thuật ngữ trong cùng một ontology và các thuật ngữ thuộc các ontology khác nhau. Do vậy, chúng ta cần mô tả mối quan hệ giữa các khái niệm trong hai phân cấp.

Định nghĩa 5 ([6]): (Ràng buộc tương tác) Cho (Hi, i), 1 i n là n phân cấp khác nhau và i j. Khi đó (x : i = y : j ) hoặc ( x : i y : j ) hoặc ( x : i y : j ) hoặc ( x : i y : j ) được gọi là các ràng buộc tương tác.

Ràng buộc tương tác là sự đối sánh của một khái niệm trong quan hệ này với khái niệm trong quan hệ khác. Trong bài toán quản lí các thiết bị xe máy, Lốp sau:1 = Lốp 2.75:2 chỉ ra rằng Lốp sau ở trong quan hệ D1 và Lốp 2.75 ở trong D2 cùng chỉ một loại thiết bị.

Định nghĩa 6 ([6]): ( Tích hợp ) Cho (Hi, i), 1 i n là n phân cấp khác nhau và IC là một tập hữu hạn các ràng buộc tương tác. Một phân cấp (H, ) được gọi là tích hợp của (Hi, i), 1 i n , nếu và chỉ nếu có n ánh xạ 1, …, n từ các tập H1,…, Hn tương ứng vào tập H sao cho các điều kiện sau thỏa mãn:

1. ( i 1,...,n),xi yi( ) x  ( ).i y ( bảo toàn thứ tự ) is-a is-a Theft Burglary Mugging Arson

Hình 2.2. Ontology liên quan đến bảng dữ liệu Claims 1

is-a

Robbery

Burglary Auto_accident Fire

Hình 2.3. Ontology liên quan đến bảng dữ liệu Claims 2

2. ( x Hi)( y Hj), ( : x i op y j : )ICi( ) x opj( ).y (bảo toàn ràng buộc tương tác). Trong đó op là một trong các phép toán

=,   , ,

 

Như vậy, tích hợp hai phân cấp sẽ cho ta một phân cấp mới và mỗi phần tử của phân cấp mới nhất thiết đã được liên kết với các phần tử của các phân cấp ban đầu. Thông thường, khi tích hợp hai phân cấp ta dựa trên các ràng buộc tương tác. Các ràng buộc tương tác cho phép chúng ta xây dựng được các ánh xạ giữa các phần tử thuộc các phân cấp khác nhau.

Ví dụ 2.5 : Tích hợp hai phân cấp biểu diễn ở hình 2.2 và 2.3 dựa trên các ràng buộc tương tác Theft:1 = Robbery:2 và Arson:1 is-a Fire:2. Phân cấp tích hợp bao gồm các khái niệm Theft, Burglary, Mugging, Arson,

Auto_accident, Fire và các ánh xạ hỗ trợ tích hợp được xác định trong bảng 2.5:

1

 2

Burglary Burglary Robbery Robbery

Theft Theft Fire Fire

Mugging Mugging Auto_accident Auto_accident Arson Arson Burglary Burglary

Bảng 2.3 Các ánh xạ hỗ trợ tích hợp các ontology

Theft

Burglary Mugging Arson

Hình 2.4. Ontology tích hợp Claims 1 và Claims 2

2.1.3 Nguồn dữ liệu mở rộng với ontology

Trong phần 2.1.1 và 2.1.2, chúng ta đã trình bày định nghĩa về ontology và phương pháp tích hợp ontology. Phần này chúng ta sẽ trình bày về mối liên hệ giữa các nguồn dữ liệu với các ontology và các phép toán được cho phép bởi các nguồn dữ liệu.

Định nghĩa 7 ([6]): (Hàm chuyển đổi) Một hàm có dạng  12 2:dom( )1 dom( )2

ánh xạ các giá trị của 1 đến các giá trị của 2 được gọi là một hàm chuyển đổi từ

1

sang 2. Tập các hàm chuyển đổi thỏa mãn các điều kiện sau:

Với mọi kiểu  i, j tồn tại nhiều nhất một hàm chuyển đổi  i2 j

Với mọi kiểu  tồn tại  2

Nếu ta có  i2 j và  j2 k thì tồn tại hàm chuyển đổi  i2 k sao cho

2 2 2

i k i j j k

      , trong đó là phép hợp hàm thông thường.

Hàm chuyển đổi cho phép chuyển đổi giá trị từ thuật ngữ này sang thuật ngữ khác giữa các ontology. Trong ví dụ về cơ sở dữ liệu thiết bị xe máy, để chuyển đổi giá trị từ VND sang USD, ta có thể có hàm chuyển đổi VND2USD.

Định nghĩa 8 ([6]): Cho H là một phân cấp và là một kiểu trong phân cấp đó. Khi đó:

 

( ) ' | ' , ' ( )

H H

below     H    dom

biểu diễn tập các giá trị thuộc mức dưới của trong phân cấp H. Biểu diễn này giúp cho việc xác định trật tự của các thuật ngữ trong một ontology.

Định nghĩa 9 ([6]) :(Kiểu bao trùm tối thiểu) Với 1, 2là hai kiểu dữ liệu. Một kiểu dữ liệu được gọi là kiểu bao trùm tối thiểu của  1, 2 nếu

 12  ( là kí kiệu bao trùm )

Ví dụ 2.6:

Xét một ontology biểu diễn lượng mưa.

Ta có Below (Precipitation)H = {Rain,NoPre,Snow,LightRain, ModerateRain,HeavyRain,LightSnow,ModerateSnow,HeavySnow}.

Với X = Snow và Y = ModerateRain thì bao trùm tối thiểu của X và Y là

Precipitation.

Định nghĩa 10 ([6]):(Lược đồ) Cho {A ,A ,...,A }1 2 n là tập các thuộc tính của nguồn dữ liệu D và { , 1 2,..., }n là tập các kiểu dữ liệu tương ứng của các thuộc tính. Tập

1 1 2 2 n n

{A : , A : , ..., A : }   được gọi là lược đồ của nguồn dữ liệu D.

Định nghĩa 11 ([6]): (Tính tương thích, lược đồ chung nhỏ nhất) Hai lược đồ

1 1 1

1 {A : , A :1 1 2 2,..., A :n n }

S     và S2 {A :112, A :2 22,..., A :n n2 } được gọi là tương thích nếu 1

i

i2 có một kiểu chung nhỏ nhất i và tồn tại các hàm chuyển đổi

1

2

i i

   i22 i. Khi đó S {A :11, A :22,..., A :n n } được gọi là lược đồ chung nhỏ nhất.

Tính tương thích chỉ ra rằng nếu các nguồn dữ liệu có các lược đồ là tương thích với nhau thì ta có thể tích hợp các ontology liên quan đến các nguồn dữ liệu đó.

Precipitation

Rain NoPre Snow

Moderate Rain Light Rain Heavy Rain Moderate Snow Light

Snow Heavy Snow

Ví dụ 2.7:

Xét nguồn D1 (dữ liệu về thiết bị xe máy) có lược đồ S1 = {Thiết bị : String, Giá bán : Number, VAT : Number}, và lược đồ S2 = {Thiết bị : String, Giá bán : float, VAT : float}. Ta thấy S1 và S2 là tương thích vì kiểu Number và float có kiểu chung nhỏ nhất là Number. Ngoài ra, tồn tại hàm chuyển đổi Number2Number và float2Number nên lược đồ chung nhỏ nhất là S = {Thiết bị : String, Giá bán : Number, VAT : Number}.

Định nghĩa 12 ([6]): Một bộ ba (D,S,O) được gọi là nguồn dữ liệu mở rộng ontology nếu D là một nguồn dữ liệu (được biểu diễn dưới dạng bảng), O là một ontology, S {A :11, A :2 2,..., A :n n } là một lược đồ nguồn dữ liệu và thỏa mãn các điều kiện sau:

  1, 2,...,nO là các kiểu trong ontology O

DbelowO( )1 belowO( ) ...2  belowO( )n

2.1.4 Các phép toán mở rộng ontology

Cho (D S O1, 1, 1),...,(D S OK, K, K) là K nguồn dữ liệu mở rộng ontology và O là ontology tích hợp của O1,...,OK với tập các ánh xạ i |i1,K.

Định nghĩa 13 ([10]): (Các phép toán) Cho X là một tập dữ liệu (biểu diễn dưới dạng bảng) trong miền tích hợp. Ta định nghĩa  X O X S O, , 

Phép chiếu: Nếu X là kết quả của phép chiếu (PROJECT) lên một tập dữ liệu X’, được biểu diễn là

i1 ik

A ,...,A j

X = Π (X'), (1 i n, 1 j k)  và nếu

 X'O D',(A1: ,...,1 An:n),O thì  X O ( , , )D S O trong đó D là kết quả của phép chiếu chuẩn của D trên các thuộc tính ' Ai1,....,A và ik

1 1

( : ,..., n: n)

Phép chọn: Nếu X là kết quả của phép chọn (SELECT) trên một tập dữ liệu X’, được biểu diễn là X c(X') và nếu c là một điều kiện chọn trên  X'O ( ', , )D S O thì  X O ( , , )D S O , trong đó

 ' | ( ', , ), |: 

D t D D S O t c .

Phép tích đề các: Nếu X là kết quả của phép tích đề các (CROSS PRODUCT) của hai tập dữ liệu X1 và X2, được biểu diễn dưới dạng

1 2

XXX  i ( i, , )i

O

XD S O (với i = 1,2) thì  X O ( , , )D S O trong đó D là tích đề các chuẩn của D1 và D2; S được tính bằng việc ghép S1 và S2.

Phép kết nối: Nếu X là kết quả của phép kết nối (JOIN) hai tập dữ liệu X1 và X2, chúng ta có thể biểu diễn phép kết nối là sự kết hợp của phép chọn và phép tích đề các, XX1X2 c(X1X2), bởi vậy ta có thể sử

Một phần của tài liệu TÍCH HỢP THÔNG TIN KHÔNG THUẦN NHẤT VỀ NGỮ NGHĨA TRONG MÔI TRƯỜNG PHÂN TÁN (Trang 30)