如何在机器学习模型中使用test_proportion数据?

问题描述 投票:0回答:1

我有一个有4000个CNN特征的数据,它是一个二元分类问题,我只知道测试数据是1和0的比例。我怎么能告诉我的模型使用比例数据来预测测试标签呢? (比如有没有一种方法可以说为了达到这个比例,我将给这个实例0。)

我如何使用它来提高准确率 ? 在我的案例中,训练数据主要由1(85%)和0(15%)组成,但是在我的测试数据中,l的比例被给出为(%38),所以它与训练数据有很大不同。

我做了一点平衡数据的工作,它帮助了我。然而我的模型仍然预测了几乎所有数据的1。这可能也是因为适应问题而发生的。

按照@birdwatch的建议,我降低了0值的阈值,并尝试增加预测上的0标签数。

# Predicting the Test set results 
y_pred = classifier.predict_proba(X_test) 
threshold=0.3 
y_pred [:,0] = (y_pred [:,0] < threshold).astype('int') 

之前的类数如下。

 1 :   8906
 0 :   2968

改变阈值后,现在是

1 :  3221
0 :  8653

然而,有没有其他的方法,我可以使用test_proportions,以确保结果?

python machine-learning classification random-forest train-test-split
1个回答
1
投票

没有任何合理的方法。这样做会在模型中产生一个奇怪的偏差。你可以做的一件事是接受不太可能的结果,只有它有足够高的分数。通常你会使用0.5的阈值,但在这里你可以使用0.7。

© www.soinside.com 2019 - 2024. All rights reserved.