处理缺失值
在数据预处理中,关键步骤是处理缺失的数据,因为机器学习模型不会接受NaN值作为它们的输入。有很多种方法可以填充这些NaN值,但我们首先需要理解缺失值的重要性。
很简单的一种方法是从机器学习数据集中删除所有缺失值,但在这之前,请先检查机器学习数据集中出现的NaN值的总体百分比。如果小于1%,我们可以删除所有缺失值,否则我们需要通过选择其他方法,如集中趋势测量、KNN Imputer等来估算数据。
当我们在特征中使用数字时,我们使用平均或中位数。均值是平均值我们可以通过将一行所有值汇总然后除以它们的量来计算。中位数也表示一个平均值,中位数将数据按大小顺序排列起来,形成一个数列,居于数列中间位置的那个数据。当一组数据中的个别数据变动较大时,常用中位数来描述这组数据的集中趋势。
如果机器学习数据集中存在偏态分布,往往使用中位数要比均值好。
异常值/离群值
异常值是与其他观测值有显著差异的数据点。有时,这些异常值也可能很敏感。在处理异常值之前,建议先检查机器学习数据集。
例如:
- 基于观测降雨量的深度值预测中离群值具有重要意义。
- 房价预测中的异常值则没有任何意义。
数据泄露
什么是 机器学习 模型中的数据泄漏问题呢?
当我们用于训练模机器学习型的数据包含机器学习模型试图预测的信息时,就会发生数据泄漏。这会导致模型部署后的预测结果不可靠。
这个问题可能是由于数据标准化或归一化方法造成的。因为我们大多数人在将数据分割成训练集和测试集之前会继续使用这些方法。
选择合适的机器学习模型
实时,我觉得不必要地转向一些复杂的模型可能会对面向业务的人产生一些可解释性问题。例如,线性回归将比神经网络算法更容易解释。
主要根据数据集的大小和复杂性来选择对应的机器学习模型,如果我们处理复杂的问题,我们可以使用一些高效的机器学习模型,如SVN、KNN、随机森林等。
大多数时候,数据探索阶段会有助于我们选择对应的机器学习模型。如果在可视化中数据是线性可分离的,那么我们可以使用线性回归。如果我们对数据不了解,支持向量机和KNN将会很有用。
另外还存在一个模型可解释问题,例如,线性回归比神经网络算法更容易解释。
验证指标
指标是模型预测器和实际数据的定量度量。如果问题是回归方面的,则关键指标是准确性(R2评分),MAE(平均绝对误差)和RMSE(均方根误差)。如果是分类方面的问题,关键指标则是精确,召回,F1score和混淆矩阵。