python - 用 Pytorch 随机选择?

标签 python python-3.x numpy machine-learning pytorch

我有一个张量的图片,想从中随机选择。我正在寻找相当于 np.random.choice() .

import torch

pictures = torch.randint(0, 256, (1000, 28, 28, 3))

假设我想要 10 张这样的照片。

最佳答案

torch没有 np.random.choice() 的等效实现,见讨论here .另一种方法是使用混洗索引或随机整数进行索引。

用替换来做到这一点:

  • 生成 n 个随机索引
  • 用这些索引索引你的原始张量
  • pictures[torch.randint(len(pictures), (10,))]  
    

    要做到这一点而无需更换:
  • 洗牌索引
  • 取第 n 个元素
  • indices = torch.randperm(len(pictures))[:10]
    
    pictures[indices]
    

    阅读更多关于 torch.randint torch.randperm .第二个代码片段的灵感来自这个 post在 PyTorch 论坛中。

    关于python - 用 Pytorch 随机选择?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59461811/

    相关文章:

    python-3.x - Google Build cloudbuild.yaml 部署 python 函数最佳实践

    python - 已知结构矩阵的 NumPy 矩阵乘法效率

    python - SciPy - 计算对称矩阵中特定特征值的特征向量

    python - 如何从 numpy 数组中选择两个边界之间的点?

    python - 从 pandas DataFrame 计算 RSI 指标?

    python - 如何使用 mod_wsgi 和 Django 提供静态文件?

    python - 如何使用 Python 从 Windows 中的视频文件获取标题属性

    python - 如何在python中排除字符组

    python - 在 Python DataFrame 中对数据进行分组

    python - ValueError : If using all scalar values, 你必须传递一个索引