SVM训练时候样本不均衡怎么设置惩罚项

  • 问题:
    在做气泡检测项目时候,利用svm对训练集进行训练的时候,我的数据集存在这严重的不均衡现象,具体情况如下:
训练集数据情况:
正样本(有气泡):150    标签:+1
负样本(无气泡):800    标签:-1
负样本/正样本=800/150=5.3
测试集数据情况:
正样本(有气泡):53     标签:+1
负样本(无气泡):100    标签:-1

显然正负样本很不均衡,针对这种情况的解决方案就是设定惩罚项的权重,也就是调节svmtrain()函数的参数-wi,在这个项目中,因为负样本/正样本=800/150=5.3也就是说label(-1)/label(+1)=5.3,所以为了平衡这种样本数量的不均衡,设定惩罚项C的权重如下:
样本不均衡描述:label(-1)/label(+1)=5.3
权重设置描述:-w1=5, -w-1=1

你可能感兴趣的:(SVM训练时候样本不均衡怎么设置惩罚项)