pytorchはテンソルをシャッフルします

pytorchはシャッフル機能を直接実行していないようです。

外部ライブラリ関数randomを使用してpytorchテンソルをシャッフルする場合、同じ値が複数回フェッチされる可能性がありますこれは、データをシャッフルするためではありません。

したがって、添え字をシャッフルしてから、添え字に従って対応する要素を取得してください。

import torch
import random

a = torch.rand(9)
print('a:\n', a)

random.shuffle(a)
print('random.shuffle(a):\n', a)

index = [i for i in range(len(a))]
print('index\n', index)
random.shuffle(index)
print('random.shuffle(index):\n', index)
print('shuffle tensor:\n', a[index])

概要:random.shuffle()はリストシャッフルするために使用され、テンソルをシャッフルするときに問題が発生するため、添え字リスト作成してリストをシャッフルします。

おすすめ

転載: blog.csdn.net/Answer3664/article/details/106613927