我将建立一个模型(例如多元线性回归)来预测我所在城市的公寓成本。首先,我必须在训练数据中找出异常值。对于这个任务,RANSAC回归算法看起来很有吸引力,因为它不仅允许检测异常值,而且还允许构建模型本身。有一件事让我感到困惑,那就是如何测试受过训练的模型。检验模型是否具有良好预测能力的标准方法是对列车数据和测试数据进行分割,并在测试数据上应用经过训练的模型。对于RANSAC,这将不起作用,因为测试数据也有异常值,而且它们会偏倚模型的分数。
我的问题是,我们如何才能检查受过训练的模型是否好?
发布于 2023-03-11 21:04:40
这里有不同的方面需要考虑:
使用RANSAC的原因之一是它对异常值的鲁棒性。这意味着,训练集中的一些离群值或多或少不会对结果模型产生强烈的影响。健壮性是模型的一个重要属性:如果您的模型不健壮,它可能会根据您如何将数据分割成训练和测试(最终,这可能是随机种子的问题)而发生很大的变化。
交叉验证是评估鲁棒性的一种很好的方法。通过交叉验证,您可以在不同的训练集上训练多个模型,并比较它们的性能。模型之间的差异很好地反映了训练的稳健性。
首先,重要的是,您对测试异常值的处理不依赖于您的模型。特别是,您不能使用RANSAC-回归来筛选出异常值。这样做将允许模型操作自己的评估。
不幸的是,当涉及到测试异常者的具体处理时,我倾向于给你一个“它取决于”。在这里,它取决于构建模型的具体用例,以及异常值如何影响这个用例。
让我在决定最佳对待离群点时给你一些想法:
我希望这能帮助你找到一个合理的方法来处理你的离群点。
https://datascience.stackexchange.com/questions/120114
复制相似问题