Cho bảng quyết định DS = (U, C ∪D, V, f), Va, Vd tương ứng là tập các giá trị của thuộc tính điều kiện a và thuộc tính quyết định d.
Yêu cầu bài toán là: Tiến hành trích rút các luật quyết định mới khi làm thô, làm mịn các giá trị thuộc tính điều kiện và khi làm thô, làm mịn các giá trị thuộc tính quyết định. Các luật quyết định được trích rút thỏa mãn đồng thời cả ngưỡng độ chính xác và ngưỡng độ phủ cho trước.
Giả sử tập thuộc tính quyết định D chỉ gồm một thuộc tính d, tiến trình học các luật quyết định khi các giá trị thuộc tính thay đổi diễn ra từ thời điểm t đến thời điểm t+1; U/C = {C1, …, Cm}, U/D = {D1, …, Dn} tương ứng là các phân hoạch được sinh bởi C, D (0<m, n≤|U|);
Tại thời điểm t, ký hiệu ft(x, a), ft(Ci, a), và ft(x, d), ft(Dj, d) tương ứng là giá trị của x, giá trị của lớp tương đương điều kiện Ci trên thuộc tính a và là giá trị của x, giá trị của lớp tương đương quyết định Dj trên thuộc tính d.
Tương tự như vậy tại thời điểm t+1, ta cũng có ký hiệu lần lượt các giá trị này là ft+1(x, a), ft+1(Ci, a), fi+1(x, d), ft+1(Dj,d).
2.3.2. Cơ sở toán học
2.3.2.1. Làm thô các giá trị thuộc tính điều kiện
Định lý 2.1: Giả sử sau thời điểm t, hai giá trị w, y của thuộc tính a∈C được làm thô thành giá trị mới z, z∉Va. Tại thời điểm t+1, tồn tại hai lớp tương đương điều kiện Cp, Cq nào đó được làm thô thành lớp tương đương điều kiện mới Cs, khi và chỉ khi ∀aj ≠a, ft(Cp, aj) = ft(Cq, aj);
Hệ quả 2.1:
Nếu sau thời điểm t, hai lớp tương đương điều kiện Cp, Cq nào đó được làm thành lớp điều kiện mới Cs thì tại thời điểm t+1, ta có:
+ Cp ∪Cq = Cs
+ ∀Dj∈U/D, độ hỗ trợ Sup(Cp, Dj) + Sup(Cq, Dj) = Sup(Cs, Dj), ở đây j
= 1,...,n.
Từ đó ta có được sau thời điểm t, hai dòng tương ứng với hai lớp tương đương điều kiện Cp, Cq trong ma trận độ hỗ trợ được kết hợp thành một dòng mới tương ứng với lớp tương đương điều kiện Cs tại thời điểm t+1 với giá trị là tổng giá trị các phần tử của hai dòng này.
2.3.2.2 Làm mịn các giá trị thuộc tính điều kiện:
Định lý 2.2: Giả sử sau thời điểm t, giá trị z của thuộc tính a ∈C được làm mịn thành hai giá trị mới w và y (w, y ∉Va). Tại thời điểm t+1, tồn tại một lớp tương đương điều kiện Cs nào đó được làm mịn thành hai lớp tương đương điều kiện mới Cp, Cq khi vàchỉ khi:
+ ft(Cs, a) = z; (1)
+ Cs∩W≠ φ với W = {x∈Cs: ft+1(x, a)=w} (2) + Cs∩Y≠ φ với Y = {x∈Cs: ft+1(x, a)=y} (3) Chứng minh : (1)
Giả sử ft(Cs, a) ≠z, khi đó mọi giá trị của các phần tử thuộc lớp này đều không đổi. Điều này là vô lý. Do đó ft(Cs, a) = z.
Chứng minh (2)
Giả sử Cs ∩W = φ, khi đó ta có ∀x ∈Cs ft(x, a) = ft(Cs , a) = z.
Suy ra ft+1(x, a) = y bởi vì nếu ft+1(x, a) = w thì x∈W. Do vậy Cs∩W≠ φ
. Điều này trái với giả thiết.
Chứng minh (3)
Giả sử Cs ∩Y = φ, khi đó ta có ∀x ∈Cs ft(x, a) = ft(Cs , a) = z.
Suy ra ft+1(x, a) = w bởi vì nếu ft+1(x, a) = y thì x∈Y. Do vậy Cs∩Y≠ φ. Điều này trái với giả thiết.
Hệ quả 2.2:
Nếu sau thời điểm t, lớp tương đương điều kiện Cs nào đó được làm mịn thành hai lớp tương đương điều kiện mới Cp, Cq. Tại thời điểm t+1, ta có :
+ Cs = Cp ∪Cq ;
+ ∀Dj∈U/D, độ chính xác Sup(Cs, Dj) = Sup(Cp, Dj) + Sup(Cq, Dj). Ở đây j = 1,…,n.
Từ đó ta có, sau thời điểm t dòng tương ứng với lớp tương đương điều kiện Cs nào đó trong ma trận độ hỗ trợ sẽ được tách thành hai dòng mới tương ứng với hai lớp tương đương điều kiện mới Cp, Cq tại thời điểm t+1.
2.3.2.3. Làm thô các giá trị thuộc tính quyết định
Tương tự như các kết quả đã thu được khi làm thô các giá trị thuộc tính điều kiện, khi làm thô các giá trị thuộc tính quyết định ta cũng thu được kết quả như sau:
Giả sử sau thời điểm t, hai giá trị w, y của thuộc tính quyết định d được làm thô thành giá trị mới z (z∉Vd). Tại thời điểm t+1, tồn tại hai lớp tương đương quyết định Dw, Dy nào đó được làm thô thành một lớp tương đương quyết định mới Dz, có nghĩa là Dw ∪ Dy = Dz Với Dw={x∈U:ft(x,d)=w, w∉ Vd}, Dy={x∈U:ft(x,d)=y, y∉Vd}.
Từ kết quả trên ta có hệ quả sau.
Hệ quả 2.3 :
Từ kết quả trên ta có, ∀Ci∈U/C, độ hỗ trợ Sup(Ci, Dw) + Sup(Ci, Dy) = Sup(Ci, Dz), ở đây i = 1,...,m.
Ta dễ thấy rằng: Sau thời điểm t, hai cột tương ứng với hai lớp tương đương quyết định Dw, Dy sẽ kết hợp lại thành một cột tương ứng với Dz tại thời điểm t+1 với giá trị là tổng giá trị của hai cột này.
2.3.2.4. Làm mịn các giá trị thuộc tính quyết định:
Tương tự như trường hợp làm mịn các giá trị thuộc tính điều kiện, khi làm mịn các giá trị thuộc tính quyết định, ta cũng thu được kết quả như sau:
Giả sử sau thời điểm t, giá trị z của thuộc tính quyết định d được làm mịn thành hai giá trị mới w và y (w, y ∉ Vd). Tại thời điểm t+1, tồn tại một lớp tương đương quyết định Dz nào đó được làm mịn thành hai lớp tương đương quyết định mới Dw và Dy.
Hệ quả 2.4: Khi đó ta có: ∀Ci∈U/C, độ hỗ trợ Sup(Ci, Dz) = Sup(Ci, Dw) + Sup(Ci, Dy), ở đây i = 1,...,m.
Ta dễ thấy rằng: Sau thời điểm t, cột tương ứng với lớp tương đương quyết định Dz nào đó trong việc tính độ hỗ trợ sẽ được tách thành hai cột mới tương ứng với hai lớp tương đương quyết định mới Dw, Dy tại thời điểm t+1.
Trước tiên ta phải tính giá trị độ hỗ trợ Sup(Ci, Dy) là hiệu giữa giá trị của Sup(Ci, Dz) và Sup(Ci, Dy).
2.3.3. Thuật toán
Trên cơ sở các định lý và các hệ quả được trình bày ở trên, luận văn trình bày thuật toán mới để trích rút các luật quyết định có ý nghĩa khi làm thô, làm mịn các giá trị thuộc tính điều kiện hoặc khi làm thô, làm mịn các giá trị thuộc tính quyết định. Thuật toán được xây dựng theo hướng tiếp cận gia tăng, không đòi hỏi phải thực hiện lại việc phân lớp khi các giá trị thuộc tính thay đổi, chi cần tìm các lớp tương đương bị thay đổi làm cơ sở cho việc cập nhật lại ma trận độ hỗ trợ tại thời điểm trước đó, dựa trên đó tính ma trận độ chính xác, ma trận độ phủ rồi sinh luật. Các bước cơ bản của thuật toán được trình bày theo mô hình 2.1 sau:
Hình 2.1: Các bước cơ bản của thuật toán trích rút luật quyết định khi làm thô/mịn các giá trị thuộc tính
Tính ma trận Sup(t)(C, D)
Tính ma trận Sup(t+1)(C, D) khi làm thô (làm mịn) các
giá trị thuộc tính Acc(t+1)(C, D) và
Cov(t+1)(C, D)
Sinh các luật
Kết thúc Bắt đầu
Thuật toán 2.1 Tính ma trận độ hỗ trợ tại thời điểm t nào đó Vào: - Các lớp tương đương điều kiện Ci
- Các lớp tương đương quyết định Dj
Ra: Ma trận độ hỗ trợ (Sup) tại thời điểm t.
Phương pháp:
// Áp dụng định nghĩa 1.5 for i = 1 to m do
for j = 1 to m do begin
Sup(Ci, Dj) = Ci ∩ Dj ; end
Kết thúc.
Thuật toán 2.2 Tính ma trận độ hỗ trợ tại thời điểm t+1 khi làm thô các giá trị thuộc tính điều kiện
Vào: - Ma trận độ hỗ trợ Sup tại thời điểm t - Thuộc tính điều kiện a* được làm thô
- Các giá trị w, y của a* được làm thô thành z.
Ra: Ma trận độ hỗ trợ Sup tại thời điểm t+1 sau khi làm thô thuộc tính a* Phương pháp:
//Tìm tất cả các cặp lớp tương đương điều kiện Cp, Cq được hợp thành lớp tương đương điều kiện Cs mới CC = φ;
//Tập chứa các cặp lớp tương đương được hợp lại thành 1 lớp mới.
for p = 1 to m do
for q = p + 1 to m do begin
if(ft(Cp, a*) = w and ft(Cq, a*) = y)
or (ft(Cp, a*) = y and ft(Cq, a*) = w) then
begin
kiemtra = 1;
for k = 1 to |C| do
//với |C| là số các thuộc tính điều kiện begin
//Kiểm tra xem với các thuộc tính còn lại, 2 lớp có cùng giá trị không?
if(ak ≠a* and ft(Cp, ak) ≠ft(Cq, ak)) then begin
kiemtra = 0; break;
end;
end;
if kiemtra = 1 then begin
//Lưu các thuộc tính Cp, và Cq vào lớp CC luu(Cp, Cq) in CC;
end;
end;
end;
end;
//Tính ma trận Sup tại thời điểm t+1 for(Cp, Cq) in CC
begin
for j = 1 to n do begin
Sup(Cs, Dj) = Sup(Cp, Dj) + Sup(Cq, Dj);
end;
//Xóa 2 dòng tương ứng với Cp và Cq;
//Bổ sung dòng tương ứng với Cs; end;
Kết thúc.
Thuật toán 2.3: Tính ma trận độ hỗ trợ tại thời điểm t+1 khi làm mịn các giá trị thuộc tính điều kiện.
Vào: - Ma trận Sup tại thời điểm t
- Thuộc tính điều kiện a* được làm mịn
- Tập W các đối tượng mà giá trị z trên thuộc tính a* được làm mịn thành w.
- Tập Y các đối tượng mà giá trị z trên thuộc tính a* được làm mịn thành y.
Ra: Ma trận Sup tại thời điểm t+1 sau khi làm mịn thuộc tính a*. Phương pháp:
//Tìm lớp điều kiện Cs được tách thành 2 lớp mới Cp, Cq
for s = 1 to m do begin
if ft(Cs, a) = z and Cs ∩W≠φ and Cs∩Y≠φ then begin
Cp = φ ; Cq = φ; for each x in Cs do begin
if(ft(x, a*) = w) then //Bổ sung x vào Cp
else if(ft(x, a*) = y) then //Bổ sung x vào Cp
end;
end;
end;
//Tính Sup tại thời điểm t+1
for j = 1 to n do begin
//Tính Sup(Cp, Dj);
Sup(Cq, Dj) = Sup(Cs, Dj) - Sup(Cp, Dj);
end;
//Xóa dòng tương ứng với Cs;
//Bổ sung 2 dòng tương ứng với Cp, Cq; Kết thúc.
Thuật toán 2.4: Tính ma trận độ hỗ trợ tại thời điểm t+1 khi làm thô các giá trị thuộc tính quyết định.
Vào: - Ma trận Sup tại thời điểm t
- Giá trị thuộc tính w, y của thuộc tính quyết định d được làm thô thành z.
Ra: Ma trận Sup tại thời điểm t+1 sau khi làm thô thuộc tính d.
Phương pháp:
//Tìm 2 lớp Dw*, Dy* được kết hợp thành lớp mới Dz. w* = -1; y* = -1;
for j = 1 to n do begin
if f(Dj, d) = w then w* = j;
if f(Dj, d) = y then y* = j;
end;
//Tính ma trận Sup tại thời điểm t+1 for i = 1 to m do
begin
Sup(Ci, Dz) = Sup(Ci, Dw*) + Sup(Ci, Dy*);
end;
//Xóa 2 cột tương ứng với Dw*, Dy*; //Bổ sung cột tương ứng với Dz; Kết thúc.
Thuật toán 2.5: Tính ma trận độ hỗ trợ tại thời điểm t+1 khi làm mịn các giá trị thuộc tính quyết định.
Vào: - Ma trận Sup tại thời điểm t;
- Tập Dw là tập các đối tượng có giá trị trên thuộc tính d là z được làm mịn thành giá trị w;
- Tập Dy là tập các đối tượng có giá trị trên thuộc tính d là z được làm mịn thành giá trị y;
Ra: Ma trận Sup tại thời điểm t+1 sau khi làm mịn d;
Phương pháp:
//Tìm lớp Dz* được tách thành 2 lớp Dy, Dw mới z* = -1;
for j = 1 to n do begin
if f(Dj, d) = z then z* = j;
end;
//Tính ma trận Sup tại thời điểm t+1 for i = 1 to m do
begin
//Tính Sup(Ci, Dw);
Sup(Ci, Dy) = Sup(Ci, Dz*) - Sup(Ci, Dw);
end;
//Xóa cột Dz*;
//Bổ sung 2 cột Dw; Dy; Kết thúc.
* Chú ý: Trong thuật toán 2.5 này, vì tập thuộc tính quyết định D chỉ có một thuộc tính d nên khi làm mịn giá trị z của d thành 2 giá trị mới là w và y, ta có ngay 2 lớp tương đương quyết định mới tương ứng với Dy và Dw.
* Diến giải làm việc của các thuật toán 2.2, 2.3, 2.4, 2.5 như sau:
Tất cả các thuật toán đó đều được xây dựng trên cơ sở các kết quả của định lý 2.1 và định lý 2.2 cùng các hệ quả 2.1, 2.2, 2.3, và hệ quả 2.4.
Các thuật toán này đều làm việc theo cơ chế: Đầu tiên nó thực hiện việc tìm ra các cặp lớp tương đương mà sẽ được kết hợp với nhau thành một lớp tương đương mới (khi làm thô) hoặc tìm một lớp tương đương bị tách thành hai lớp tương đương mới (khi làm mịn), sau đó cập nhật lại dòng (hay cột) tương ứng trong ma trận đỗ hỗ trợ tại thời điểm trước đó. Sau bước cập nhật này ta sẽ thu được ma trận đỗ hỗ trợ tại thời điểm t + 1.
Thuật toán 2.6: Tính ma trận độ chính xác và ma trận độ phủ tại thời điểm t + 1
Vào: Ma trận độ hỗ trợ tại thời điểm t + 1.
Ra: Ma trận độ chính xác và ma trận độ phủ tại thời điểm t + 1.
Phương pháp:
//Áp dụng mệnh đề 1.1.
//Vecto tổng dòng gồm n giá trị để tính độ chính xác (Acc) SupN = 0;
//Vecto tổng cột gồm m giá trị để tính độ phủ (Cov) SupM = 0;
//Tính tổng for i = 1 to m do
for j = 1 to n do begin
SupN(j) = SupN(j) + Sup(Ci, Dj);
SupM(i) = SupM(i) + Sup(Ci, Dj);
end //Tính Acc, Cov for i = 1 to m do
for j = 1 to n do begin
Acc(Ci, Dj) =
) (
) , (
j SupN
D C
Sup i j
; Cov(Ci, Dj) =
) (
) , (
i SupM
D C
Sup i j
end;
Kết thúc.
Thuật toán 2.7 : Trích rút luật quyết định có ý nghĩa Vào : - Ma trận độ chính xác tại thời điểm t + 1.
- Ma trận độ phủ tại thời điểm t + 1.
- Các ngưỡng α,γ .
Ra : Các luật quyết định có ý nghĩa.
Phương pháp :
//Áp dụng định nghĩa 1.7 for i = 1 to m do
for j = 1 to n do begin
if Acc(Ci, Dj) ≥ α and Cov(Ci, Dj) ≥ γ then đưa ra Ci → Dj;
end.
Kết thúc.
* Nhận xét:
Theo thời gian sự thay đổi của các giá trị thuộc tính có thể được kéo dài trong nhiều thời điểm khác nhau, khi đó toàn bộ tiến trình thay đổi có thể được chia thành một vài phần nhỏ, có nghĩa là từ thời điểm t đến thời điểm t+1, từ thời điểm t+1 tiếp theo đến thời điểm t+2, …
Vì ta luôn thực hiện việc lưu lại ma trận độ hỗ trợ, các lớp tương đương điều kiện và các lớp tương đương quyết định, nên tại thời điểm mới (giả sử là t+2), ma trận độ hỗ trợ, các lớp tương đương đã thu được ở thời điểm trước (thời điểm t+1) sẽ được sử dụng lại như là các giá trị tại thời điểm t.
2.3.4. Độ phức tạp thuật toán
* Mệnh đề 2.1:
Độ phức tạp thời gian của thuật toán tính ma trận độ hỗ trợ tại thời điểm t là O(|U)2).
Chứng minh:
Giả sử lực lượng trung bình của lớp điều kiện là
m U |
| và lực lượng
trung bình của lớp quyết định là
n U |
| .
Khi đó, để tính độ hỗ trợ của một luật cần thực hiện
m U |
| *
n U |
| phép
tính. Có mn phần tử thì cần thực hiện phép tính là:
m U |
| *
n U |
| * mn = |U|2. Do vậy độ phức tạp thực hiện thuật toán là: O(|U|2).
* Mệnh đề 2.2:
Độ phức tạp thời gian của thuật toán tính ma trận độ hỗ trợ tại thời điểm t+1 khi làm thô các giá trị thuộc tính điều kiện là O(|U|2).
Chứng minh:
Cần m(m-1)/2 phép so sánh để tìm cặp lớp tương đương điều kiện Cp, Cq sẽ được kết hợp thành một lớp tương đương điều kiện mới.
Với mỗi cặp lớp tương đương Cp, Cq cần n phép cộng 2 dòng này để được dòng mới. Hơn nữa, vì có |CC| cặp, nên ta cần n*|CC| phép cộng.
Do vậy cần m*(m-1)/2+n*|CC| phép toán.
Vì |CC| ≤ m/2; m,n ≤ |U| nên |CC|≤|U|/2. Suy ra độ phức tạp thời gian thuật toán là O(|U|2).
* Mệnh đề 2.3:
Độ phức tạp thời gian của thuật toán tính ma trận độ hỗ trợ tại thời điểm t+1 khi làm mịn các giá trị thuộc tính điều kiện O(|U|2).
Chứng minh:
Cần m phép tính để kiểm tra tất cả các lớp tương đương điều kiện mới Cp, Cq.
Với mỗi lớp thỏa mãn, cần n phép tính độ hỗ trợ của mỗi luật, trong đó mỗi phép tính cần
m U |
| *
n U |
| phép so sánh, đồng thời cần n phép trừ để tính giá trị các phần tử tại cột j.
Do vậy, số phép tính cần thực hiện là: m + số lớp thỏa mãn *n*
m U |
| *
n U |
| +n.
Trong trường hợp tồi nhất, số lớp thỏa mãn sẽ là m. Do đó, cần nhiều nhất là: m+n*n*
m U |
| *
n U |
| +n = m+n+|U|2 phép toán.
Vì m, n ≤|U|, suy ra độ phức tạp thời gian của thuật toán là O(|U|2).
* Mệnh đề 2.4:
Độ phức tạp thời gian của thuật toán tính ma trận độ hỗ trợ tại thời điểm t+1 khi làm thô các giá trị thuộc tính quyết định là O(|U|).
Chứng minh:
Trường hợp tồi nhất cần 2n phép tính để tìm 2 lớp quyết định được kết hợp thành lớp tương đương quyết định mới.
Để tính độ hỗ trợ của các luật Ci →Dz cần m phép cộng.
Vậy số phép tính cần thực hiện là 2n+m phép tính.
Vì m,n ≤|U|. Suy ra độ phức tạp thời gian của thuật toán là O(|U|).
* Mệnh đề 2.5:
Độ phức tạp thời gian thuật toán tính ma trận độ hỗ trợ tại thời điểm t+1 khi làm mịn các giá trị thuộc tính quyết định O(|U|2).
Chứng minh:
Cần n phép kiểm tra để tìm lớp quyết định được tách thành 2 lớp mới.
Với mỗi lớp, cần m phép tính độ hỗ trợ và m phép trừ.
Vậy cần m+n*
m U |
| *
n U |
| +m = m+n+
n U |2
| phép tính.
Vì m, n ≤|U|. Suy ra độ phức tạp thời gian của thuật toán là O(|U|2)
* Mệnh đề 2.6:
Độ phức tạp thời gian của thuật toán tính ma trận độ chính xác và độ phủ là O(|U|2).
Chứng minh:
Để tính ma trận độ chính xác Acc cần m(n-1) phép tính tổng dòng, |U|2 phép tính để tính độ hỗ trợ và mn phép chia. Do vậy, cần m(n-1) + |U|2 + mn phép tính (m, n là kích thước ma trận độ hỗ trợ tại thời điểm t+1).
Tương tự, để tính ma trận độ chính xác Cov cũng cần mn-m-n+2|U|2 phép tính.
Suy ra, để tính ma trận độ chính xác và ma trận độ phủ cần 4mn-m- n+2|U|2 phép tính.
Vì m, n ≤|U|, do đó thuật toán có độ phức tạp là O(|U|2).
* Mệnh đề 2.7:
Độ phức tạp của thuật toán trích rút luật quyết định có ý nghĩa là O(|U|2).
Chứng minh:
Với mỗi phần từ Acc(Ci, Dj) hoặc Cov(Ci, Dj), ta cần 1 phép so sánh với ngưỡng, có tất cả 2mn phép so sánh.
Vì m, n ≤|U|, nên suy ra thuật toán này có độ phức tạp thời gian O(|U|2)
* Mệnh đề 2.8:
Độphức tạp thuật toán trích rút các luật quyết định có ý nghĩa khi làm thô, làm mịn các giá trị thuộc tính là O(|U|2).
Chứng minh:
Kết quả này được suy ra trực tiếp từ kết quả của các mệnh đề từ 2.1 đến mệnh đề 2.7.
Độ phức tạp không gian:
Trong các thuật toán từ 2.1 đến 2.6 được trình bày ở trên, ngoài m ô nhớ để lưu các lớp tương đương điều kiện và n ô nhớ để lưu các lớp tương đương quyết định, ta chỉ cần thêm mn ô nhớ để lưu một ma trận độ hỗ trợ. Do đó thuật toán cần tất cả mn+m+n ô nhớ. Hơn nữa, vì m,n ≤|U|. Do đó thuật toán có độ phức tạp không gian là O(|U|2).
2.3.5. Ví dụ minh họa
Cho bảng quyết định đầy đủ và nhất quán sau:
U A1 a2 A3 D U a1 a2 a3 D
u1 1 1 1 0 U7 2 2 2 2
u2 1 2 1 0 U8 2 3 3 2
u3 1 2 1 0 U9 2 3 3 2
u4 1 2 1 0 U10 2 3 3 2
u5 1 2 2 1 U11 3 3 3 3
u6 2 2 1 1 U12 3 3 3 3
Trong đó, C = {a1, a2, a3} là tập các thuộc tính điều kiện, D = {d} là thuộc tính quyết định.
Giả sử tiến trình thay đổi của các giá trị thuộc tính thay đổi diễn ra trong hai trường hợp sau:
+ Trường hợp 1: Các giá trị {2, 3} của thuộc tính a1 được làm thô thành giá trị mới là {2} (ta ký hiệu trường hợp này diễn ra từ thời điểm t đến thời điểm t+1).
+ Trường hợp 2: Giá trị {2} của thuộc tính quyết định d được làm mịn thành hai giá trị mới {2’, 2’’} thỏa mãn f(x7, d) = f(u8, d) = 2’ và f(u9, d) = f(u10, d) = 2’’ (ký hiệu trường hợp này diễn ra từ thời điểm t+1 đến t+2).
Tại thời điểm t, ta có:
U/C = {C1, C2, …, C7} với
C1 = {u1}, C2 = {u2, u3, u4}, C3 = {u5}, C4 = {u6}, C5 = {u7}, C6 = {u8, u9, u10}, C7 = {u11, u12};
U/D = {D1, D2, D3, D4} với D1 = {u1, u2, u3, u4}, D2 = {u5, u6}, D3 = {u7, u8, u9, u10}, D4 = u11, u12}.
Dễ dàng tính ngay được ma trận độ hỗ trợ Sup(t)(C, D) là:
Sup(t)(C, D) =
2 0 0 0
0 3 0 0
0 1 0 0
0 0 1 0
0 0 1 0
0 0 0 3
0 0 0 1
Ma trận độ hỗ trợ tại thời điểm t+2 là: