0

伯努利是一个概率分布。我需要从指数伯努利采样并返回一个二进制值(即 0 或 1)。我发现了这个算法指数伯努利采样 ,我想实现它,但我不明白算法的第 3 步,其中: r1 = r1 & (2^h - 1 )。有人可以帮忙吗?

4

1 回答 1

-1

您可以使用实现从伯努利分布采样的库,例如np.random.binomial(因为n = 1 的二项式分布是伯努利分布)。

import numpy as np
np.random.binomial(n=1, p=.2, size=20)
# output: array([0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0])
于 2022-01-14T09:51:53.897 回答