pytorch笔记:split

torch.split 是 PyTorch 中的一个函数,用于将张量按指定的大小或张量数量进行分割

1 基本使用方法

python 复制代码
torch.split(tensor, split_size_or_sections, dim=0)

|----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------|
| tensor | 要分割的输入张量 |
| split_size_or_sections | 以是整数或整数列表。 * 如果是整数,那么它表示每个分割的大小。如果张量在给定维度上的大小不能被该值整除,最后一段会小于其他段。 * 如果是整数列表,那么它表示每个分割的确切大小。列表的总和必须等于张量在给定维度上的大小。 * 使用整数列表时,确保其元素之和等于所分割维度的大小 |
| dim | 要分割的维度,默认值为0 |

返回一个张量的元组,其中每个张量是原始张量的一个分割。

也可以直接tensor.split(...)

2 举例

python 复制代码
import torch

x = torch.tensor([1, 2, 3, 4, 5, 6, 7, 8])
torch.split(x, 3)
#(tensor([1, 2, 3]), tensor([4, 5, 6]), tensor([7, 8]))


torch.split(x, [2, 4, 2])
#(tensor([1, 2]), tensor([3, 4, 5, 6]), tensor([7, 8]))
python 复制代码
a = torch.arange(12).reshape(3,4)
a
'''
tensor([[ 0,  1,  2,  3],
        [ 4,  5,  6,  7],
        [ 8,  9, 10, 11]])
'''

torch.split(a,2)
'''
(tensor([[0, 1, 2, 3],
         [4, 5, 6, 7]]),
 tensor([[ 8,  9, 10, 11]]))
'''

torch.split(a,2,dim=1)
'''
(tensor([[0, 1],
         [4, 5],
         [8, 9]]),
 tensor([[ 2,  3],
         [ 6,  7],
         [10, 11]]))
'''
相关推荐
承渊政道4 分钟前
【优选算法】(实战体会位运算的逻辑思维)
数据结构·c++·笔记·学习·算法·leetcode·visual studio
蕤葳-7 分钟前
价值3万亿的教训:为什么员工考完CAIE,你的AI项目依然落不了地?
人工智能
GISer_Jing7 分钟前
AI Agent操作系统架构师:Harness Engineer解析
前端·人工智能·ai·aigc
禾小西10 分钟前
Spring AI :Spring AI的介绍
java·人工智能·spring
ん贤11 分钟前
AI 大模型落地系列|Eino 编排进阶篇:一文讲透编排(Chain 与 Graph)
人工智能·golang·编排·eino
红云梦14 分钟前
简历投了 100 份没回音?我给面试平台加了个“简历雷达“
人工智能·面试·职场和发展
独隅17 分钟前
PyTorch 模型性能优化:图像分类与 NLP 模型实战指南
pytorch·性能优化·分类
嘉伟咯21 分钟前
动手做一个AIAgent - 简易框架搭建
人工智能·agent
嘉伟咯23 分钟前
动手做一个AIAgent - RAG基础
人工智能·agent
AI-Ming26 分钟前
程序员转行学习 AI 大模型: 踩坑记录:服务器内存不够,程序被killed
服务器·人工智能·python·gpt·深度学习·学习·agi