玻尔兹曼机训练算法的深入解析与实例研究
1. 算法相关概念
在研究玻尔兹曼机时,涉及到一些重要的算法概念。Amari将某些几何动机步骤概括为他所称的em算法的e - 步和m - 步组件。在许多特定问题中,包括玻尔兹曼机问题,EM和em算法是相同的,但也存在两者不同的例子。Anderson和Titterington指出,IPFP算法的每个阶段都可以解释为一次EM迭代,这有助于确定IPFP在解决特定问题时的收敛性。
2. 无隐藏单元的玻尔兹曼机实例
2.1 实例设置
为了详细评估各种估计程序的特性,我们先考虑无隐藏单元的玻尔兹曼机,这样训练问题得以简化。以一个完全连接的三节点玻尔兹曼机为例,包含一个偏置节点(节点0)。通过对网络进行退火使其达到平衡,然后运行10,000个周期,在每个阶段随机翻转一个节点的状态并收集状态向量,得到标准测试数据集{TD1}。对于不同的k值,生成数据集TDk,通过运行更多迭代(10,000k次),但每k次迭代才收集一个状态向量,以降低连续状态向量的序列相关性。
2.2 精确似然估计
由于示例规模较小,可以明确计算和优化对数似然,精确计算配分函数也是可行的。对数似然L(W)的计算公式为:
[L(W) = \sum_{i = 1}^{8}N_i\left[\sum_{l < j}w_{lj}x_{i}^{l}x_{i}^{j}\right] - N\log Z(W)]
其中,$N_i$是第i个状态在n次观测中的重复次数,配分函数$Z(W)$有特定形式。一旦指定了${N_i}$和${w_{ij}}$,就可以快速计算(18)中的两项,并使用数值例程(如NAg Fort
超级会员免费看
订阅专栏 解锁全文
1762

被折叠的 条评论
为什么被折叠?



