CICC科普栏目|8个特征工程技术,提高机器学习预测能力发表时间:2024-08-01 14:12 在机器学习方面,人们可以采取的改进 ML 模型预测的方法是选择正确的特征并删除对模型性能影响微不足道的特征。因此,选择正确的特征可能是数据科学家或机器学习工程师需要做的最重要的步骤之一,他们通常负责构建那些能够很好地概括测试数据集的复杂模型。 例如,考虑预测一个人是否会患心脏病的任务,可以产生良好影响的最强指标之一就是体重指数 (BMI)。当我们试图预测一个人可能患有的血压 (BP) 水平时,没有考虑这个特征并且没有在我们的数据集中使用它,通常会导致结果不太准确。在这种情况下,BMI 可以强烈表明一个人患有这些疾病。因此,考虑这个特征很重要,因为它会对结果产生很大的影响。 考虑另一个预测某人是否会拖欠贷款的案例研究。在向某人提供贷款之前,所考虑的银行会询问一系列问题,例如工资、净资产和他们的信用记录。如果我们要让一个人根据上述一系列因素来决定是否必须向某人提供贷款,他/她会查看总工资和他们的整体信用记录。 同样,当数据以与人类相同的方式提供给 ML 模型时,它会学会获得重要的表示,以便它决定一个人是否会偿还贷款。如果我们删除诸如工资之类的特征,ML 模型将缺少关键信息,无法完美地解读一个人是否会偿还贷款。因此,它的预测可能会非常错误,因为数据中缺少最重要的特征之一(工资)。因此,这凸显了拥有正确的特征对于我们的机器学习和深度学习模型在测试集和实时数据上表现良好的重要性。 现在我们已经了解了确定正确特征对于确定模型预测质量的重要性,我们现在将继续寻找有助于我们的模型预测并改善其结果的各种特征化技术。 这是我们在数据中填充缺失值的一种方法。我们在互联网上找到了大量数据集,例如包含几乎所有特征和标签而没有异常或缺失数据的玩具数据集。然而,这在现实生活中可能远非如此,因为大多数现实世界数据都包含缺失值。因此,必须采取特定步骤来确保以某种方式填充缺失的值。 如果我们要预测一个人是否会拖欠贷款,我们会将薪水作为我们机器学习模型的重要特征之一。但是,所有参与者的薪水信息可能不存在于我们的数据中。因此,最好的方法之一是分别用整个薪资特征的平均值来估算或填充这些缺失值。 以用于确定房价的特征为例。在这种情况下,特征可能是卧室数量和利率。我们无法比较这两个特征,因为卧室数量以单位为单位,而利率以美元 ($) 为单位。如果我们将这些数据提供给我们的 ML 模型,它只会理解美元比卧室数量特征高出很多单位。然而,正如我们上面所看到的,这远非事实。因此,在将特征提供给模型进行预测之前,执行特征的缩放操作非常重要。 在预测汽车价格时,我们会分别考虑气缸数和里程数等特征。由于这两个特征的尺度不同,我们必须执行标准化,以便在给出预测模型之前,我们可以在特征之间找到共同点。 考虑到一个人是否会拖欠贷款,可能会有关于此人工资的信息。薪资信息可能并不总是准确的,并且这个特征中可能存在相当多的异常值。使用这些数据训练我们的 ML 模型通常会导致它在测试集或未见过的数据上表现不佳。因此,最好的方法是在将数据提供给 ML 模型之前从数据中删除异常值。这可以通过了解薪资的标准差来实现,并且高于或低于 3 个标准差的值会自动被删除,以便模型做出可靠的预测。 当我们发现数据中存在严重偏差时,可以使用这种技术。如果存在大量偏差,即数据包含大量集中在特定区域的值,而一些异常值和数据点远离平均值,则我们的模型更有可能无法理解这种复杂的关系。 与上述预测一个人是否会拖欠贷款的问题类似,我们也可以将对数变换应用于工资,因为我们看到工资信息中普遍存在很多偏差。大量人(约 80%)获得基本工资,而一小部分人(约 20%)获得大量工资。数据中存在相当大的偏差,实际上可以通过使用对数变换来消除。 |