克利夫兰心脏病数据集 - 无法描述 class
Cleveland heart disease dataset - can’t describe the class
我正在使用 Cleveland Heart Disease dataset from UCI 进行 class 化,但我不理解 target 属性。
数据集描述说值从 0 到 4 但属性描述说:
0: < 50% coronary disease
1: > 50% coronary disease
我想知道如何解释这个,这个数据集是多 class 还是二元 class 化问题?我必须将值 1-4 分组为单个 class(存在疾病)吗?
这基本上意味着存在不同的心脏病已用 1、2、3、4 表示,而没有则简单地用 0 表示。现在,在这个数据集上进行的大部分实验都是基于二进制 classification,即存在(1、2、3、4)与不存在(0)。这种行为的一个原因可能是 class 不平衡问题(0 有大约 160 个样本,其余 1、2、3 和 4 构成另一半)和少量样本(总共只有大约 300 个样本)。因此,考虑到我们的约束,将此数据视为二进制 class 化问题而不是 multi-class class 化是有意义的。
这个数据集是多class还是二进制class化问题?
无需更改,数据集即可用于 multi-class class化问题。
并且我必须将值 1-4 分组为单个 class(存在疾病)吗?
是的,您必须这样做,只要您有兴趣将数据集用于二进制 class化问题。
如果你正在处理不平衡的数据集,你应该使用重采样技术来获得更好的结果。在不平衡数据集的情况下,classifier 总是 "predicts" 最常见的 class,而不对特征进行任何分析。
你应该试试 SMOTE,它是在现有元素的基础上为少数 class 合成元素。它从少数 class 中随机挑选一个点,并计算该点的 k 个最近邻居。
我还使用了交叉验证 K 折方法和 SMOTE,交叉验证确保模型从数据中获得正确的模式。
在衡量模型性能时,准确度指标误导,即使有更多的误报,它也显示出很高的准确度。使用 F1 分数和 MCC 等指标。
参考资料:
https://www.kaggle.com/rafjaa/resampling-strategies-for-imbalanced-datasets
我正在使用 Cleveland Heart Disease dataset from UCI 进行 class 化,但我不理解 target 属性。
数据集描述说值从 0 到 4 但属性描述说:
0: < 50% coronary disease
1: > 50% coronary disease
我想知道如何解释这个,这个数据集是多 class 还是二元 class 化问题?我必须将值 1-4 分组为单个 class(存在疾病)吗?
这基本上意味着存在不同的心脏病已用 1、2、3、4 表示,而没有则简单地用 0 表示。现在,在这个数据集上进行的大部分实验都是基于二进制 classification,即存在(1、2、3、4)与不存在(0)。这种行为的一个原因可能是 class 不平衡问题(0 有大约 160 个样本,其余 1、2、3 和 4 构成另一半)和少量样本(总共只有大约 300 个样本)。因此,考虑到我们的约束,将此数据视为二进制 class 化问题而不是 multi-class class 化是有意义的。
这个数据集是多class还是二进制class化问题?
无需更改,数据集即可用于 multi-class class化问题。
并且我必须将值 1-4 分组为单个 class(存在疾病)吗?
是的,您必须这样做,只要您有兴趣将数据集用于二进制 class化问题。
如果你正在处理不平衡的数据集,你应该使用重采样技术来获得更好的结果。在不平衡数据集的情况下,classifier 总是 "predicts" 最常见的 class,而不对特征进行任何分析。
你应该试试 SMOTE,它是在现有元素的基础上为少数 class 合成元素。它从少数 class 中随机挑选一个点,并计算该点的 k 个最近邻居。
我还使用了交叉验证 K 折方法和 SMOTE,交叉验证确保模型从数据中获得正确的模式。
在衡量模型性能时,准确度指标误导,即使有更多的误报,它也显示出很高的准确度。使用 F1 分数和 MCC 等指标。
参考资料:
https://www.kaggle.com/rafjaa/resampling-strategies-for-imbalanced-datasets