我正在使用Cleveland Heart Disease dataset from UCI 进行分类,但是我不理解 target 属性。
数据集描述说值从0到4,但属性描述说:
0:<50%冠心病
1:> 50%的冠心病
我想知道如何解释,这个数据集是多类还是二进制分类问题?我是否必须将值1-4归为一类(是否存在疾病)?
答案 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