1 %> @brief Increase of classification rate
as eClass is incrementally trained
5 %> This example shows how an incremental classifier can vary its performance depending on the order the training data is fed into the classifier.
7 %> @image html demo_reptt_incr.png
11 % Random 90%-10% split
14 blmisc_split_proportion01 = o;
15 pieces = blmisc_split_proportion01.use(ds01);
18 % eClass0 Fuzzy classifier
20 o = o.setbatch({
'scale', 0.8, ...
21 'epsilon', exp(-1), ...
22 'flag_consider_Pmin', 1, ...
23 'flag_perclass', 1, ...
24 'flag_clone_rule_radii', 1, ...
25 'flag_iospace', 1, ...
26 's_f_get_firing',
'frbm_firing_exp_default', ...
27 's_f_update_rules',
'frbm_update_rules_kg1', ...
28 'flag_rls_global', 0, ...
34 frbm01.flag_rtrecord = 1;
35 frbm01.record_every = 3;
36 frbm01.title =
'eClass0 1 rule per class';
39 % eClass1 fuzzy classifier
41 o = o.setbatch({
'scale', 0.8, ...
42 'epsilon', exp(-1), ...
43 'flag_consider_Pmin', 1, ...
44 'flag_perclass', 0, ...
45 'flag_clone_rule_radii', 1, ...
46 'flag_iospace', 1, ...
47 's_f_get_firing',
'frbm_firing_exp_default', ...
48 's_f_update_rules',
'frbm_update_rules_kg1', ...
49 'flag_rls_global', 0, ...
55 frbm02.flag_rtrecord = 1;
56 frbm02.record_every = 3;
57 frbm02.title =
'eClass1 1 rule only';
60 % SGS that will give the dataset permutations of the 90% used
for training
62 o = o.setbatch({
'flag_group', 0, ...
63 'flag_perclass', 0, ...
64 'randomseed', 4321, ...
71 o.estlabels = ds01.classlabels;
72 o.testlabels = ds01.classlabels;
73 estlog_classxclass01 = o;
76 o = o.setbatch({
'decisionthreshold', 0});
80 % oi.block_mold = {frbm01, frbm02};
81 oi.block_mold = {frbm02};
82 oi.log_mold = {estlog_classxclass01};
83 oi.postpr_est = decider01;
85 oi.flag_parallel = 1; % <------------------------Note that it will
try to use the MATLAB Parallel Computing Toolbox
87 irdata_incr01 = oi.use(pieces);
101 vis_alldata01.use(irdata_incr01);
108 vis_means01.use(irdata_incr01);
110 ylim([min(irdata_incr01.X(:))*0.975, max(irdata_incr01.X(:))*1.025]);
113 title(
'Individual runs and average curve');
function maximize_window(in h, in aspectratio, in normalizedsize)
Splits dataset in two according to proportion specified.
Visualization - All curves in dataset.
Incremental learning curve - to test incremental classifiers.
function load_data_uci_wine()
Block that resolves estimato posterior probabilities into classes.
function save_as_png(in h, in fn, in dpi)
Records (test class)x([rejected, estimation class]) hits.
Visualization - Class means.
function enlighten_colors(in factor)
Analysis Session (AS) base class.