扩展或压缩功能?

数据挖掘 机器学习 分类 特征选择
2022-03-05 00:35:26

我有一个针对 3 个类别的人的分类任务。我想为此应用机器学习。我有 10 个数据源,它们具有相同的字段(比如 4 个:年龄、职位、组织数量、追随者数量)。数据不完整,某些配置文件中可能缺少某些字段。训练集是有限的(比如 300 个示例)。

我有两种特征工程策略,我不知道该使用哪一种。

  1. 扩展特征:取40个特征(Profile 1 age, Profile 1 job title, ..., Profile 10 age, Profile 10 job title)。

  2. 紧凑的特征:采用 4 个特征,并应用一些启发式方法来合并来自不同配置文件的值。比如说,取最频繁出现的年龄和职位,取最大组织数,取粉丝数之和。

通常使用什么策略来获得最佳结果,为什么?

1个回答

我的看法是,你的 10 个数据来源,它们都指的是同一组人。根据属性,有些可以扩展,有些可以合并...

年龄等属性应该是唯一的,因此将其扩展为 Profile 1 age、profile 2 age 是没有意义的……一种简单的方法是合并它们,使用平均值或使用最大值。扩大年龄只会将冗余数据添加到您的特征矩阵中,并增加其维度,在大多数情况下,这无助于模型的泛化性能。

另一方面,可以扩大追随者的数量。根据数据源的不同,一个人在 Twitter 上有 10 个关注者,但在 Google+ 上有 1000 个关注者可能仅仅意味着他几乎不使用 Twitter。

话虽如此,您选择特征或设计新特征的方式应该会提高您的模型性能,因此,如果与使用追随者总数的方式相比,增加追随者数量实际上会降低交叉验证或测试性能,那么您可以简单地使用追随者总数.