我有一个关于特征工程的实际问题..。比如说,我想用logistic回归来预测房价,并使用了包括邮政编码在内的一系列功能。然后,通过检查功能的重要性,我意识到zip是一个很好的特性,所以我决定在zip的基础上添加更多的特性--例如,我去人口普查局,得到平均收入、人口、学校数量和每个地区的医院数目。有了这四个新的功能,我发现现在的模型性能更好。所以我增加了更多与压缩相关的功能.这个循环还在持续。最终,这种模式将被这些与拉链相关的特性所主导,对吗?
我的问题:
发布于 2018-06-14 02:33:58
1)是的,这是有道理的。尝试手动创建特征将帮助学习者(即模型)从原始数据中获取更多的信息,因为原始数据并不总是以一种易于学习的形式出现,但是您可以从原始数据中构造出适合于学习的特征。您要添加的功能基于一个功能。这很常见。然而,你的学习者,逻辑回归,是敏感的多重共线性。您需要小心哪些特性和要添加多少功能。否则,你的模型可能会过分合适。
2)由于使用的是logistic回归,所以在添加新结构之前,可以使用AIC或进行统计显着性检验,如卡方检验(检验拟合的优度),以确定在这种结构下响应的分布是否存在差异。当您的数据缺乏时,这一点尤其有用。另一种方法是在模型中添加惩罚条款。例如,逻辑套索回归。
3)不断增加新特性并不总是一个好主意。小心高维的诅咒。添加新功能时,实际上是在数据上添加一个新维度。天真地,人们可能会认为收集更多的特性不会有任何伤害,因为在最坏的情况下,它们没有提供有关类的新信息。但事实上,他们的利益可能被维度的诅咒所压倒。我希望关于机器学习的有用知识 session6能帮上忙。
发布于 2018-06-13 23:15:31
通常,特征越丰富越好。
但是,要记住的一点是,一般来说,回归并不能很好地处理高度相关(多重共线性)数据。当您以这种方式扩展您的功能时,您可能需要记住这一点。
有很多关于这个主题的信息(以及潜在的缓解方法),只是google的回归和多重共线性。
总之,
发布于 2019-08-31 08:04:52
特征是模型的信息。信息越多,它就能越好地执行和预测。它越小,预测价值就越难。所以短的naser是肯定的。拥有尽可能多的特性总是值得的。这是有限制的,虽然,因为信息过载也可能烧掉您的处理器,所以要注意有多少功能正在被设计。此外,不必要的特性只会增加倦怠,所以清理某些特性总是很好的做法。整个数据预处理阶段就是这样。
第一个答案有一些很好的细节。至于停止循环,有几个措施和因素,您需要知道,以检查您的模型已经停止更好的表现,这些是措施,如RMSE。一个简单的例子是对数据使用xgboost回归并指定周期数。运行模型,您将得到每个周期的RMSE。它将下降到一个极限,在此之后,您将能够推断模型在某个周期之后已经稳定下来。这就是模型调优和优化的工作方式。
https://datascience.stackexchange.com/questions/33117
复制相似问题