我是靠谱客的博主 犹豫柜子,最近开发中收集的这篇文章主要介绍《统计学习方法》matlab计算决策树信息增益,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

function [ empEnt ] = expEnt( A )
%计算列向量的经验熵
empEnt=0;
list=unique(A);
l=length(list);
for i=1:l
    Length=length(find(A==list(i)));
    p=Length/length(A);
    empEnt=empEnt-p*log2(p);
end


end

function [ ecEnt ] = Ecent( A,B,emEnt)
%计算经验条件熵
ecEnt=emEnt;
Lengh_A=length(A);
list=unique(A);
Length=length(list);
for i=1:Length
    loc=find(A==list(i));
    L=length(loc);
    Save=zeros(L,1);
    for j=1:L
        Save(j)=B(loc(j));
    end
   ecEnt=ecEnt-expEnt(Save)*L/Lengh_A;
end
end

function [Ecents] = Ecents( A )
%显示所有经验条件熵
size_A=size(A);
list_A=A(:,size_A(2));
empEnt=expEnt(list_A);
Ecents=zeros((size_A(2)-1),1);
for i=1:size_A(2)-1
    data=A(:,i);
    Ecents(i)=Ecent(data,list_A,empEnt);
end
    


end

三段代码用来计算P75的信息增益,第一段是经验熵,第二段是单独列的经验条件熵,第三段是显示所有经验条件熵。需要预处理数据,做成矩阵形式。

最后

以上就是犹豫柜子为你收集整理的《统计学习方法》matlab计算决策树信息增益的全部内容,希望文章能够帮你解决《统计学习方法》matlab计算决策树信息增益所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部