打卡第48天

知识点: 随机张量的生成:torch.randn函数 卷积和池化的计算公式(可以不掌握,模型会自动计算的) pytorch的广播机制:加法和乘法的广播机制 ps:numpy运算也有类似的广播机制,基本一致 作业:借助ai举几个例子帮助自己理解

一、torch.randn 生成随机张量

作用 :生成服从标准正态分布(均值 0,方差 1)的随机张量。
例子

复制代码
import torch  
# 生成形状为(2, 3)的二维随机张量  
tensor1 = torch.randn(2, 3)  
print(tensor1)  
# 输出类似:  
# tensor([[-0.1234,  0.4567, -0.8901],  
#         [ 1.2345, -0.6789,  0.3456]])  

# 生成形状为(3, 2, 4)的三维随机张量(3个2×4的矩阵)  
tensor2 = torch.randn(3, 2, 4)  

二、PyTorch 广播机制(加法 / 乘法)

核心规则:维度从后往前对齐,长度为 1 的维度可扩展至匹配另一张量的维度。

1. 加法广播

例子 1:二维张量 + 一维张量(行广播)

复制代码
a = torch.tensor([[1, 2, 3], [4, 5, 6]])  # 形状(2, 3)  
b = torch.tensor([10, 20, 30])           # 形状(3,)  
c = a + b  # 等价于a的每一行都加上b  
print(c)  
# 输出:  
# tensor([[11, 22, 33],  
#         [14, 25, 36]])  

原理:b 的形状 (3,) → 扩展为 (1, 3),再与 a 的 (2, 3) 对齐相加。

例子 2:三维张量 + 二维张量(通道广播)

复制代码
x = torch.randn(2, 3, 4)  # 形状(2, 3, 4)(假设为2个样本,3通道,4×4特征图)  
y = torch.randn(1, 3, 1)  # 形状(1, 3, 1)(可理解为3通道的偏置,每个通道一个值)  
z = x + y  # y会扩展为(2, 3, 4),每个样本的每个通道的所有元素都加上对应通道的偏置  
2. 乘法广播

逻辑与加法一致,仅运算改为乘法
例子:张量 × 标量(最简化广播)

复制代码
d = torch.tensor([1, 2, 3])  
e = d * 2  # 每个元素×2,输出tensor([2, 4, 6])  

三、Numpy 广播机制(与 PyTorch 基本一致)

复制代码
import numpy as np  
arr1 = np.array([[1, 2], [3, 4]])  # 形状(2, 2)  
arr2 = np.array([10, 20])         # 形状(2,)  
arr3 = arr1 * arr2  # 等价于arr1的每一行 × arr2  
print(arr3)  
# 输出:  
# array([[10, 40],  
#        [30, 80]])  

@浙大疏锦行

相关推荐
前端玖耀里14 小时前
如何使用python的boto库和SES发送电子邮件?
python
serve the people14 小时前
python环境搭建 (十二) pydantic和pydantic-settings类型验证与解析
java·网络·python
小天源14 小时前
Error 1053 Error 1067 服务“启动后立即停止” Java / Python 程序无法后台运行 windows nssm注册器下载与报错处理
开发语言·windows·python·nssm·error 1053·error 1067
喵手15 小时前
Python爬虫实战:HTTP缓存系统深度实战 — ETag、Last-Modified与requests-cache完全指南(附SQLite持久化存储)!
爬虫·python·爬虫实战·http缓存·etag·零基础python爬虫教学·requests-cache
喵手15 小时前
Python爬虫实战:容器化与定时调度实战 - Docker + Cron + 日志轮转 + 失败重试完整方案(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·容器化·零基础python爬虫教学·csv导出·定时调度
2601_9491465315 小时前
Python语音通知接口接入教程:开发者快速集成AI语音API的脚本实现
人工智能·python·语音识别
寻梦csdn16 小时前
pycharm+miniconda兼容问题
ide·python·pycharm·conda
Java面试题总结16 小时前
基于 Java 的 PDF 文本水印实现方案(iText7 示例)
java·python·pdf
不懒不懒16 小时前
【决策树算法实战指南:从原理到Python实现】
python·决策树·id3·c4.5·catr
马猴烧酒.17 小时前
【面试八股|Java集合】Java集合常考面试题详解
java·开发语言·python·面试·八股