1 / 28

Trần Tuấn Minh, Nguyễn Minh Hiệp Khoa Công nghệ Thông tin – Đại học Đà Lạt minhtt@dlu.edu.vn , hiepnm@dlu.edu.vn

HỘI THẢO CÔNG NGHỆ THÔNG TIN 2010 TRƯỜNG ĐẠI HỌC ĐÀ LẠT. MỘT SỐ THUẬT TOÁN RÚT GỌN THUỘC TÍNH BẰNG TẬP THÔ. Trần Tuấn Minh, Nguyễn Minh Hiệp Khoa Công nghệ Thông tin – Đại học Đà Lạt minhtt@dlu.edu.vn , hiepnm@dlu.edu.vn . Cho bảng quyết định T = (C, D).

joshwa
Télécharger la présentation

Trần Tuấn Minh, Nguyễn Minh Hiệp Khoa Công nghệ Thông tin – Đại học Đà Lạt minhtt@dlu.edu.vn , hiepnm@dlu.edu.vn

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. HỘI THẢO CÔNG NGHỆ THÔNG TIN 2010TRƯỜNG ĐẠI HỌC ĐÀ LẠT MỘT SỐ THUẬT TOÁNRÚT GỌN THUỘC TÍNH BẰNG TẬP THÔ Trần Tuấn Minh, Nguyễn Minh Hiệp Khoa Công nghệ Thông tin – Đại học Đà Lạt minhtt@dlu.edu.vn , hiepnm@dlu.edu.vn

  2. Cho bảng quyết định T = (C, D). Bài này trình bày 2 thuật toán rút gọn thuộc tính điều kiện : • Thuật toán loại trừ : Xuất phát từ tập các thuộc tính điều kiện C, loại trừ dần các thuộc tính không cần thiết để tìm các tập rút gọn, tức là các tập R  C là tối tiểu thỏa mãn : POSR(D) = POSC(D). • Thuật toán loang dần - xuất phát từ tập lõi các thuộc tính điều kiện CORE(C), bổ sung dần các thuộc tính cần thiết để tìm các tập rút gọn, tức là các tập R : CORE(C)  R  C tối tiểu thỏa POSR(D) == POSC(D)

  3. TÀI LIỆU THAM KHẢO  [1] Hoàng Chí Thành & Đinh Quang Thắng, “Ứng dụng tập thô trong lập luận từ dữ liệu”, Kỷ yếu Hội thảo Quốc gia “Một số vấn đề chọn lọc của Công nghệ thông tin và truyền thông” lần thứ 10, 2007 [2] Jan Komorowski, Lech Polkowski, Andrzej Skowron, “Rough Sets : A Tutorial”.  [3] G. Ganesan, D. Latha, C. Raghavendra Rao, “Reduct Generation in Information Systems”, Engineering Letters, 14:2, EL_14_2_5 (advance online publication:16 May 2007)  [4] Ivo Düntsch & Günther Gediga, “ Rough set data analysis, A road to non-invasive knowledge discovery”, Primers series, vol. 2, Methoos publishers (UK), 2000.

  4. I. Mở đầu • Dư thừa thông tin thường do hai khả năng: • Có nhiều đối tượng không phân biệt được theo các đặc trưng nào đó. • Có những thuộc tính của dữ liệu, mà nếu ta bỏ đi thì thông tin cung cấp bởi bảng quyết định không bị ảnh hưởng gì. Các thuộc tính này là thừa.

  5. Các bài toán này có thể giải quyết bằng lý thuyết tập thô. • Khả năng đầu tiên, ta xét các lớp tương đương xác định bởi quan hệ bắt khả phân: Mỗi lớp tương đương ta chọn một đối tượng đại diện. • Trường hợp thứ hai ta tiếp cận với bài toán rút gọn thuộc tính. Ý tưởng chính của rút gọn là chọn lựa được những thuộc tính cốt yếu mà dựa vào đó, không làm thay đổi việc sinh luật và phân lớp.

  6. II. Các khái niệm cơ bản Định nghĩa 1: (Hệ thống thông tin – Information System) Hệ thống thông tin là cặp T = (U,A) • U là tập hữu hạn khác rổng, gọi là tập vũ trụ các đối tượng. • A là tập hữu hạn các thuộc tính khác rổng, • Ký hiệu Va là tập giá trị của thuộc tính a  A. • u  U, a  A, ký hiệu u(a)  Va là giá trị của thuộc tính a của đối tượng u.

  7. Định nghĩa 2: (Bảng quyết định - decision table ) Cho hệ thống thông tin T = (U, A). Bảng quyết định thiết kế từ hệ thống T : T = (U, C  D) trong đó:  ≠ C, D A; C  D =  và C  D = A. C: tập các thuộc tính điều kiện, D : tập các thuộc tính quyết định. Nếu không gây nhầm lẫn, ta viết: T = (C, D)

  8. Định nghĩa 3 (Quan hệ bất khả phân - Indiscernibility relation): Cho hệ thống thông tin T = (U, A) và B  A. Quan hệ bất khả phân trên U theo B, ký hiệu IND(B), được định nghĩa như sau: u,v  U, u IND(B) v aB, u(a) = v(a). • Khi đó, IND(B) là một quan hệ tương đương trên U. • Lớp tương đương trên U theo IND(B), đại diện là u  U : [u]B = {x  U: u IND(B) x}

  9. Tập tất cả các lớp tương đương trên U theo B: B* = U/IND(B) = {[u]B : u  U } gọi là phân lớp (classification) trên U theo B X B* còn được gọi là tập B-cơ bản ( B-elementary set) trong hệ thống thông tin T. • BT = (U, IND(B)) :không gian xấp xỉ (approximation space). Các tập B-cơ bản trên U còn gọi là tập B-cơ bản trong BT.

  10. Định nghĩa 4:( các xấp xỉ của tập hợp - Approximations of Set) Cho hệ thống thông tin T = (U, A), B A, và X  U, ta định nghĩa: • Tập xấp xỉ dưới ( Lower Approximation ): Tập B-xấp xỉ dưới của X là tập ký hiệu và xác định bởi: • Tập xấp xỉ trên (Upper Approximation): Tập B-xấp xỉ trên của X là tập ký hiệu và xác định bởi: • Tập biên (Boundary) Tập B-biên của X là tập ký hiệu và xác định bởi:

  11. X là tập B-thô (tập thô đối với B)  (  ) Định nghĩa 5: (Tập thô - Rough set) Cho hệ thống thông tin T = (U, A), B A và X  U. Ngược lại, tức là :X gọi là tập B-xác định. Nhận xét: • X  B* : X là tập xác định trong BT. • Tập B-xác định sẽ có dạng hợp các tập B-cơ bản trong BT. • là tập xác định lớn nhất chứa trong X theo B. • là tập xác định nhỏ nhất chứa X theo B

  12. Định nghĩa 6: (Miền khẳng định – Positive region) Cho bảng quyết định T = (C, D). Ta gọi C- miền khẳng định của D là tập ký hiệu và xác định bởi: Đó là tập tất cả các phần tử của U có thể được phân lớp duy nhất vào các tập cơ bản của D* bằng cách sử dụng tập các thuộc tính C. Nhận xét: u  POSC(D)  [vU : u(C) = v(C)  u(D) = v(D)]

  13. III. RÚT GỌN THUỘC TÍNH (Reduct of Attributes) Định nghĩa 7: (thuộc tính không cần thiết –dispensable, thuộc tính cần thiết -indispensable) Cho bảng quyết định T = (C, D) , c  C. • Nếu thì c được gọi là thuộc tính không cần thiết trong T, còn ngược lại thì c được gọi là thuộc tính cần thiết trong T. •  Bảng quyết định T = (C, D) được gọi là độc lập nếu mọi thuộc tính điều kiện c  C đều cần thiết trong T. Tức là: T = (C,D) độc lập 

  14. R là rút gọn của C  T’ = (U, RD) là độc lập và Định nghĩa 8: ( Rút gọn – reduct, lõi –Core) Cho bảng quyết định T = (C, D) , R  C. • Ký hiệu : Red(C) = Tập tất cả các rút gọn của C. •   Lõi của C là tập ký hiệu và xác định bởi: CORE(C) = {c  C: c là cần thiết trong T} R là tối tiểu của C thỏa : Nhận xét:Hiển nhiên là

  15. Thuật toán loại trừ • Ý tưởng: Tại mỗi bước lặp ( bước đầu xuất phát từ X = C), ta loại bỏ từng thuộc tính trong các thuộc tính không cần thiết của T’ = (X,D) để có các tập ít hơn một phần tử, cho đến khi gặp các X  C thỏa : T’ =(X,D) độc lập và POSX(D) = POSC(D), đó là rút gọn của C.

  16. X là C: C là rút gọn - Mô tả: Loaitru (X)  { c  X : POSX-{c}(D)  POSX(D) thì Nếu T’ = (X,D) độc lập ; Ngược lại // c  X : POSX-{c}(D) = POSX(D) Với mọi R1, . . ., Rk có dạng X-{c}, với POSX-{c}(D) = POSX(D): Loaitru(Ri ); } POSRi(D) = POSX(D) = POSC(D) Rutgon1 ()  { Loaitru(C); }

  17. Hàm đệ qui Rutgon1(Ri) dừng sau một số bước  C  và sẽ cho kết quả là các tập rút gọn của C. Đó là các tập R  C là tối tiểu thỏa POSR(D) = POSRi(D)= ...= POSC(D)

  18. Minh họa: Cho bảng quyết định T = (C,D)

  19. C = {a,b,c,d} C* = { {u1}, {u2},{u3},{u4},{u5},{u6},{u7} } • D = {e} D* = { {u1,u2,u7}, {u3,u5,u6}, {u4} } • .

  20. C Rb=C-{b}={a,c,d} POSRb(D)POSC(D) Ra=C-{a}={b,c,d} POSRa(D)=POSC(D)=U Rc=C-{c}={a,b,d} POSRc(D)=POSC(D)=U Rd=C-{d}={a,b,c} POSRd(D)=POSC(D)=U R={c,d} POSR(D)U R={b,d} POSR(D)=U R={b,d} POSR(D)=U R={b,c} POSR(D)=U R={b,c} POSR(D)=U R={a,b};R={a,d};R={a,c} POSR(D)U R={d} POSR(D)U R={b} POSR(D)U R={c} POSR(D)U

  21. Thuật toán loang dần: - Ý tưởng: Xuất phát từ CORE(C), ta bổ sung thêm các thuộc tính khác cho đến khi gặp các X thỏa mản điều kiện rút gọn của C.

  22. - Mô tả: Rutgon2()  { X = CORE(C); Nếu (POSX(D) == POSC(D)) X là rút gọn; Ngược lại Bosung(X); }

  23. Bosung(X)  {  c  C – X : (6) X = X  {c}; (7) Nếu r X : POSX-{r} (D)  POSX(D) thì (8) Nếu POSX(D) = POSC(D) thì (9) X là rút gọn; (10) Ngược lại: (11) Bosung(X); (12) }

  24. - Tính đúng của thuật toán: • Khi hàm Rutgon2() thực hiện : • Câu lệnh (1) tính X = CORE(C) • Nếu điều kiện (2) : (POSX(D) == POSC(D)) đúng thì CORE (C) là rút gọn • Ngược lại, tức là (POSX(D) == POSC(D)) sai thì câu lệnh (5) gọi hàm Bosung(X). • Khi hàm Bosung(X) hoạt động, X mang giá trị ban đầu là CORE(C)

  25. Vòng lặp (6) xét lần lượt các c  C – X : • Câu lệnh đơn (7) bổ sung c vào X. • Nếu điều kiện (8) : c  X : POSX-{c} (D)  POSX(D) sai thì quay lại (6). • Nếu điều kiện (8) đúng : • Xét tiếp điều kiện (9): nếu POSX(D) == POSC(D) đúng thì kết luận X  Red(C); • Còn ngược lại, thực hiện câu lệnh (12) gọi đệ qui hàm Bosung (X). • Trường hợp xấu nhất cho điều kiện (9) là X = C. Kết quả cuối cùng cho các tập tối tiểu R : CORE(C)  R  C thỏa : POSR(D) == POSC(D)

  26. Minh họa: Với bảng quyết định trên: X = CORE(C) = {b} X = {b,a} POSX(D)={u1,u2} POSX-{a}(D)= POSX(D) = POSX-{b}(D) X = {b,c} POSX(D)= POSC(D) POSX-{c}(D)  POSX(D) POSX-{b}(D)  POSX(D)  X = {b,d} POSX(D)= POSC(D) POS{d}(D) POSX(D) POS{b}(D)  POSX(D)

  27. Kết luận: Bài này đã trình bày thuật toán loại trừ để tìm các tập rút gọn thuộc tính điều kiện, đồng thời đưa ra thuật toán loang dần từ CORE để tìm các tập rút gọn trong tập các thuộc tính điều kiện.

  28. TRÂN TRỌNG CẢM ƠN

More Related