Phương pháp sinh luật dựa trên dữ liệu và ĐSGT

Một phần của tài liệu Phát triển phương pháp luận trích rút hệ luật ngôn ngữ mờ giải bài toán phân lớp, hồi quy dựa trên đại số gia tử (Trang 43 - 47)

1 4 4 1 Sinh luật mờ dựa trên dữ liệu cho bài toán hồi quy

Để tránh phải đối mặt với sự bùng nổ theo cấp số nhân của không gian luật phải xem xét như phương pháp sinh luật bằng tổ hợp Nguyễn Cát Hồ và cộng sự đã phát triển thuật toán sinh luật từ mẫu dữ liệu và hệ khoảng tương tự được xây dựng bằng ĐSGT [59] Ý tưởng của phương pháp này được mô tả khái quát như sau:

Xét một mẫu dữ liệu dp = (ap,1, ap,2, …,ap,n, ap,n+1) của tập dữ liệu D, với mỗi

thành một phân hoạch, ở đây tồn tại duy nhất từ xj,i ∈ S( kj) để apj ∈ℭ(�, ), với j = 1, n + 1 Khi đó luật ngôn ngữ được sinh ra tương ứng với mẫu dữ liệu dp có dạng

sau:

rp: If A1 is xp,1 & … & An is xp,n Then An + 1 is xp,n + 1 (1 24) Từ các luật dạng (1 24) ta sinh ra các luật có độ dài nhỏ hơn n để xây dựng cơ sở luật tối ưu

�� : If A1 is xq,1 & … & An is xq,n Then An + 1 is xq,n + 1 (1 25) trong đó xq,j ∈ �(� �) ∪ {Don’tcare}, j = 1, ,n

Như vậy với một mẫu dữ liệu dp, một bộ tham số tính mờ của các đại số gia tử của các biến đầu vào kí hiệu là π =1,…,πn+1), πj ={µLj, µ��−} với ĐSGT tuyến tính chỉ có 2 gia tử, j = 1, ,n+1, bộ tham số giới hạn độ dài tối đa của các từ sử dụng cho mỗi biến k = (k1, …, kn+1) và giới hạn độ dài tối đa của luật τmax ta có thể xây dựng một hàm để sinh ra một luật ngôn ngữ dạng (1 25) cho bài toán hồi quy như sau:

�� ��

Input:

− Một mẫu dữ liệu dp = (ap,1, ap,2, …, ap,n, ap,(n+1));

��

�� �� ��

− Số nguyên xác định độ dài lớn nhất cùa luật ngôn ngữ: τmax;

Output: Một luật ngôn ngữ có độ dài không vượt quá τmax

Begin

1 Đối với mẫu dữ liệu đầu vào dp = (ap,1, ap,2, …, ap,n, ap,(n+1)) ∈ D, đặt r(dp) là luật có dạng (1 24) và được mã hóa bằng một véc-tơ số nguyên (c1, c2, …, cn, cn+1); 2 Sinh ngẫu nhiên một số nguyên t, 0 < t ≤ τmax Sau đó, sinh ngẫu nhiên t số

nguyên j1, …, jt với ràng buộc 0 < j1 < … < jt n;

/* chỉ các thành phần,�� của dd, l = 1, …, t được sử dụng để sinh các tiền đề của rq(dp) có dạng (1 24), trong đó xq,j = “don’t care” với mọi j { j1, …, jt } */

�� �� �� ��

Procedure PrGenRule(dp, {�(��),�((��)): j n + 1}, τmax)

− Tập chỉ số của các từ của biến:�((��)), j = 1, …, n+1;

− Các tập khoảng tương tự {�(��): j ≤ n + 1} = {�(�� )(�): x ∈ �(��)};

3 Với l = 1, …, t, nếu điều kiện đối với một số �,��(��), �,� ∈ ��� (�,�� )∈

của r(dp) là 0 (chỉ số của từ “don’t care”) Luật thu được có độ dài t có dạng �� ��1…� = ��1 is�ex(��,�1 ) and and�� is�ex(��,�� ) ⇒ �n+1 is�ex(��,(+1)) 4 return �1…� End �� ��

các luật ngôn ngữ trong quá trình xây dựng hệ luật giải bài toán hồi quy của các thuật toán trong Mục 2 1 2 và Chương 3

1 4 4 2 Sinh luật mờ dựa trên dữ liệu cho bài toán phân lớp

Mỗi ĐSGT�Aj được liên kết với một thuộc tính thứ j của tập dữ liệu cảm sinh

��

nghĩa định lượng khoảng f(xj,i) = ℑ(h0xj,i) ⊆ ℑ(xj,i) biểu thị lõi ngữ nghĩa của từ ngôn ngữ xj,i nên được dùng để biểu diễn đỉnh của tập mờ dạng hình thang hoặc hàm S ứng với từ xj,i Các giá trị trong khoảng đỉnh của tập mờ phù hợp với ngữ nghĩa định tính của từ nhất nên có giá trị là 1

− − (adsbygoogle = window.adsbygoogle || []).push({});

trị cụ thể của kj, các khoảng tính mờ ℑk(xj,i), xj,i Xj,k, k ≤ kj và các ngữ nghĩa định lượng khoảng f(xj,i) được tính toán Các khoảng tính mờ ℑkj(xj,i) tạo thành phân hoạch mức kj trên miền giá trị của thuộc tính j Có duy nhất một khoảng tính mờ trong số các khoảng tính mờ ℑkj(xj,i) chứa điểm dữ liệu dp,j của mẫu dữ liệu dp Tất cả các khoảng tính mờ mức kj chứa dp,j (0 ≤ j n) tạo thành một siêu hộp H p và chỉ sinh các luật mờ từ các siêu hộp loại này Luật mờ cơ sở có độ dài n được sinh từ H p với nhãn lớp Cp của mẫu dữ liệu dp có dạng sau:

If A1 is xp,1 & … & An is xp,n Then Cp (Rb) Các luật mờ thứ cấp có độ dài L n thu được bằng cách bỏ bớt n - L thuộc tính có dạng sau:

if A j1 is xp,j1 & … & A jt is xp,jt Then Cq (Rsnd) trong đó 1 ≤ j1 ≤ … ≤ jt n Nhãn lớp Cq của luật Rq được xác định bởi độ tin cậy

c( Aq Ch ) [39], [40] của Rq:

(1 25) được ký hiệu là �1…� : đặt �� của r(dp) là chỉ số của từ �,�� ∈(��),

Thủ tục PrGenRule(dp, {�(��),�((��)): j n + 1}, τmax) sẽ được dùng để sinh

các từ ngôn ngữ ��� có độ dài lớn nhất kj theo thứ tự ngữ nghĩa của chúng Vì ngữ

Với giá trị cụ thể của các tham số ngữ nghĩa bao gồm fm( c j ), fm(Wj), fm(0j),

Cq = argmax{c ( Aq Ch ) | h = 1,…, M } Độ tin cậy của luật mờ được tính như sau:

(1 26) c ( Aq Ch ) = d pCh p=1 q q m (1 27)

trong đó µ Aq ( d p ) là độ đốt cháy của mẫu dữ liệu dp đối với tiền đề luật của Rq

thường được tính bằng biểu thức toán tử nhân theo công thức sau:

q

n j =1

(1 28)

với µq , j (d p , j ) là độ thuộc của điểm dữ liệu dp,j vào tập mờ Aq,j

Tập luật ứng viên thu được sau khi sàng lọc các luật không nhất quán bằng độ hỗ trợ Tiếp theo, một tiêu chuẩn sàng được sử dụng để chọn ra tập luật khởi đầu S0

gồm NR0 = NB0 × M luật với M là số nhãn lớp và NB0 là số luật dành cho mỗi lớp Tiêu chuẩn sàng được chọn có thể là độ tin cậy c (công thức (1 27)), độ hỗ trợ s (công thức (1 23)) hoặc tích c × s Độ hỗ trợ được tính theo công thức sau [42]:

s ( Aq Ch ) = ∑ µ Aq ( d p ) / m

d pCh

(1 29)

Mỗi luật được gán một trọng số để nâng cao độ chính xác phân lớp Trong bài luận án này, trọng số luật được tính theo công thức [40]:

CFq = c ( Aq Cq ) − cq ,2nd , (1 30) trong đó cq,2nd là độ tin cậy lớn nhất của các luật có cùng tiền đề Aq nhưng khác kết

luận Cq:

cq,2nd = max{c ( Aq Class h) | h = 1, , M ; h Cq } (1 31) Quá trình sinh luật trên là thủ tục sinh tập luật khởi đầu IFRG(Л, P, NR0, L)

[59] và được trình bày dưới dạng mã giả như bên dưới, trong đó Л là tập giá trị của các tham số ngữ nghĩa và L là số tiền đề tối đa của mỗi luật Độ phức tạp của thủ tục sinh tập luật khởi đầu IFRG là đa thức đối với số mẫu và số thuộc tính của tập dữ liệu P và đã được chứng minh trong [59]

Procedure IFRG (Л, P, NR0, L) //Thuật toán sinh tập luật khởi đầu

Input: -Tập mẫu dữ liệu P = {(dl, Cl) | l = 1, …, mt}, M lớp kết luận, n thuộc tính - Các tham số ngữ nghĩa Л, NR0 số luật khởi đầu, L độ dài tối đa của luật

Output: Tập luật khởi đầu S0 = {R1, …, RNR0}

Begin (adsbygoogle = window.adsbygoogle || []).push({});

��

�� ��

��

hình thang cho xj,i

//Bước 2: Xây dựng tập luật cơ sở từ P

2 Đặt mỗi luật cơ sở r(pl) độ dài n có dạng (Rb) và được mã hóa bằng một véc- tơ số nguyên (c0, c1, c2, …, cn, cn) với c0 là chỉ số của từ “Don’t care” Với mỗi mẫu dữ liệu pl = (dl, Cl) ∈ P, sinh một luật r(pl), trong đó tiền đề luật aj,i

= “Aj is xj,i” được mã hóa bởi cj được xây dựng bằng cách tìm từ ngôn ngữ

��

//Bước 3: Xây dựng các luật có độ dài ngắn hơn n từ các luật cơ sở

3 Xây dựng các luật có độ dài L n bằng cách, sinh tất cả k-tổ hợp của n phần tử T Với t T, sinh một luật một thứ cấp r(��� ) độ dài t có dạng (Rsnd), và tính độ tin cậy, độ hỗ trợ, xác định lại nhãn lớp, tính trọng số của r(��� ) //Bước 4: Sàng luật theo tiêu chuẩn sàng

4 Đặt S0 = Ø; //Khởi tạo tập luật khởi tạo là rỗng

Sắp xếp các luật r(��� ) giảm dần theo tiêu chuẩn sàng Thêm NR0/M luật đầu tiên trong tập r(��� ) vào S0

5 Return S0;

End

Thủ tục IFRG (Л, P, NR0, L) sẽ được dùng để sinh các luật ngôn ngữ trong quá trình xây dựng hệ luật của các thuật toán giải bài toán phân lớp trong chương 2

Một phần của tài liệu Phát triển phương pháp luận trích rút hệ luật ngôn ngữ mờ giải bài toán phân lớp, hồi quy dựa trên đại số gia tử (Trang 43 - 47)