• 大小: 3KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-17
  • 语言: Matlab
  • 标签: Adaboost  

资源简介

matlab版的Adaboost对数据集分类,并测试准确率,阅读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

评论

共有 条评论