機械学習(周志華)参考答案第七章ベキス分類器7.6


機械学習(周志華)参考答案第七章ベキス分類器7.6
機械学習(周志華スイカ本)参考答案カタログ
  • http://blog.csdn.net/icefire_tyh/articale/detail/520644910
  • 機械学習(周志華)参考答案第七章ベキス分類器
  • http://blog.csdn.net/icefire_tyh/articale/detail/52167273
  • 7.6.プログラミングを試してAODE分類器を実現し、スイカデータセット3.0をトレーニングセットにして、「測定1」サンプルを分類します。このテーマは3.3とほぼ同じで、半シンプルなベノス分類器を使っています。各ノードが他のすべてのノードであると仮定しています。しきい値は通常30に設定されているが、ここでは明らかにしきい値の制限がない。計算結果が正の確率は0.099で、負の確率は0.000458です。連続属性の結合確率が面倒くさいので、ここでは離散属性だけを処理して判断します。
    x = xlsread('C:\Users\icefire\Desktop\ml\  3.xlsx', 'sheet1', 'A1:Q6');
    y = xlsread('C:\Users\icefire\Desktop\ml\  3.xlsx', 'sheet1', 'A9:Q9');
    
    %    
    test=x(:,1);
    %     
    pn=[3; 3; 3; 3; 3; 2];
    
    pc=0;   %      
    nc=0;   %      
    
    % 6       
    for i=1:6
        c=zeros(2,1);
        %    ,  p(xi|c)
       for j=1:17
           if(x(i,j)==test(i))
               c(y(j))=c(y(j))+1;
           end
       end
       tpc=1;
       tnc=1;
       %    ,  p(xj|c,xi)
       for j=1:6
           ct=zeros(2,1);
           for k=1:17
               if(x(i,k)==test(i) && x(j,k)==test(j))
                   ct(y(j))=ct(y(j))+1;
               end
           end
           tpc = tpc * (ct(1)+1)/(c(1)+pn(j));
           tnc = tnc * (ct(2)+1)/(c(2)+pn(j));
       end
       pc=pc+(c(1)+1)/(8+pn(i))*tpc;
       nc=nc+(c(2)+1)/(9+pn(i))*tnc;
    end