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

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
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
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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计算决策树信息增益内容请搜索靠谱客的其他文章。

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

评论列表共有 0 条评论

立即
投稿
返回
顶部