Classification Vowpal Wabbit不平衡类

Classification Vowpal Wabbit不平衡类,classification,vowpalwabbit,Classification,Vowpalwabbit,我试图拟合二元分类的模型,并预测属于这些类的值的概率 我的第一个问题是我不能解释结果。我有一个训练集,其中标签=0和标签=1(不是-1和+1) 我运行模型: vw train.vw-f model.vw--link=logistic 下一步: vw test.vw-t-i model.vw-p pred.txt 然后我有一个带有以下值的文件pred.txt: 0.5 0.5111 0.5002 0.5093 0.5 我不明白0.5是什么意思?pred.txt中的所有值约为0.5。我写了脚本并从结

我试图拟合二元分类的模型,并预测属于这些类的值的概率

我的第一个问题是我不能解释结果。我有一个训练集,其中
标签=0
标签=1
(不是
-1和+1

我运行模型:

vw train.vw-f model.vw--link=logistic

下一步:

vw test.vw-t-i model.vw-p pred.txt

然后我有一个带有以下值的文件
pred.txt

0.5
0.5111
0.5002
0.5093
0.5

我不明白0.5是什么意思?
pred.txt
中的所有值约为0.5。我写了脚本并从结果中扣除0.5。我明白这句话:

0
0.111
0.002
0.093
0

这是我想要的概率吗

这是我的第二个问题——我的目标类不平衡。我有95%的阴性结果(0)和5%的阳性结果(1)。我如何规定VW造成了类的不平衡,比如
{class 0:0.1,class 1:0.9}


或者在准备数据集时应该这样做?

对于VW中的二进制分类,需要将标签(从0和1)转换为-1和+1,例如使用
sed-e's/^0/-1/'

除了
--link=logistic
之外,如果要将预测解释为概率,还需要使用
--loss\u function=logistic

对于不平衡类,您需要使用并调整heldout集(或交叉验证)上的重要性权重常量,以及您选择的一些外部评估指标(例如AUC或F1)

另见: