貝葉斯分類器(含MATLAB實現)
阿新 • • 發佈:2019-01-02
由於被測試的模式特徵向量通常存在隨機性,所獲得的模式樣本有一定的統計分佈。因此,採用統計決策的理論方法進行模式分類是常用的模式識別方法。這也是遙感影象土地分類的常用方法。統計決策函式以貝葉斯定理為基礎,一般需要滿足兩個基本條件:
1)已知模式向量的有關概率分佈先驗知識,如先驗概率、類條件概率密度。
2)待解決的問題中,其訓練樣本的類別是已知的,因此在已知的類別樣本的指導下進行模式分類的。稱為有監督分類。
貝葉斯分類器的分類原理是通過某物件的先驗概率,利用貝葉斯公式計算出其後驗概率,即該物件屬於某一類的概率,選擇具有最大後驗概率的類作為該物件所屬的類。
貝葉斯分類器的分類原理是通過某物件的先驗概率
MATLAB分類實現對fisherifis 中的versicolor 和cirginica 進行分類
load fisheriris;%繪製要分類的類別
SL =meas(51:end,1); SW=meas(51:end,2); group=species(51:end); h1=gscatter(SL,SW ,group,'rb','v^',[],'off'); set(h1,'lineWidth',2); legend('Fisher versicolor','Fisher virginica','Location','NW');
%分類
[X,Y]=meshgrid(linspace(4.5,8),linspace(2,4));
X=X(:);
Y=Y(:);
[C,err,P,logp,coeff]=classify([X,Y],[SL,SW],group,'quadratic');
%分類觀察
hold on; gscatter(X,Y,C,'rb','.',1,'off'); K=coeff(1,2).const; L=coeff(1,2).linear; Q=coeff(1,2).quadratic; f=sprintf('0=%g+%g*x+%g*y+%g*x^2+%g*x.*y+%g*y.^2',K,L,Q(1,1),Q(1,2)+Q(2,1),Q(2,2)); h2=ezplot(f,[4.5 8 2 4]); set(h2,'Color','m','LineWidth',2); axis([4.5 8 2 4]); xlabel('Sepal Length'); ylabel('Sepal Width'); title('{\bf Classification with Fisher Training Data}');
原始要分類的影象:
結果顯示: