• 详解 PyTorch 中的 torch.repeat 函数


    PyTorch学习之 torch.repeat 函数

    一、简介

    torch.repeat 的主要作用是重复张量的内容,从而创建一个新的张量。

    repeat 会创建一个全新的张量,并将输入张量的内容按指定次数进行复制,因此会占用更多的内存

    二、基本语法

    torch.repeat(*sizes)
    

    三、参数说明

    • *sizes (int…): 指定每个维度的重复次数。长度必须与输入张量的维度数一致。
    • 例如,张量的形状为(2,3,4),那么*sizes必须写成x,x,x的形式,即保证维度数相同。

    三、返回值

    返回一个新的张量,其中包含重复的内容。新张量的形状是通过将原始张量的每个维度按指定的次数进行重复后得到的。

    四、示例

    以下是一些使用 torch.repeat 的示例,以帮助更好地理解其用法。

    示例 1: 重复张量的所有维度
    import torch
    
    # 创建一个形状为 (2, 2) 的张量
    x = torch.tensor([[1, 2], [3, 4]])
    print("原始张量:\n", x)
    
    # 重复每个维度2次
    y = x.repeat(2, 2)
    print("重复后的张量:\n", y)
    

    输出:

    原始张量:
     tensor([[1, 2],
            [3, 4]])
    重复后的张量:
     tensor([[1, 2, 1, 2],
            [3, 4, 3, 4],
            [1, 2, 1, 2],
            [3, 4, 3, 4]])
    
    示例 2: 选择性重复某些维度
    import torch
    
    # 创建一个形状为 (2, 1, 2) 的张量
    x = torch.tensor([[[1, 2]], [[3, 4]]])
    print("原始张量:\n", x)
    
    # 只重复第0维和第1维
    y = x.repeat(2, 3, 1)
    print("选择性重复后的张量:\n", y)
    

    输出:

    原始张量:
     tensor([[[1, 2]],
            [[3, 4]]])
    选择性重复后的张量:
     tensor([[[1, 2],
              [1, 2],
              [1, 2]],
    
             [[3, 4],
              [3, 4],
              [3, 4]],
    
             [[1, 2],
              [1, 2],
              [1, 2]],
    
             [[3, 4],
              [3, 4],
              [3, 4]]])
    
    示例 3: 仅重复特定维度
    import torch
    
    # 创建一个形状为 (2, 3) 的张量
    x = torch.tensor([[1, 2, 3], [4, 5, 6]])
    print("原始张量:\n", x)
    
    # 只重复第1维
    y = x.repeat(1, 2)
    print("仅重复特定维度后的张量:\n", y)
    

    输出:

    原始张量:
     tensor([[1, 2, 3],
            [4, 5, 6]])
    仅重复特定维度后的张量:
     tensor([[1, 2, 3, 1, 2, 3],
            [4, 5, 6, 4, 5, 6]])
    
  • 相关阅读:
    Word论文封面下划线怎么都对不齐
    Reids集群
    esp8266 发送企业微信
    量子信息处理器可能能够提供高度压缩的生成对抗学习任务的版本
    .NET 7 来了!!!
    洛谷 P3376 【模板】网络最大流
    改变element tree的展开关闭icon
    通关GO语言14 内存分配:new 还是 make?什么情况下该用谁?
    MySQL-锁
    最新Adobe2024全家桶下载,PS/PR/AE/AI/AU/LR/ID详细安装教程
  • 原文地址:https://blog.csdn.net/qq_46396470/article/details/140038159