×

特征工程(Feature Engineering)

hqy hqy 发表于2025-02-25 11:17:09 浏览12 评论0百度已收录

抢沙发发表评论

1.特征工程

特征工程包括:

利用相互信息确定哪些特征最重要在多个实际问题域中发明新特性使用目标编码对高基数分类进行编码用k-means聚类创建分割特征用主成分分析法将数据集的变化分解为特征

特征工程的目标:

特征工程的目标是使数据更适合当前的问题。

例如“体表温度”,通常测量热指数和风寒指数。这些测量试图根据空气温度、湿度和风速来测量人类感知到的温度,这些我们可以直接测量的东西。你可以把表面温度想象成一种特征工程的结果,一种试图让观测到的数据与我们真正关心的东西更相关的尝试:外界的真实感受!特征工程用来:

提高模型的预测性能减少计算量或者数据需求提高结果的可解释性

特征工程的指导思想:

为了使特性有用,它必须与模型能够学习的目标有关系。例如,线性模型只能学习线性关系。因此,使用线性模型时,您的目标是变换特征,使其与目标的关系呈线性。

这里的关键思想是,应用于特征的转换本质上成为模型本身的一部分。假设你试图从一边的长度来预测正方形地块的价格。将线性模型直接拟合到长度会产生很差的结果:这种关系不是线性的。

如果我们把长度平方得到面积,这样我们创建一个线性关系。向特征集中添加面积意味着该线性模型现在可以拟合抛物线。换言之,对特征进行平方处理,使线性模型具有拟合平方特征的能力。

这显示了为什么在特性工程中可以获得如此高的时间回报。即使你的模型学不到什么关系,你也可以通过转换来适应模型。在开发特性集时,可以通过考虑什么信息对于模型来说可以实现最佳性能。

2.例子

混凝土数据集包含各种混凝土配方和最终产品的抗压强度,抗压强度是衡量这种混凝土能承受多大荷载的指标。该数据集的任务是根据混凝土的配方预测其抗压强度。

你可以在这里看到各种各样的混凝土成分。稍后我们将看到,添加一些从这些特性派生的附加特性如何帮助模型了解它们之间的重要关系。

我们将首先通过在未扩充的数据集上训练模型来建立基线。这将帮助我们确定我们的新特性是否真的有用。

在特性工程过程的开始阶段,建立这样的基线是一个很好的实践。基准分数可以帮助你决定新功能是否值得保留,或者是否应该放弃它们并尝试其他功能。

如果你曾经在家做饭,你可能知道配方中的配料比例通常比绝对量更能预测配方的结果。我们可以推断,上述特征的比值将是压缩强度的一个很好的预测指标。

下面的单元格向数据集添加了三个新的比率特性。

果然,性能提高了!这就证明,新的比率特征显露了重要的信息模型,这是原来没有检测到的。