Giả thiết tổng quát nhất tron gH

Một phần của tài liệu Nghiên cứu và cài đặt các thuật toán phân lớp dữ liệu (Trang 36 - 38)

V: danh sách tập hợp các giá trị đã xuất hiện cho từng thuộc tính tính đến thời điểm đang xét ví

G giả thiết tổng quát nhất tron gH

S: giả thiết đặc thù nhất d: mỗi ví dụ huấn luyện

V: danh sách tập hợp các giá trị đã xuất hiện cho từng thuộc tính tính đến thời điểm đang xét ví

dụ thứ i

x: danh sách lưu mỗi ví dụ, không bao gồm giá trị phân loại

cx: bằng 1 nếu giá trị của thuộc tính phân loại là positive, bằng 0 nếu là negative

local G,S,d,V,x,cx,g,s,i,j,tmp; G:=[];

S:=[]; V:=[]; V:=[];

G ← giả thiết tổng quát nhất trong H

S ← giả thiết đặc thù nhất trong H

for i from 1 to nops(D[1][1]) do G:=[op(G),`?`]; S:=[op(S),` `]; V:=[op(V),{}]; od; G:=[[op(G)]]; S:=[[op(S)]]; V:=[op(V)];

Với mỗi ví dụ huấn luyện d, thực hiện: for d in D do

x:=d[1]; cx:=d[2];

for i from 1 to nops(x) do

if not member(x[i],V[i]) then V[i]:=V[i] union {x[i]}; fi;

od;

Nếu d là 1 positive example if cx=1 then

Xóa từ trong G tất cả các giả thiết inconsistent với d for g in G do

if Consistent(g,d)=false then G:=DeleteHypothesis(G,g); fi;

od;

Đối với mỗi giả thiết s trong S mà inconsistent với d for s in S do

Xóa s trong S

S:=DeleteHypothesis(S,s);

Thêm vào s tất cả các giả thiết h được tổng quát hóa tối thiểu từ S, sao cho: h

consistent với và một số giả thiết trong G tổng quát hơn h

S:=[op(S),MinimalGeneralizations(s,d,G)];

Xóa từ S bất kỳ giả thiết nào tổng quát hơn các giả thiết khác trong S tmp:=S;

for i from 1 to nops(S) do for j from 1 to nops(S) do if j<>i then if MoreGeneralThan(S[i],S[j]) then tmp:=DeleteHypothesis(tmp,S[i]); fi; fi; od; od; S:=tmp; fi; od;

Nếu d là một negative example else

Xóa trong S bất kỳ giả thiết nào inconsistent với d for s in S do

if Consistent(s,d)=false then S:=DeleteHypothesis(S,s); fi;

od;

Đối với mỗi giả thiết g trong G mà inconsistent với d for g in G do

if Consistent(g,d)=false then Xóa g trong G

G:=DeleteHypothesis(G,g);

Thêm vào G tất cả các giả thiết h được đặc thù hóa tối thiểu từ g, sao cho: h

consistent với d và một số giả thiết trong S đặc thù hơn h

G:=[op(G),op(MinimalSpecializations(g,d,S,V))];

Xóa trong G tất cả các giả thiết nào ít tổng quát hơn các giả thiết khác trong G tmp:=G;

for i from 1 to nops(G) do for j from 1 to nops(G) do if j<>i then if MoreGeneralThan(G[i],G[j]) then tmp:=DeleteHypothesis(tmp,G[j]); fi; fi; od; od; G:=tmp; fi; od; fi;

od;

RETURN (G,S); end: end:

- Hàm phân lớp New Instance:

> Phân loại lớp của new_instance đưa vào trên Version Space

Classification:=proc(S,G,new_instance::list)

H: tập giả thiết từ S và G h: mỗi giả thiết trong H

Một phần của tài liệu Nghiên cứu và cài đặt các thuật toán phân lớp dữ liệu (Trang 36 - 38)

Tải bản đầy đủ (DOCX)

(46 trang)
w