如何将特征的不确定性融入机器学习算法?

Posted

技术标签:

【中文标题】如何将特征的不确定性融入机器学习算法?【英文标题】:How to incorporate uncertainty of features into machine learning algorithms? 【发布时间】:2018-01-08 16:31:33 【问题描述】:

我正在使用 Scikit Learn 的决策树对数据集进行回归。 我得到了非常好的结果,但我担心的一个问题是许多功能的相对不确定性非常高。 我尝试只删除具有高不确定性的案例,但这会显着降低模型的性能。

特征本身是通过实验确定的,因此它们具有相关的实验不确定性。数据本身没有噪音。

所以我的问题是,有没有一种将与特征相关的不确定性纳入机器学习算法的好方法?

感谢大家的帮助!

【问题讨论】:

对不确定的特征添加随机噪声,对每个变异数据集做回归,计算回归参数的统计量? 您能否详细说明“许多功能的相对不确定性非常高”?例如,您是否期望输入数据中有很多噪音?如果是这种情况,您可以尝试许多消除/减少/调节噪音的策略。 特征本身是通过实验确定的,因此它们具有相关的实验不确定性。数据本身没有噪音。 【参考方案1】:

如果不确定的特征一起改进了算法,那么它们是有用的。但是,其中一些可能不是。我的建议是去掉那些不能改进算法的特性。您可以使用贪心特征消除算法。

http://scikit-learn.org/stable/modules/generated/sklearn.feature_selection.RFE.html

首先在模型中的所有特征上训练模型,然后去掉被认为最没用的特征。它再次训练模型,但少了一个特征。

希望有帮助

【讨论】:

谢谢!这实际上是我最终做的!我现在正在阅读一些不确定性量化的文本,看看我将来是否可以直接传播错误。 听起来不错。很高兴您发现它有帮助,如果您觉得它最有用,您介意选择我的答案吗?非常感谢:)

以上是关于如何将特征的不确定性融入机器学习算法?的主要内容,如果未能解决你的问题,请参考以下文章

机器学习算法整理决策树

决策树算法之鸢尾花特征分类可视化详解机器学习

如何输出特征向量机器学习分类算法

机器学习-KNN算法

Spark机器学习:决策树算法

机器学习算法:特征工程-特征提取