Machine learning 不平衡数据集的Knn分类器

Machine learning 不平衡数据集的Knn分类器,machine-learning,Machine Learning,我想估计一下分类器在我的不平衡数据集上的工作情况。当我试图从sklearn中拟合KNN分类器时,它对少数族裔没有任何帮助。因此,我所做的是用k=R(其中R是不平衡比1:R)拟合分类器,预测每个测试点的概率,如果少数类分类器的概率输出大于R(其中R是不平衡比1:R),则为少数类分配一个点。我这样做是为了估计分类器的性能(F1分数)。我在生产中不需要分类器。我做的对吗?既然您在评论中提到不想使用重采样,那么解决方法之一就是批处理。从多数类创建多个数据集,使它们与少数类的比率为1:1。训练多个模型,每

我想估计一下分类器在我的不平衡数据集上的工作情况。当我试图从sklearn中拟合KNN分类器时,它对少数族裔没有任何帮助。因此,我所做的是用k=R(其中R是不平衡比1:R)拟合分类器,预测每个测试点的概率,如果少数类分类器的概率输出大于R(其中R是不平衡比1:R),则为少数类分配一个点。我这样做是为了估计分类器的性能(F1分数)。我在生产中不需要分类器。我做的对吗?

既然您在评论中提到不想使用重采样,那么解决方法之一就是批处理。从多数类创建多个数据集,使它们与少数类的比率为1:1。训练多个模型,每个模型得到多数组的一部分和少数组的全部。对所有模型进行预测,并从中投票决定最终结果


但我建议使用SMOTE而不是这种方法。

欢迎使用SMOTE。解决方法是基于频率的重采样。可能的重复。我还处理过一次不平衡数据,那次我使用了
SMOTE
,并综合生成了少数类示例,以便多数类和少数类数据的比率变成
1:1
。您可以在这里检查SMOTE是否有任何不重新采样的方法??我不太清楚,但作为替代方案,您可以从数据集中随机选择多数类数据,使少数类的比率始终为
1:1
。如果您不受要使用的分类器的限制,您可以尝试使用决策树或随机林等参数的分类器,您可以自己指定类权重。这样一来,你的模型也会开始学习少数族裔。有关实施的详细信息,请参阅。