資源簡介
matlab版的Adaboost對數(shù)據(jù)集分類,并測試準確率,閱讀readme.txt即知

代碼片段和文件信息
function?[?acGControl?]?=?Adaboost(?TrainDataTrainLabelsControlDataControlLabelsMaxIter)
%UNtitleD2?Summary?of?this?function?goes?here
%???Detailed?explanation?goes?here
%?and?initializing?matrices?for?storing?step?error
RAB_control_error?=?zeros(1?MaxIter);
MAB_control_error?=?zeros(1?MaxIter);?
GAB_control_error?=?zeros(1?MaxIter);
ac=zeros(14);
%?Step3:?constructing?weak?learner
weak_learner?=?tree_node_w(1);?%?pass?the?number?of?tree?splits?to?the?constructor
%?and?initializing?learners?and?weights?matices
GLearners?=?[];
GWeights?=?[];
%?RLearners?=?[];
%?RWeights?=?[];
%?NuLearners?=?[];
%?NuWeights?=?[];
%?Step4:?iterativly?running?the?training
?
for?lrn_num?=?1?:?MaxIter?
????clc;
????disp(strcat(‘Boosting?step:?‘?num2str(lrn_num)‘/‘?num2str(MaxIter)));
%?????training?gentle?adaboost
????[GLearners?GWeights]?=?GentleAdaBoost(weak_learner?TrainData?TrainLabels?1?GWeights?GLearners);
????%evaluating?control?error
????GControl?=?sign(Classify(GLearners?GWeights?ControlData));
????GAB_control_error(lrn_num)?=?GAB_control_error(lrn_num)?+?sum(GControl?~=?ControlLabels)?/?length(ControlLabels);
????%training?real?adaboost
%?????[RLearners?RWeights]?=?RealAdaBoost(weak_learner?TrainData?TrainLabels?1?RWeights?RLearners);
%???
%?????%evaluating?control?error
%?????RControl?=?sign(Classify(RLearners?RWeights?ControlData));
%?
%?????RAB_control_error(lrn_num)?=?RAB_control_error(lrn_num)?+?sum(RControl?~=?ControlLabels)?/?length(ControlLabels);
%?
%?????%training?modest?adaboost
%?????[NuLearners?NuWeights]?=?ModestAdaBoost(weak_learner?TrainData?TrainLabels?1?NuWeights?NuLearners);
%?
%?????%evaluating?control?error
%?????NuControl?=?sign(Classify(NuLearners?NuWeights?ControlData));
%?
%?????MAB_control_error(lrn_num)?=?MAB_control_error(lrn_num)?+?sum(NuControl?~=?ControlLabels)?/?length(ControlLabels);
end?
ac(1)=1-GAB_control_error(end);?
ac(2)=1-RAB_control_error(end);?
ac(3)=1-MAB_control_error(end);?
ac=ac(1);
%?all_label=?NuControl+GControl+RControl;
%?all_label(all_label>0)=1;
%?all_label(all_label<0)=-1;
%?ac(4)=sum(all_label==ControlLabels)/length(all_label);
%?Step4:?displaying?graphs
%?figure?plot(GAB_control_error);
%?hold?on;
%?plot(MAB_control_error?‘r‘);
%?
%?plot(RAB_control_error?‘g‘);
%?hold?off;
%?
%?legend(‘Gentle?AdaBoost‘?‘Modest?AdaBoost‘?‘Real?AdaBoost‘);
%?xlabel(‘Iterations‘);
%?ylabel(‘Test?Error‘);
end
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2016-06-20?17:03??Adaboost\
?????文件????????2493??2016-05-27?09:16??Adaboost\Adaboost.m
?????文件????????2803??2016-05-25?11:38??Adaboost\newtest_random1.m
?????文件?????????277??2016-06-20?17:09??Adaboost\readme.txt
- 上一篇:批量讀ORL圖片 批量處理 再批量保存的MATLAB程序
- 下一篇:相位解纏算法
評論
共有 條評論