基奇PCA的貝葉斯網絡分糞器研究
令x為表示環境的m維隨機向量。假設x均值為零,即本文引用地址:http://www.104case.com/article/157806.htm
E[x]=0 (4)
令w表示m維單位向量,x在ω上投影。該投影被定義為向量x和ω的內積,表示為:
主元分析的目的就是尋找一個權值向量w,使得表達式的值最大化:
即使得式(7)值最大化的w是矩陣的最大特征值所對應的特征向量。
鑒于主元分析的優點,這里引入主元分析技術給數據集降維,然后用降維后的數據構建網絡,提高學習貝葉斯網絡結構算法的效率、簡化網絡結構。構造貝葉斯網絡的算法步驟如下:
(1)用普瑞姆算法生成最大似然樹構造初始貝葉斯網絡;
(2)對所有互信息大于閾值且在當前圖中無邊的結點對n1、n2:①找出它們鄰接路徑上的鄰居結點,設n1、n2的鄰居結點的結點集分別為S1和S2;② 令集合S1和S2中較小的一個作為條件集合C;③計算條件互信息v=I(n1,n2|c),如果vε,則返回分離;否則,如果C只包含一個結點,那么轉去步驟⑤,否則,對每一個i,令Ci=c{C中的第i個結點},vi=I(n1,n2|Ci);④如果vminε,則返回分離,否則返回步驟③;⑤如果S2沒有用過,那么用S2作為條件集C,返回步驟③;否則,返回失敗。⑥如果這對結點在當前圖中能夠被分離,則檢測下一對結點,否則,向網中添加連接這對結點的邊。
(3)對每一條圖中存在邊的結點對,如果除這條邊外它們之間還存在其他路徑,那么暫時從圖中移掉這條邊,然后對這對結點進行步驟①~⑥的檢驗;如果這對結點不能被分離,則仍將前面移掉的邊加入圖中,否則永久移除這條邊;
(4)用碰撞識別V結構的方法定向網絡中的邊,對不能構成V結構的邊用打分的方法對其進行定向。
4 實驗
用IRIS實際數據、Zoo Data、Glass Identification Data作為網絡學習的數據集,這3組數據是UCI數據集中3個用于分類的數據集。
其中IRIS數據和Glass Identification Data是連續的,所以在用數據學習貝葉斯網絡前需要對數據進行模糊離散化處理。以下實驗中的每個屬性的離散化標度是任意選擇的。實驗1,比較經PCA降維的數據構造貝葉斯網絡并進行分類的結果與未經PCA降維的數據分類結果的準確率,如表1所示。
用經PCA降維的數據和未經降維的數據集分別進行貝葉斯網絡結構的學習,所用時間如表2所示。
評論