スポンサーリンク

【PyTorch】ランダムな整数を生成するtorch.randomint【乱数】

Python

PyTorchでランダムな整数を生成するにはtorch.randomintを用いる。

torch.randomint

第一引数lowと第二引数highで、生成する乱数の範囲(low~high)を指定する。第三引数のsizeに出力配列の形を指定する。

出力は、一様分布から、torch.Tensor型、int64で生成される。

import torch

value = torch.randint(low=3, high=5, size=(3,))

print(value)
# tensor([4, 3, 3])
print(type(value))
# <class 'torch.Tensor'>
print(value.dtype)
# torch.int64

出力を二次元の配列にしたい場合は、第三引数のsizeをタプルで指定する。

print(torch.randint(low=3, high=5, size=(3,3)))
# tensor([[4, 3, 4],
#        [3, 3, 3],
#        [4, 4, 4]])

第一引数lowは、オプションのため指定しない場合は、0がデフォルト値として指定されている。このため、以下のように記載した場合は、0~10の範囲で値が生成される。

print(torch.randint(10, (2, 2)))
# tensor([[8, 6],
#        [0, 0]])

関連記事、参考記事

PyTorch公式ページでも紹介されていた本で、「Tensorの仕組み」から「ディープラーニングの実践プロジェクト:肺がんの早期発見」までステップバイステップで説明しているため、中身をよく理解できます。

PyTorch実践入門 (Compass Booksシリーズ)

コメント