PyTorch torch.bernoulli 関数
torch.bernoulliPyTorch でベルヌーイ分布から乱数を生成する関数です。
関数定義
torch.bernoulli(input, *, generator=None, out=None) torch.bernoulli(p, size, *, generator=None, out=None)
パラメータ説明
input- 確率値、または確率を含むテンソル(各要素は対応する位置が1になる確率を表す)p- 確率値(input がテンソルでない場合に使用)size- 出力テンソルの形状generator- 乱数生成器(オプション)out- 出力テンソル(オプション)
使用例
例
import torch
# 確率テンソルを使ってベルヌーイ分布の乱数を生成する
probs = torch.tensor([0.1, 0.5, 0.9])
result = torch.bernoulli(probs)
print("確率テンソル:", probs)
print("ベルヌーイサンプリング結果:", result)
# 固定確率を使ってランダムテンソルを生成する
result2 = torch.bernoulli(0.5, (3, 3))
print("固定確率 0.5 で生成した 3x3 ランダムテンソル:")
print(result2)
# 確率テンソルを使ってベルヌーイ分布の乱数を生成する
probs = torch.tensor([0.1, 0.5, 0.9])
result = torch.bernoulli(probs)
print("確率テンソル:", probs)
print("ベルヌーイサンプリング結果:", result)
# 固定確率を使ってランダムテンソルを生成する
result2 = torch.bernoulli(0.5, (3, 3))
print("固定確率 0.5 で生成した 3x3 ランダムテンソル:")
print(result2)
その他の拡張機能
Pytorch torch リファレンスマニュアル