实现gibbs 等离散分布的sampling的code

实现gibbs sampling的code



方法一:

double x = rand() * 1.0 / (1.0 + RAND_MAX);

        while (true)
        {
          x -= topicScores[newTopic];
          if (x < 0)
            break;
          newTopic++;
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Collapsed Gibbs sampling(坍塌吉布斯采样)是概率图模型(如隐马尔可夫模型、贝叶斯网络等)中的一种参数化采样方法,它主要用于那些有大量潜在变量(通常是高维或无限维)的情况。在这些模型中,直接估计所有潜在变量的后验分布通常是计算上非常困难的,因为它们可能涉及到大量的联合概率。 在Collapsed Gibbs sampling中,主要思想是将原问题中的某些变量(通常是那些条件独立的或可以被整合掉的)“坍塌”成一些更易于处理的统计量,从而简化了后验分布。这个过程通常涉及到两个步骤: 1. **整合(Collapsing)**: 对于一些不需要详细估计的变量,我们计算其对模型参数的影响,并将其结果表示为一个常数或一个函数,而不是保留原始的随机变量。这使得后验分布只依赖于少数关键参数和剩下的变量。 2. **采样(Sampling)**: 使用整合后的后验分布,我们进行采样,通常是从条件分布中抽取新的值,这些条件分布只依赖于当前状态下的其他变量。这是一个迭代的过程,在每次迭代中,都会更新一部分变量的值,直到达到收敛或达到预设的迭代次数。 这种采样方法的优势在于它可以避免直接计算难以处理的联合分布,提高了计算效率。然而,它的缺点是整合过程可能复杂,且对于复杂的模型,找到正确的坍塌形式可能并不直观。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值