gpt4 book ai didi

python - 这是获得随机舍入解决方案的正确方法吗?

转载 作者:行者123 更新时间:2023-11-30 22:58:53 24 4
gpt4 key购买 nike

我想用Python实现随机舍入算法。

该算法很容易描述。

Given a vector, x, of size n where each element, x[i], of x is a real number between 0 and 1. Generate a 0-1 vector, y, of size n where each element of y, y[i], is either 0 or 1 as follows:

for i = 1 to len(x) do: set y[i] = 1 with probability x[i] and y[i] = 0 with probability 1 - x[i].

我尝试按如下方式执行此操作,但我想我错过了一些东西,或者也许有更快/更好的方法:

import numpy
n = 4
x = [0.01, 0.6, 0.1, 0.7]
y = numpy.zeros(n)
for i in range(n):
randomNum = numpy.random.uniform()
if randomNum >= x[i]:
y[i] = 1
else:
y[i] = 0

最佳答案

这个怎么样:

x = np.array([0.1, 0.3,0.5, 0.7, 0.9])
y = np.random.rand(len(x)) <= x

第一行设置x,第二行随机均匀选择概率,并根据x[i]中的概率/阈值对结果进行二值化。

关于python - 这是获得随机舍入解决方案的正确方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35977776/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com