适用于此场景的适当机器学习算法是什么?

时间:2012-06-04 14:19:40

标签: machine-learning neural-network data-mining regression bayesian-networks

我正在研究机器学习问题,如下所示:

输入变量

 Categorical

   a

   b

   c

   d

 Continuous

   e

输出变量

Discrete(Integers)
    v
    x
    y

Continuous
    z

我面临的主要问题是输出变量并不完全相互独立,并且它们之间没有任何关系。也就是说,存在依赖性,但不是由于因果关系(一个值高并不意味着另一个值也会高,但其他更高的机会会提高)

一个例子是:

v - 广告展示次数

x - 广告点击次数

y - 转化次数

z - 收入

现在,要点击一个广告,它必须首先出现在搜索中,因此Click在某种程度上取决于印象。

同样,对于要转换的广告,必须首先点击它,因此转化在某种程度上依赖于点击。

因此运行4个预测每个输出变量的问题实例对我来说没有意义。事实上,应该有一些方法来预测所有4个一起照顾它们的隐含依赖。

但正如你所看到的,不存在直接的关系,事实上会有一个概率,但无法手动解决。

另外,输出变量不是分类的,实际上是离散的和连续的。

有关如何解决此问题的任何意见。还指导我使用相同的现有实现以及用于快速实现解决方案的工具包。

随机猜测 - 我认为贝叶斯网络可以解决这个问题。你觉得怎么样?

1 个答案:

答案 0 :(得分:0)

贝叶斯网络将在您的情况下做得很好。您的网络也不会那么大,因此您可以使用精确的推理算法,如图形消除或连接树。如果您决定使用BN,那么您可以使用Kevin Murphy的BN工具箱。 Here是指向该链接的链接。对于使用Gibbs采样进行近似蒙特卡罗推理的更通用的工具箱,您可以使用BUGS

编辑:

以一个着名的喷水器示例here为例。对于完全离散的变量,您可以在链接中定义条件概率表。例如,你说今天是阴天,下雨概率为0.8。你定义了所有的概率分布,其中图表显示了因果关系(即云,然后下雨等)然后作为查询你问你的推理算法问题,如草是湿的;它是阴天,是下雨,洒水器等等。

要使用BN,需要一个根据因果关系(有向无环图)和概率转换描述的系统模型。如果您想学习系统参数,可以使用EM algorithm等技术。然而,学习图形结构是一项非常艰巨的任务,受监督的机器学习方法在这种情况下会做得更好。