什么是“因子图”?它们有什么用?

| 一位朋友正在使用因子图进行文本挖掘(识别文本中对人的引用),这使我对该工具产生了兴趣,但是我很难找到关于因子图是什么以及如何使用的直观解释他们。 谁能提供对因子图的解释,但它在数学上并不繁重,并且着重于实际应用而不是抽象理论?
已邀请:
它们被广泛用于将问题分解为多个部分。 XBox Live TrueSkill算法是因子图(及其上传递的消息)的一种非常有趣的应用。我在自己的博客上写了很多有关它的文章,在那儿我试图提供介绍性的解释,而不是过于学术化的解释。
因子图是特定类型的公式中存在的变量和因子(公式的一部分)之间的依存关系的图形表示。 假设您有一个函数
f(x_1,x_2,...,x_n)
,并且要为某个参数
x_i
计算该函数的边际化,从而将剩余公式的所有赋值求和。另外
f
可以分解为一些因素,例如
f(x_1,x_2,...,x_n)=f_1(x_1,x_2)f_2(x_5,x_8,x_9)...f_k(x_1,x_10,x_11)
然后,为了计算某些变量的
f
边际化,可以使用一种称为和积(或消息传递)的特殊算法,它将问题分解为较小的计算量。对于这种算法,非常重要的是,哪些变量作为参数的参数出现。该信息由因子图捕获。 因子图是具有因子节点和变量节点的二部图。如果变量作为因子的参数出现,则在因子和变量节点之间存在一条边。在我们的示例中,在因子
f_2
和变量
x_5
之间存在一条边,但在
f_2
x_1
之间没有边缘。 有一篇很棒的文章:因子图和求和积算法。
因子图是数学模型,只能用数学方程式解释。简而言之,这是解释模型中兴趣变量之间的复杂关系的方法。示例:A是温度,B是压力,分量C,D,E在某种程度上取决于B,A,而分量K取决于B,A。您想基于A和B预测值K。因此,您只知道可见状态。基本的ML库不允许对这种结构进行建模。神经网络做得更好。因子图正是解决了这个问题。 因子图是深度学习的一个示例。当不可能用特征和输出来呈现模型时,因子模型允许构建变量的隐藏状态,层和复杂结构以适应现实世界的行为。例如机器翻译对齐,指纹识别,共同引用等。

要回复问题请先登录注册