克利夫兰心脏病数据集-无法描述课程

时间:2019-07-23 17:21:24

标签: machine-learning scikit-learn dataset classification multiclass-classification

我正在使用Cleveland Heart Disease dataset from UCI 进行分类,但是我不理解 target 属性。

数据集描述说值从0到4,但属性描述说:

  

0:<50%冠心病

     

1:> 50%的冠心病

我想知道如何解释,这个数据集是多类还是二进制分类问题?我是否必须将值1-4归为一类(是否存在疾病)?

3 个答案:

答案 0 :(得分:0)

从根本上说,不同心脏病的存在已用1、2、3、4表示,而无心脏病简单地用0表示。现在,对该数据集进行的大多数实验都基于二进制分类,即存在(1、2、3、4)与不存在(0)。出现这种行为的一个原因可能是类别不平衡问题(0个样本约有160个,其余的1、2、3和4构成了另一半)和少量样本(仅约300个样本)。因此,考虑到我们的约束,将这些数据视为二进制分类问题而不是多分类分类是有道理的。

答案 1 :(得分:0)

  • 该数据集是多类还是二进制分类问题?

    无需更改,该数据集即可用于多类分类问题。

  • 我是否必须将1-4的值归为一类(疾病存在)?

    是的,只要您有兴趣将数据集用于二进制分类问题,就必须这样做。

答案 2 :(得分:0)

如果您正在处理不平衡的数据集,则应使用重新采样技术以获得更好的结果。如果数据集不平衡,分类器将始终“预测”最常见的类,而无需对特征进行任何分析。

您应该尝试SMOTE,它是基于少数类的综合类。它可以从少数族裔中随机选择一个点,并为此点计算k个最近邻。

我还使用了交叉验证K折方法和SMOTE,交叉验证可确保模型从数据中获取正确的模式。

在测量模型的性能时,准确性度量会产生误导,即使有更多的误报,它也显示出很高的准确性。使用F1得分和“我的客户中心”等指标。

参考文献:

https://www.kaggle.com/rafjaa/resampling-strategies-for-imbalanced-datasets