给定此 python 代码success = np.array([1, 2, 3, 4, 5])failure = np.array([12, 13, 14, 15, 16])beta_samples = np.random.beta(success + 1, Failure + 1, size = 5)print(beta_samples)beta_sam...
给出这个python代码
success = np.array([1, 2, 3, 4, 5])
failure = np.array([12, 13, 14, 15, 16])
beta_samples = np.random.beta(success + 1, failure + 1, size = 5)
print(beta_samples)
beta_samples2 = [np.random.beta(success[i] + 1, failure[i] + 1) for i in range(5)]
print(beta_samples2)
python代码的输出是:
[0.22023725 0.18643029 0.14765836 0.12017337 0.39477445]
[0.22605254862542162, 0.12566539444840888, 0.13290508184544317, 0.2718239044172474, 0.1464185003569084]
为什么我使用相同的 success
和 failure
数组,却得到两个完全不同的 Beta 分布样本?哪一个是正确的,哪一个是错误的?这是因为稍后我需要使用函数选择这些 Beta 样本中最大值的位置/索引, argmax(...)
而目前,这两个样本都会给我不同的索引/位置。