1. Trang chủ
  2. » Luận Văn - Báo Cáo

CƠ SỞ DỮ LIỆU SUY DIỄN

26 1 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Cơ sở dữ liệu suy diễn
Tác giả Đỗ Phúc Trường
Trường học Đại học Công nghệ thông tin
Chuyên ngành Cơ sở dữ liệu
Thể loại Bài giảng
Định dạng
Số trang 26
Dung lượng 432,73 KB

Nội dung

Công Nghệ Thông Tin - Công nghệ thông tin - Công nghệ thông tin 1 Bài 1: Cơ sở dữ liệu suy diễn PGS.TS. Đỗ Phúc Trường Đại học Công nghệ thông tin CuuDuongThanCong.com https:fb.comtailieudientucntt 2 Nội dung  Cơ sở dữ liệu suy diễn (CSDLSD)  Dạng luật trong CSDLSD  Vị từ được suy và vị từ nền  Luật không đệ qui  Tạo dữ liệu qua phép AND, OR, NOT  Suy diễn với luật không đệ qui  Suy diễn với luật đệ qui CuuDuongThanCong.com https:fb.comtailieudientucntt Kiến thức cần nắm  Lý thuyết CSDL quan hệ  Lập trình logic 3 CuuDuongThanCong.com https:fb.comtailieudientucntt 4 Cơ sở dữ liệu suy diễn  Cơ sở dữ liệu suy diễn tích hợp cơ sở dữ liệu và lập trình logic.  Lập trình logic có thế mạnh là khả năng diễn đạt tri thức, ràng buộc toàn vẹn.  Cơ sở dữ liệu có khả năng quản trị dữ liệu, bảo mật dữ liệu.  Cơ sở dữ liệu suy diễn có khả năng sử dụng các tính năng của lập trình logic để thực hiện các suy diễn nhằm tạo ra thông tin mới dựa trên các luật suy diễn và dữ liệu được lưu trữ trong cơ sở dữ liệu. CuuDuongThanCong.com https:fb.comtailieudientucntt 5 Dạng luật trong CSDLSD  Luật có dạng tổng quát: H: - G1 G2 … Gk  Với H là phần đầu hay kết luận của luật.  G1 G2 … Gk là phần thân của luật.  Các Gk là đích con(sub goal) hay tiền đề của luật. CuuDuongThanCong.com https:fb.comtailieudientucntt 6 Luật suy diễn  parent(X,Y): - father(X,Y) mother(X,Y)  Với father, mother, parent là các vị từ X,Y là các biến.  Mỗi vị từ p(X,Y,Z) ứng với một quan hệ P(X,Y,Z) trong CSDL CuuDuongThanCong.com https:fb.comtailieudientucntt 7 Vị từ được suy và vị từ nền  Vị từ được suy IDB (intensional predicate): là vị từ xuất hiện trong phần kết luận của luật. Vị từ được suy cũng có thể xuất hiện trong phần thân của luật.  Vị từ nền EDB (extensional predicate): ứng với một quan hệ được lưu trữ trong CSDL.  Một vị từ có thể nhận được giá trị đúng hay sai. Nếu p là vị từ nền và P là quan hệ nền thì p(a,b,c) với a, b, c là đối sẽ có giá trị đúng nếu bộ (a,b,c) sẽ tạo được trong tiến trình suy diễn. CuuDuongThanCong.com https:fb.comtailieudientucntt 8  Vị từ ở phần đầu không xuất hiện trong phần thân của luật.  Ví dụ:  sibling(X,Y): - parent(Z,X) mother(Z,Y). Luật không đệ qui CuuDuongThanCong.com https:fb.comtailieudientucntt 9 Luật đệ qui  Vị từ ở phần đầu xuất hiện trong phần thân của luật.  Ví dụ:  ancestor(X,Y): - parent(X,Y).  ancestor(X,Y): - parent(X,Z) ancestor(Z,Y) CuuDuongThanCong.com https:fb.comtailieudientucntt 10 Tạo dữ liệu qua phép AND Phép AND() được xây dựng trên cơ sở phép kết và phép chiếu của đại số quan hệ.  Với luật t(a,b,d,e):- r(a,b,c) s(c,d,e), quan hệ trong T(a,b,d,e) ứng với vị từ t(a,b,d,e):được tính theo cách sau:  T(a,b,d,e) = a,b,d,e ( R(a,b,c) ⋈ S(c,d,e) ).  Nếu dùng câu SQL, ta có câu lệnh tương ứng:  SELECT r.a, r.b, s.d, s.e  FROM r, s  WHERE r.c = s.c. CuuDuongThanCong.com https:fb.comtailieudientucntt 11 Tạo dữ liệu qua phép OR  Phép OR () được xây dựng trên cơ sở phép hợp sau đây: t(a,b,c): - r(a,b,c) s(a,b,c)  Quan hệ T(a,b,c) trong t(a,b,c) được tính theo cách: T(a,b,c) = R(a,b,c)  S(a,b,c)  Nếu dùng SQL, ta có câu lệnh tương ứng :  SELECT  FROM r  UNION SELECT FROM s INTO t CuuDuongThanCong.com https:fb.comtailieudientucntt 12 Tạo dữ liệu qua phép NOT ()  Phép not() được xây dựng trên cơ sở phép hiệu, ví dụ:  t(a,b,c): - r(a,b,c) (s(a,b,c))  Quan hệ được suy T(a,b,c) của vị từ t(a,b,c) được tính theo cách sau:  t(a,b,c) = r(a,b,c) \ s(a,b,c)  Nếu dùng SQL, ta có thể cài đặt như sau:  SELECT a, b, e  FROM r  WHERE a NOT IN (SELECT a FROM s) CuuDuongThanCong.com https:fb.comtailieudientucntt 13 Suy diễn với luật không đệ qui  So khớp và đồng nhất biến: So sánh các thành phần để tìm vị từ và sự kiện trong tiến trình suy d...

Trang 1

Bài 1:

Cơ sở dữ liệu suy diễn

PGS.TS Đỗ PhúcTrường Đại học Công nghệ thông tin

Trang 2

Nội dung

 Cơ sở dữ liệu suy diễn (CSDLSD)

 Dạng luật trong CSDLSD

 Vị từ được suy và vị từ nền

 Luật không đệ qui

 Tạo dữ liệu qua phép AND, OR, NOT

 Suy diễn với luật không đệ qui

 Suy diễn với luật đệ qui

Trang 3

Kiến thức cần nắm

 Lý thuyết CSDL quan hệ

 Lập trình logic

Trang 4

Cơ sở dữ liệu suy diễn

 Cơ sở dữ liệu suy diễn tích hợp cơ sở dữ liệu

Trang 5

G1 & G2 … & Gk là phần thân của luật

Các Gk là đích con(sub goal) hay tiền

đề của luật

Trang 6

Luật suy diễn

Với father, mother, parent là các vị

từ X,Y là các biến.

Mỗi vị từ p(X,Y,Z) ứng với một quan hệ

P(X,Y,Z) trong CSDL

Trang 7

Vị từ được suy và vị từ nền

Vị từ được suy IDB (intensional predicate): là vị

từ xuất hiện trong phần kết luận của luật Vị từ

được suy cũng có thể xuất hiện trong phần thân của luật.

Vị từ nền EDB (extensional predicate): ứng với

một quan hệ được lưu trữ trong CSDL

 Một vị từ có thể nhận được giá trị đúng hay sai

Nếu p là vị từ nền và P là quan hệ nền thì p(a,b,c) với a, b, c là đối sẽ có giá trị đúng nếu bộ (a,b,c)

sẽ tạo được trong tiến trình suy diễn.

Trang 8

 Vị từ ở phần đầu không xuất hiện trong

phần thân của luật

sibling(X,Y): - parent(Z,X) & mother(Z,Y).

Luật không đệ qui

Trang 10

Tạo dữ liệu qua phép AND

Phép AND(&) được xây dựng trên cơ sở phép

kết và phép chiếu của đại số quan hệ

Với luật t(a,b,d,e):- r(a,b,c) & s(c,d,e),

quan hệ trong T(a,b,d,e) ứng với vị từ

t(a,b,d,e):được tính theo cách sau:

S(c,d,e) ).

 Nếu dùng câu SQL, ta có câu lệnh tương ứng:

SELECT r.a, r.b, s.d, s.e

WHERE r.c = s.c.

Trang 11

Tạo dữ liệu qua phép OR

 Phép OR (|) được xây dựng trên cơ sở phép hợp sau đây:

t(a,b,c): - r(a,b,c) | s(a,b,c)

 Quan hệ T(a,b,c) trong t(a,b,c) được tính theo cách:

T(a,b,c) = R(a,b,c)  S(a,b,c)

 Nếu dùng SQL, ta có câu lệnh tương ứng :

 SELECT *

 FROM r

 UNION SELECT * FROM s INTO t

Trang 12

T ạo dữ liệu qua phép NOT ()

Phép not() được xây dựng trên cơ sở phép

hiệu, ví dụ:

Quan hệ được suy T(a,b,c) của vị từ

t(a,b,c) được tính theo cách sau:

 Nếu dùng SQL, ta có thể cài đặt như sau:

SELECT a, b, e

WHERE a NOT IN (SELECT a FROM s)

Trang 13

Suy diễn với luật không đệ qui

 So khớp và đồng nhất biến: So sánh các

thành phần để tìm vị từ và sự kiện trong tiến trình suy diễn

 Sau khi so khớp sẽ xảy ra tiến trình đồng

nhất biến theo nghĩa thay thế biến bằng một giá trị cụ thể

 Xét hai luật sau:

 r1: grandfather(X,Y): -father(X,Z) &

parent(Z,Y)

Trang 14

So khớp và đồng nhất biến

 Quan hệ Father(A,B), Mother(A,B) được

mô tả bằng vị từ father(A,B),

mother(A,B) (hay EDB)

 Từ các vị từ ngoài, nhờ các luật suy

diễn chúng ta có thể tạo các quan hệ

cho các IDB là Parent(A,B) hay

grandfather(A,B).

Trang 15

Đồ thị suy diễn

Có thể mô tả các luật suy diễn bằng đồ thị suy

diễn Ví dụ với hai luật trên ta có thể tạo đồ thị

dạng cây suy diễn ở hình sau:

Trang 16

Tiến trình suy diễn

 Trong tiến trình suy diễn để tạo quan

hệ cho vị từ được suy

grandfather(X,Y)

 Cần tạo các quan hệ cho các vị từ

father(X,Z) và parent(Z,Y) Tìm các

sub goal

Trang 17

Tiến trình suy diễn (tt)

Do father(X,Z) là quan hệ nền nên chỉ cần thẩm định parent(Z,Y) bằng cách so khớp

Trang 18

Tiến trình suy diễn (tt)

Từ quan hệ father(F,C), chúng ta có

các đồng nhất biến sau cho

father(X,Z) và father(Z,Y).

FATHER (F C ) father( X Z ) father( Z Y )

 an son an son an son

 loc vinh loc vinh loc vinh

Trang 19

Phân giải luật không đệ qui

Có hai bước chính là:

 Tạo cây suy diễn theo các luật

 Duyệt cây để thẩm định và tạo sinh dữ liệu cho vị từ được suy.

 Với hai luật:

r1: sibling(X,Y):- parent(X,Z) &

parent(Z,Y) & (X<>Y)

Trang 20

Phân giải luật không đệ qui (tt)

Vị từ được suy sibling(X,Y) với các

đích sibling(A,B) sẽ được thẩm định

như sau:

 Tìm luật so khớp được với đích và thực hiện đồng nhất biến.

 Tạo cây con có gốc chính là đích của

bài toán Xử lý đệ qui với các đích con

là các lá của cây con vừa mới tạo được Nếu vị từ trong lá là vị từ nền thì không thể mở rộng được cây con

Trang 21

Đồ thị suy diễn

Trang 22

Tạo ra các quan hệ IDB trên đồ thị suy diễn

 Sau khi đã tạo xong đồ thị suy diễn, duyệt

cây để tạo sinh dữ liệu cho các vị từ được

suy

Ý tưởng của thuật toán như sau:

 Tìm luật có phần đầu so khớp được với đích

 Tạo dữ liệu cho các vị từ trong phần thân của luật

 Thực hiện các phép toán logic để tạo dữ liệu cho vị từ được suy

Trang 23

Tạo ra các quan hệ IDB trên đồ thị suy diễn (tt)

Trang 24

Suy diễn với luật đệ qui

 Xét hai luật:

 r1: ancestor(X,Y) :- parent(X,Y)

 r2: ancestor(X,Y) :- parent(X,Z) & ancestor(Z,Y)

 Với parent(X,Y) là vị từ nền, ancestor(X,Y) là vị từ được suy và các luật có dạng đệ qui Quan hệ

parent(X,Y) ứng với các bộ sau đây:

 parent(X,Y)={(j,f)(j,h)(k,g)(k,i)(f,c)(f,e)(g,c)(h,d)(i,d) (c,a)(d,a)(d,b)(e,b)}

 Với đích cần tìm là query parent(j,W) theo nghĩa j là

tổ tiên của ai? Một phần của cây suy diễn cho các

luật và đích nêu trên được trình bày ở hình 5.4.

Trang 25

Tiến trình mở rộng cây suy diễn

Trang 26

Tạo dữ liệu cho các quan hệ

Ngày đăng: 05/03/2024, 13:57

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w