我有一些离散的决策变量-namely颜色、纹理、大小和温度-它们显然有许多可能的值,我观察的对象显然会对所有这些变量都有一些值。
我想要预测所有四个变量的值,同时使用之前的变量预测作为特征;即:首先我使用一些特征预测颜色的值,然后将这个预测添加到我的特征中,并预测纹理的值,然后对大小和温度进行相同的预测。
你把这种问题叫做什么?sklearn提供了哪些工具来解决这个问题?
发布于 2019-04-30 18:50:00
您描述的模型是联合概率模型的通用因子分解。(生成模型,因为它可以用于生成随机的看似合理的数据点,而不仅仅是预测目标标签。)
如果你只有离散的特征,例如f1,f2,f3,你最多只能了解它们的联合概率P(f1,f2,f3)。这是一个表,其中包含所有可能的特征组合的概率值。由此,您可以做出任何您想要的预测。该表通常太大,您没有足够的数据来确定地估计所有的单元格。
当然,您可以仅从学习P(f1)开始。你填满了一张很小的桌子。但是一旦你有了它,你就可以学习每个给定值f1的f2 : P(f2|f1)。这是一张更大的桌子。然后你需要P(f3|f1,f2),它又要大得多。这始终是可能的,并且等同于学习整个表。所以你什么也没得到。
您所建议的是用一个预测器替换这些“表”,该预测器(希望)具有比整个表具有的条目更少的参数。但是这样你就会对你的模型产生偏见,所以现在你首先选择哪个特征以及你的学习方法如何处理依赖关系非常重要。如果f3实际上独立于所有其他特性,那么这可以很好地工作,但如果您已经知道这一点,您可以简单地将P(f3|f1,f2)替换为P(f3),然后将其作为一个独立因子(也称为非常小的表)重新学习。如果你遵循这条路线,你最终会建立一个Bayesian network模型。
https://stackoverflow.com/questions/55925556
复制相似问题