请问SubsetRandomSampler函数为什么会出现这种情况呢?我也看到别人在这样用,但是 我的返回值就是不对劲 print也很奇怪
SubsetRandomSampler代码如下,直接打印就是一个类(没毛病的),使用按照迭代器方法。
class SubsetRandomSampler(Sampler[int]):
r"""Samples elements randomly from a given list of indices, without replacement.
Args:
indices (sequence): a sequence of indices
generator (Generator): Generator used in sampling.
"""
indices: Sequence[int]
def __init__(self, indices: Sequence[int], generator=None) -> None:
self.indices = indices
self.generator = generator
def __iter__(self) -> Iterator[int]:
return (self.indices[i] for i in torch.randperm(len(self.indices), generator=self.generator))
def __len__(self) -> int:
return len(self.indices)