用 PyTorch 库创建了一个随机张量,并演示了多种张量取整和分解操作

张量创建与初始化

a = torch.rand(2,2)

生成一个 2x2 的随机张量,元素值均匀分布在 [0,1) 区间。例如可能输出:

复制代码
tensor([[0.1234, 0.5678],
        [0.9012, 0.3456]])

a = a * 10

将张量每个元素乘以 10,使值域变为 [0,10)。例如:

复制代码
tensor([[1.234, 5.678],
        [9.012, 3.456]])

取整运算

print(torch.floor(a))

向下取整(地板函数),输出不大于原数的最大整数。示例结果:

复制代码
tensor([[1., 5.],
        [9., 3.]])

print(torch.ceil(a))

向上取整(天花板函数),输出不小于原数的最小整数。示例结果:

复制代码
tensor([[2., 6.],
        [10., 4.]])

print(torch.round(a))

四舍五入到最接近的整数。示例结果:

复制代码
tensor([[1., 6.],
        [9., 3.]])

print(torch.trunc(a))

截断小数部分(向零取整)。示例结果:

复制代码
tensor([[1., 5.],
        [9., 3.]])

分解运算

print(torch.frac(a))

提取小数部分。示例结果:

复制代码
tensor([[0.234, 0.678],
        [0.012, 0.456]])

print(a%2)

计算每个元素除以 2 的余数。示例结果:

复制代码
tensor([[1.234, 1.678],
        [1.012, 1.456]])

关键点说明

  • 所有操作都是逐元素(element-wise)进行的
  • 原始张量 a 不会被修改,每个操作都会返回新张量
  • 取整运算返回浮点型张量,但值为整数形式
  • frac% 运算结果保持原始张量的数值精度
相关推荐
晚霞的不甘1 天前
CANN 模型转换与适配:从 PyTorch 到 Ascend OM 的完整指南
人工智能·pytorch·python·深度学习
speop1 天前
【thorough-pytorch】评价指标
人工智能·pytorch·python
晚霞的不甘1 天前
CANN-昇腾NPU开发快速入门
人工智能·pytorch·python·深度学习
rayyy91 天前
神经网络拟合高频信号实验
人工智能·pytorch·神经网络
香蕉鼠片1 天前
CUDA、PyTorch、Transformers、PEFT 全栈详解
人工智能·pytorch·python
MediaTea1 天前
PyTorch:张量与基础计算模块
人工智能·pytorch·python·深度学习·机器学习
放下华子我只抽RuiKe52 天前
React 从入门到生产(一):JSX 与组件思维
前端·javascript·人工智能·pytorch·深度学习·react.js·前端框架
z小猫不吃鱼2 天前
05 Pytorch之 ViT-B/16 源码逐行解析
人工智能·pytorch·python
xG8XPvV5d2 天前
PyTorch特征提取器源码精析
人工智能·pytorch·python
Hello Mr.Z2 天前
双机双卡训练yolov5(yolov5+pytorch+DDP+NCCL+RDMA全栈解析)
人工智能·pytorch·yolo