Hai khái niệm cơ bản trong lý thuyết tập thô đó là xấp xỉ trên và xấp xỉ dưới. Trong lý thuyết tập thô, xấp xỉ trên và xấp xỉ dưới của tập đối tượng được định nghĩa dựa trên lớp quan hệ không phân biệt được, còn trong hệ tin giá trị tập thì hai khái niệm này được định nghĩa dựa trên quan hệ dung sai.
Cho hệ thông tin giá trị tập IS (U , A ) và TB là quan hệ dung sai với BA. Xấp xỉ trên và xấp xỉ dưới của tập bất kỳXU được định nghĩa như sau:
( ) { : [ ] }; B B T T X x U x X ( ) { : [ ] } B B T T X x U x X Ta gọi ( ) B T
BND X miền biên của X là tập ( ) ( ) ( )
B T B B BND X T X T X , miền ngoài của X là tập ( ) \ ( ) B T B
NEG X U T X và miền dương (miền khẳng định) của X là
( ) ( ) B T B POS X T X . Ví dụ 1.8. Xét Bảng 1.3 giả sử X { ,u u u u u u u u1 2, 3, 4, 5, 6, 7, },8 { , , , W }
B Audition Spoken Language Reading riting ta tìm các xấp xỉ của X như sau: Trước tiên ta tìm các phân lớp dung sai của từng đối tượng
1 1 2 3 4 7 10 [ ] { , , , , , } B T u u u u u u u , [ ]2 [ ]7 { ,1 2, ,3 4, , , , , ,5 6 7 8 9 10}. B B T T u u u u u u u u u u u u 3 1 2 3 4 5 6 7 8 10 [ ] { , , , , , , , , } B T u u u u u u u u u u , [ ]4 { ,1 2, ,3 4, ,5 7, ,9 10}. B T u u u u u u u u u 5 2 3 5 6 7 9 10 [ ] { , , , , , , } B T u u u u u u u u , [ ]6 { , , , , }.2 5 6 7 8 B T u u u u u u 8 2 3 6 7 8 9 10 [ ] { , , , , , , } B T u u u u u u u u , [ ]9 { ,2 4, ,5 7, , ,8 9 10}. B T u u u u u u u u 10 1 2 3 4 5 7 8 9 10 [ ] { , , , , , , , , }. B T u u u u u u u u u u Chúng ta có B B B B B B B 6 T 1 T 2 T 3 T 4 T 5 T 7 T [u ] X, [u ] X, [u ] X, [u ] X, [u ] X, [u ] X, [u ] X, B B B 8 T 9 T 10 T [u ] X, [u ] X và [u ] X. Nên T XB( ) {u }, 6 và vì {1, 2, 3, 4, 5, 6, 7,8, 9,10}, [u ] B i T i X do đó 1 2 3 4 5 6 7 8 9 10 ( ) { , , , , , , , , , } B T X u u u u u u u u u u
Vùng dương của X ta tính được ( ) {u }.6
B T POS X Miền biên ( ) {u , u , u , u , u , u , u , u , u }.1 2 3 4 5 7 8 9 10 B T BND X Miền ngoài ( ) . B T NEG X 1.3. Kết luận
Chương 1 trình bày khái niệm hệ thông tin cùng các khái liên liên quan (quan hệ không phân biệt được, quan hệ dung sai, tập thô, bảng quyết định v.v.) và khái
niệm hệ thông tin giá trị tập cùng các khái niệm liên quan (quan hệ dung sai, tập thô trong hệ thông tin giá trị tập, bảng quyết định giá trị tập, v.v.). Đây là những nội dung nền tảng để trình bày bài toán rút gọn thuộc tính và các giải pháp cho bài toán được trình bày trong các chương tiếp theo.
Chương 2. RÚT GỌN THUỘC TÍNH THEO LÝ THUYẾT TẬP THÔ 2.1. Giới thiệu chung
Như đã được giới thiệu, rút gọn thuộc tính là một trong những bài toán ứng dụng điển hình nhất của lý thuyết tập thô [24, 42, 54, 70]. Trong lý thuyết tập thô, mục tiêu của rút gọn thuộc tính là tìm ra tập nhỏ nhất các thuộc tính cho phân tích dữ liệu mà vẫn giữ được hiệu năng (hoặc hầu hết hiệu năng) như tập toàn bộ các thuộc tính. Rút gọn thuộc tính vừa làm giảm khối lượng xử lý dữ liệu do chỉ phải thao tác trên một khối lượng dữ liệu nhỏ hơn, vừa làm cho kết quả thu được trở nên cô đọng và dễ hiểu hơn.
Theo Yiyu Yao và Yan Zhao [70], mô hình Pawlak và mô hình xác suất là hai mô hình rút gọn thuộc tính điển hình trong lý thuyết tập thô. Điển hình theo mô hình Pawlak là các phương pháp dựa trên miền dương [13, 31, 46, 57], các phương pháp sử dụng ma trận phân biệt [12, 47, 50, 68, 71], các phương pháp sử dụng các phép toán đại số quan hệ [21]. Các phương pháp rút gọn thuộc tính theo mô hình Pawlak thường được tiến hành theo hướng "từ trên xuống" (còn được gọi là phương pháp loại bỏ (deletion method [69])), nghĩa là loại bỏ dần các thuộc tính không cần thiết. Điển hình theo mô hình xác suất là các phương pháp sử dụng entropy thông tin [29, 59, 60, 61, 63, 67, 68], các phương pháp sử dụng các độ đo mà điển hình là các độ đo trong tính toán hạt (granular computing) [6, 14, 15, 28, 53, 75], các phương pháp tích hợp lý thuyết tập thô với lý thuyết tập mờ [22, 24]. Các phương pháp rút gọn thuộc tính theo mô hình xác suất thường được tiến hành theo hướng "từ dưới lên" (còn được gọi là phương pháp bổ sung (addition method [69])), nghĩa là chọn các thuộc tính có độ liên quan cao tới mục tiêu xử lý dữ liệu để bổ sung vào tập thuộc tính rút gọn. Trong nhiều tình huống, tập rút gọn kết quả chỉ cần đảm bảo "hầu hết" hiệu năng của tập toàn bộ các thuộc tính. Một số thuật toán theo hướng kết hợp dưới lên - trên xuống cũng đã được đề xuất (chẳng hạn, thuật toán bổ sung - loại bỏ [69]).
Trong hệ thông tin giá trị tập, các phương pháp tìm tập rút gọn thuộc tính được hình thành dựa trên quan hệ dung sai [15, 51]. Theo hướng tiếp cận mô hình
quan hệ dung sai, một số kết quả nghiên cứu đáng chú ý về rút gọn thuộc tính trên bảng quyết định giá trị tập được công bố trong [8, 27, 44, 45, 64, 65, 66].
Chương này giới thiệu các nội dung cơ bản nhất về rút gọn thuộc tính trong hệ thông tin (Mục 2.2) và rút gọn thuộc tính trong hệ thông tin giá trị tập (Mục 2.3).
2.2. Rút gọn thuộc tính trong hệ thông tin 2.2.1. Tập rút gọn và tập lõi 2.2.1. Tập rút gọn và tập lõi
Trong các ứng dụng của bảng quyết định vào phân tích dữ liệu (bao gồm phân lớp dữ liệu), các thuộc tính điều kiện được phân thành ba nhóm: Thuộc tính lõi, thuộc tính rút gọn và thuộc tính không cần thiết [36, 38, 39]. Thuộc tính lõi là thuộc tính cốt yếu, không thể thiếu trong việc phân lớp chính xác tập dữ liệu. Thuộc tính không cần thiết là những thuộc tính dư thừa; nghĩa là có thể loại bỏ một thuộc tính như vậy (nhưng không phải là tất cả) mà không ảnh hưởng đến việc phân lớp dữ liệu. Thuộc tính của tập rút gọn “nằm giữa” hai tập thuộc tính trên, nó là dư thừa đối với một tập thuộc tính điều kiện này song lại cốt yếu đối với một tập các thuộc tính điều kiện khác. Dưới đây trình bày định nghĩa chính thức cho các khái niệm này [38].
Định nghĩa 2.1. (Thuộc tính cần thiết: indispensable và không cần thiết: dispensable)
Cho bảng quyết định T U C, D V f, , , thuộc tính cC được gọi là không cần thiết (dispensable) nếu POS (D)C POS(C\ c ) (D). Ngược lại, c được gọi là cần thiết (indispensable).
Định nghĩa 2.2. (Bảng quyết định độc lập: independent).
Bảng quyết định T được gọi là độc lập (independent) nếu mọi thuộc tính
cCđều cần thiết.
Tập tất cả các thuộc tính cần thiết trong T được gọi là lõi (Core) và được ký hiệu CORE C . Khi đó, một thuộc tính cần thiết còn được gọi là thuộc tính lõi.
Định nghĩa 2.3. (Tậprútgọn: reductset)
Tập các thuộc tính RC được gọi là tập rút gọn (Reduct Set) của tập thuộc tính điều kiện C nếu T'=(U, RD, V, f) là độc lập và POSR D POSC D .
Nói cách khác, R là tập rút gọn nếu R thỏa mãn POSR(D)=POSC(D) và R "tối thiểu" theo nghĩa mọi tập con thực sự R' của R thì POSR'(D) POSC(D). Rõ ràng là có thể có nhiều tập rút gọn của C. Ta ký hiệu RED C là tập tất cả các rút gọn của
.
C Tập thuộc tính là giao của mọi tập rút gọn trong bảng quyết định được gọi là tập lõi (core) và được ký hiệu là CORE (CORE=
) C ( RED TG TG
). Dưới đây là các thuật toán tìm vùng dương của một tập thuộc tính điều kiện và tìm tập thuộc tính rút gọn từ một tập thuộc tính cho trước. Tập thuộc tính điều kiện R thỏa mãn POSR(D)=POSC(D)
được gọi là siêu rủt gọn (super-reduct). Rõ ràng là nếu một tập thuộc tính siêu rút gọn là tối thiểu thì nó sẽ là rút gọn. Hơn nữa, tập mọi thuộc tính điều kiện C là một siêu-rút gọn. Rõ ràng là nếu một tập thuộc tính siêu rút gọn mà là tập tối thiểu thì nó sẽ là rút gọn. Một tập thuộc tính điều kiện R mà là tập con của một tập rút gọn thì được gọi là bộ phận rút gọn (partial reduct). Tập lõi là một tập bộ phận rút gọn.
Luận án thực hiện một vài biến đổi nhỏ cho Thuật toán 3 trong [19] để nhận được Thuật toán 2.1. Xác định vùng dương trong bảng quyết định như trình bày dưới đây.
Thuật toán 2.1. Xác định vùng dương trong bảng quyết định Đầu vào: Bảng quyết định TU C, D V f, ,
Tập thuộc tính BC.
Đầu ra: Tập các đối tượng - vùng dương POSB( )D .
Phương pháp:
(1) Xác định các lớp tương đương 1B, 2B,..., B m
X X X của U B/ (2) POSB( ) :D
(3) Với mọi j1, 2,...,m (for j1 to m do) Nếu mọi đối tượng B
j
Thì POS DB( ) :POS DB( )XBj
Thuật toán 2.1 có độ phức tạp là O(k | U | log | U |) (Tham khảo [19]).
Tương tự cách hình thành Thuật toán 2.1, luận án thực hiện một vài biến đổi nhỏ tới Thuật toán 6 trong [19] để nhận được Thuật toán 2.2. Tìm tập rút gọn trong bảng quyết định như trình bày dưới đây.
Thuật toán 2.2. Thuật toán tìm tập rút gọn trong bảng quyết định Đầu vào: Bảng quyết định TU C, D V f, , với n=|U|, k=|C|;
Một tập con các thuộc tính điều kiện R là một siêu rút gọn.
Đầu ra: Tập rút gọn R'R.
Phương pháp:
(1). Tính POSR(D) và đặt m:= | POSR(D)| (2). Với mọi a R
begin
Tính POSR-{a}(D) và đặt ma:= | POSR-{a}(D)| Nếu ma m thì R:R\{ };a
end;
(3). R'R.
Lập luận giống như trong [19], thuật toán 2.2 có độ phức tạp là 2
( log ).
O k n n
Ví dụ 2.1. Xét bảng quyết định về bệnh cúm được cho ở Bảng 1.2 (Chương 1).
Bảng này có hai tập rút gọn là R1 = {Đau cơ, Thân nhiệt} (xem bảng 2.1) và
R2 = {Đau đầu, Thân nhiệt} (xem bảng 2.2).
Bảng 2.1.Bảng rút gọn thứ nhất của hệ thống bệnh cúm R1
U Đau cơ Thân nhiệt Cảm cúm
u1, u4 Có Bình thường Không
u2 Có Cao Có
u3, u6 Có Rất cao Có
Như vậy tập lõi là CORE(C) = {Thân nhiệt} và Thân nhiệt là thuộc tính cần thiết duy nhất. Các thuộc tính Đau đầu, Đau cơ đều không cần thiết theo nghĩa từ bảng dữ liệu có thể loại bỏ một trong hai thuộc tính này mà vẫn chuẩn đoán được bệnh. Tức là:
POS{Đau cơ, Thân nhiệt}({Cảm cúm}) = POSC({Cảm cúm}) POS{Đau đầu, Thân nhiệt}({Cảm cúm}) = POSC({Cảm cúm}).
Bảng 2.2.Bảng rút gọn thứ hai của hệ thống bệnh cúm R2
U Đau đầu Thân nhiệt Cảm cúm
u1 Có Bình thường Không
u2 Có Cao Có
u3 Có Rất cao Có
u4 Không Bình thường Không
u5 Không Cao Không
u6 Không Rất cao Có
Tương ứng với hai thuật toán 2.1 và 2.2 ở đây, chương 3 của luận án sẽ trình bày thuật toán rút gọn thuộc tính và tìm các tập xấp xỉ trong bảng quyết định giá trị tập dựa trên dựa trên hai cấu trúc dữ liệu mới do luận án đề xuất là bảng ngẫu nhiên tổng quát hóa và các dàn giá trị thuộc tính.
Yao Y.Y. và cộng sự [69] trình bày ba thuật toán mang tính khát quát cao để tìm tập rút gọn trong hệ thông tin S = (U, A, V, f). Trong ba thuật toán này, các tác giả đã giả thiết cho trước một hàm (độ) phù hợp (fitness function) các thuộc tính
:A R
(tập số thực). Ý nghĩa của hàm phù hợp được xác định theo nhiều ngữ nghĩa, chẳng hạn như hoặc độ chi phí kiểm thử, hoặc độ dễ hiểu, hoặc độ ảnh hưởng của thuộc tính, hoặc lợi ích thông tin (information gain) của thuộc tính v.v. Luận án thực hiện biến đổi nhỏ để chuyển ba thuật toán cho hệ thông tin của Yao Y.Y. và cộng sự [69] thành ba thuật toán sang bảng quyết định như dưới đây.
Thuật toán 2.3. Thuật toán từ trên xuống tìm tập rút gọn trong bảng quyết định
Đầu vào: Bảng quyết định TU C, D V f, , . Đầu ra: Tập rút gọn R. Phương pháp: (1) R:C TG; :C; (2) While TG do begin (2.1) a TG: tính (a)
(2.2) TG := TG \{a} với a là thuộc tính phù hợp nhất (2.3) if R \{a} là một siêu rút gọn then R:=R \{a}
end;
(3) Output R.
Lưu ý rằng, Thuật toán 2.3 là tương tự như Thuật toán 2.2 với hai thay đổi nhỏ. Thứ nhất, tập siêu rút gọn đầu vào chính là tập thuộc tính điều kiện C. Thứ hai, việc loại bớt thuộc tính ở đây được định hướng theo độ phù hợp (a).
Thuật toán 2.4. Thuật toán hướng kết hợp tìm tập rút gọn trong bảng quyết định
(Tương ứng với thuật toán loại bớt-bổ sung trong [69])
Đầu vào: Bảng quyết định TU C, D V f, , .
Đầu ra: Tập rút gọn R.
Phương pháp:
//Bước bổ sung (1) R: ; TGA:C;
(2) While (R chưa là siêu rút gọn và TGA ) do
begin
(2.1) a TGA: tính (a);
(2.2) TGA:TGA\ a với a là thuộc tính phù hợp nhất; (2.3) R: R a ;
end;
(3) TGD:R; (4) While (TGD ) do begin (4.1) a TGD:tính (a); (4.2) TGD:TGD\ a với a là thuộc tính phù hợp nhất; (4.3) if R\ a là một siêu rút gọn then R:R\ a ; end; (5) Output R.
So với Thuật toán 2.3, Thuật toán 2.4 bổ sung thêm bước thực hiện tiến để tìm một tập siêu rút gọn sau đó tiến hành bước thực hiện lùi để tìm một tập rút gọn từ tập siêu rút gọn đã có.
Thuật toán 2.5. Thuật toán từ dưới lên tìm tập rút gọn trong bảng quyết định
(Tương ứng với thuật toán loại bớt trong [69])
Đầu vào: Bảng quyết định TU C, D V f, ,
Đầu ra: Tập rút gọn R.
Phương pháp:
(1) R: ; TGA:C;
(2) While (R chưa là rút gọn và TGA ) do
begin
(2.1) aTGA: tính (a);
(2.2) Chọn aTGA là thuộc tính phù hợp nhất;
(2.3) if R a là bộ phận rút gọn then begin R: R a ;TGA:TGA a end end;
(3) Output R
2.2.2. Ma trận phân biệt và hàm phân biệt
Xét bảng quyết định TU C, D V f, , với Uu u1, 2,...,un. Ma trận phân biệt của T, ký hiệu M mi j n n
, là một ma trận đối xứng mà mỗi phần tử của nó được xác định như sau [50]:
mij = { nếu u Di( )u Dj( ), {cC u ci( )u cj( )} nếu u Di( )u Dj( ).
Như vậy, mijlà tập hợp gồm tất cả các thuộc tính điều kiện có thể xếp đối tượng ui và uj vào các lớp tương đương khác nhau đối với quan hệ không phân biệt được trên mỗi thuộc tính của tập thuộc tính này. Hay nói cách khác hai đối tượng ui và uj mà u Di( )u Dj( ) có thể phân biệt với nhau bởi một thuộc tính bất kỳ trong tập mij. Nếu mij thì ui và uj bằng nhau trên tập thuộc tính D hoặc trong trường hợp bảng quyết định đã cho là không nhất quán, hai đối tượng ui và
j
u có cùng giá trị trên tập thuộc tính điều kiện nhưng khác nhau trên tập thuộc tính quyết định.
Ví dụ 2.2. Xét bảng quyết định như trong Bảng 1.2 (Chương 1) với các ký hiệu c1, c2, c3, c4 tượng trưng tương ứng cho tập các thuộc tính điều kiện {Mệt
mỏi, Đau đầu, Đau cơ, Thân nhiệt}, d ký hiệu thay cho thuộc tính quyết định
{Cảm cúm}. Bảng 2.3 trình bày ma trận phân biệt tương ứng; đây là ma trận đối xứng nên được trình bày dưới dạng một ma trận tam giác dưới.
Bảng 2.3. Ma trận phân biệt được xây dựng từ Bảng 1.2 U u1 u2 u3 u4 u5 u6 u1 u2 c4 u3 c4 u4 c2, c4 c2, c4 u5 c2, c3 c2, c3, c4 u6 c2, c4 c4 c3, c4
Giá trị m32 trong Bảng 2.3 cho thấy hai đối tượng u3 và u2 có cùng giá trị quyết định ( ( )u d3 u d2( )" ó")c hay nói cách khác u3 và u2 cùng thuộc một lớp tương đương của phân hoạch IND D( ). Trong khi đó m42{ , }c c2 4 điều này nói lên rằng hai đối tượng u2 và u4 có giá trị quyết định khác nhau và chúng được phân biệt nhau bởi các thuộc tính c2 hoặc c4 nhưng không phân biệt được bởi các thuộc tính c1 và c3.
Các thuật toán rút gọn thuộc tính dựa trên khái niệm ma trận phân biệt đã được đề xuất. Tương tự như Thuật toán 2.2, các thuật toán này thường được tiến hành theo hướng "từ trên xuống".
Trong [69], Yao Y.Y. và cộng sự giới thiệu một thuật toán tìm tập rút gọn trong hệ thông tin S = (U, A, V, f) dựa trên ma trận phân biệt. Trong thuật toán này