gpt4 book ai didi

machine-learning - 机器学习: quantifying uncertainty around missing data

转载 作者:行者123 更新时间:2023-11-30 09:01:23 24 4
gpt4 key购买 nike

我的问题是围绕我遇到的特定分类问题。

我的训练数据完整且没有缺失数据。我可以围绕它构建任何分类模型(SVM、随机森林等)以获得良好的结果。到目前为止, pig 还没有在对流层中飞行。

问题是我想将这些模型应用于缺少特征的数据。我对任何形式的估算都不感兴趣。我想要一个“不确定性”度量,该度量可以增加更多缺失的特征,并且我仍然希望模型能够输出结果(即使不确定性很高)。例如,对于一条记录,如果 10 个特征中有 5 个为空数据,则模型将给出一个类别,但不确定性为 50%(理想情况下我可以指定每个变量的“重要性”程度)。

我在网上没有遇到过类似的事情,我已经找了一段时间了。感谢您的帮助!

最佳答案

为什么是数据特定问题?

让我们从非常简单的模型开始 - 线性模型 ( f(x) = sign(<w,x> + b) )。我们还假设现在给定一个缺失值 x_i=N/A 的向量并且相应的权重非零( w_i != 0 );不失一般性让w_i>0 ,然后我们可以看到,我总是可以“输入”x_i如此之小(非常非常负的值,例如 -10e10000 ),模型将回答 -1对称地,如此大的值将输出 +1 。为了做出预测(并进一步量化确定性),我们确实需要假设 x_i 的可能值。我希望这个简单的例子表明,如果没有任何假设,我们就会迷失——我们什么也做不了,没有预测,没有确定性——什么都没有。这是机器学习中众所周知的事实——如果没有模型引起的偏差,我们就无法进行预测。在这种情况下 - 我们对缺失值进行建模。

我们能做什么?

我们需要就值(value)观达成一致。有很多选择:

  • 我们可以假设均匀分布,例如,如果它是具有 M 个值的分类变量,我们对每个可能的实例设置 1/M 概率。如果它是 0 到 1 之间的值,我们可以在这个范围内使用均匀分布。在这种情况下,我们需要有界值。如果值是无界的 - 则不存在均匀分布。
  • 我们假设一些无限的支持分布,例如一个简单的高斯分布,它可以是任意的(0-均值,1-std)或从数据中学习(经验均值+经验标准差)。
  • 我们可能使用非参数估计器 (KDE) 甚至可能使用从其他维度推断的条件分布来推断一些复杂的分布。

好的,它与数据插补有何不同?数据插补假设填充缺失值,它会给您一个。我在这里所说的是将我们的观点与缺失值视为概率分布 - 因此更多的是贝叶斯方法。现在它不再是一个数据点,而是一个无限的点云,具有不同的密度。

如何将经典的机器学习技术应用于分发?

不幸的是,这里事情变得复杂,因为它完全是模型特定的问题。因此,根据您使用的分类器/回归器类型,您需要不同的方法。最简单的情况是随机森林,所以我将重点关注这一点,稍后为任何模型提供一个效率较低但更通用的解决方案。

随机森林案例

在决策树中,每个节点都是对某些特征的决策。因此,为了对我们的“分布”进行预测,我们只需将这一点放入决策过程中 - 如果节点询问现有特征 - 我们会正常处理它。当我们被问到缺少功能时该怎么办?我们分割执行,并计算两条路径,但权重是根据分布和节点中的阈值计算的。例如,假设我们选择了 [0,1] 上的均匀分布,阈值现在为 0.75(这意味着该节点询问缺失值是否 <0.75 或 >=0.75)。我们将计算分成两部分并检查预测,决策 <0.75 的部分获得权重 0.75(因为它是积分 INT_{0}^{0.75} pdf(x) dx ,其中 pdf(x) 是我们的均匀分布),第二条路径获得权重 0.25。最后我们得到期望值。我们的信心是什么?您照常计算,或对置信区间执行更复杂的分析。

通用方法

最通用的方法(可作为黑盒用于任何模型)是蒙特卡罗方法。我们有我们的发行版pdf(x) ,所以我们从这个分布中重复采样,分类并记录输出。最后 - 我们收集选票并获得分类和置信度。伪代码如下

function CLASSIFY_WIT_NA(x, probability_model, model, k=1000):
pdf <- probability_model(x.missing_values)
predictions <- empty set
for i=1 to k
x' ~ pdf
prediction <- model(x')
predictions.add(prediction)

class <- most_common_element_of(predictions)
confidence <- count(class, predictions) / k

关于machine-learning - 机器学习: quantifying uncertainty around missing data,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33636281/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com