-1
比方说,我有一个数据集有9个连续的数据列和4个分类数据列。在Matlab中,我的列分成两组并在其上做训练/测试(朴素贝叶斯)分开,并确定该连续列具有0.45错误率和分类列具有一个错误0.33。我的问题是 - 我如何确定组合错误?如何合并或合并错误率?
EDIT - 简单的伪代码概述加入:
for x = 1:num_iterations
Mdl_NB1 = fitcnb(TrainingSet_Con,TrainingTargets,'Distribution','normal');
Mdl_NB2 = fitcnb(TrainingSet_Dis,TrainingTargets,'Distribution','mn');
[NB1_label,NB1_Posterior,NB1_Cost] = predict(Mdl_NB1,TestPoint_Con);
[NB2_label,NB2_Posterior,NB2_Cost] = predict(Mdl_NB2,TestPoint_Dis);
NB1_cumulLoss = NB1_cumulLoss + resubLoss(Mdl_NB1);
NB2_cumulLoss = NB2_cumulLoss + resubLoss(Mdl_NB2);
end
NB1_avg_score = NB1_cumulLoss/num_iterations
NB2_avg_score = NB2_cumulLoss/num_iterations
total_avg_score = ???
三个明显的选择,原则上,有:
- (A + B)/ 2
- A * B
- (A *(CountA/TotalCount))+(B *(CountB/TotalCount))
但在这种情况下,不确定这些是否正确。
任何示例代码? – Marcin
请参阅编辑。 – swabygw