我有一个包含 200 多个类的两列数据集(特征和类),输入特征必须分类到这些类中。对于某些类,类的出现范围从 1 到几千不等。特征列有文本和数字。我尝试了以下方式:
来自 UBL 的 SMOTE
SmoteClassif(lab ~ ., dat, C.perc = "balance",dist="HEOM")
这给出了警告:
Warning messages:
1: SmoteClassif :: Nr of examples is less or equal to k.
Using k = 1 in the nearest neighbours computation in this bump.
2: SmoteClassif :: Nr of examples is less or equal to k.
Using k = 1 in the nearest neighbours computation in this bump.
3: SmoteClassif :: Nr of examples is less or equal to k.
Using k = 2 in the nearest neighbours computation in this bump.
4: SmoteClassif :: Nr of examples is less or equal to k.
Using k = 2 in the nearest neighbours computation in this bump.
但这仍然很好地平衡了所有类lab
。但是,并非所有特征都存在于 SMOTED 数据集中。这不是数据丢失,即缺少训练模型所需的特征吗?我是这个领域的新手。警告是否解释了问题?我已经尝试过k=1
,但最终结果仍然相同。
任何建议都会有所帮助。