Torch截断一部分后是否能梯度回传

复制代码
import torch

from torch import optim 
import torch.nn as nn
 
 
class g(nn.Module):
    def __init__(self):
        super(g, self).__init__()
        self.k = nn.Conv2d(in_channels=2, out_channels=1, kernel_size=1, padding=0, bias=False)
 
    def forward(self, z):
        return self.k(z)

 
 
c = 2
h = 5
w = 5
z = torch.rand( (1,c , h , w)).float().view(1, c, h, w)*100
z.requires_grad = True
k = g()

optim = optim.Adam(k.parameters(), lr=1)
optim.zero_grad()
r = k(z)
r= r[:,:,:3,:3]
r = r.sum()
loss = (r - 1) * (r - 1)

for name,v in k.named_parameters():
    print(name,v) 
print(z)
print("*********************")
 
loss.backward()
optim.step()
for name,v in k.named_parameters():
    print(name,v) 
print(z)

输出:

tensor(\[\[\[-0.0464],

\[ 0.4256]]], requires_grad=True)

tensor(\[\[\[65.6508, 65.0099, 38.5205, 78.4769, 31.6377,

27.1530, 5.7923, 23.9614, 59.5419, 3.5597,

69.9373, 29.7657, 91.4004, 85.5130, 65.2210,

62.6357, 23.9004, 95.3394, 59.5155, 48.1762,

98.7728, 97.2193, 66.3625, 65.0421, 22.0612],

\[19.3582, 2.4226, 47.2068, 20.1124, 31.9324,

23.4966, 5.0654, 12.4682, 35.3092, 90.3394,

8.4709, 91.5994, 79.7592, 93.8652, 92.6337,

49.0805, 63.9460, 81.2459, 63.4729, 77.1670,

17.8333, 18.6162, 44.9271, 44.8790, 3.6609]]], requires_grad=True)

*********************

k.weight Parameter containing:

tensor(\[\[\[-1.0464],

\[-0.5744]]], requires_grad=True)

tensor(\[\[\[65.6508, 65.0099, 38.5205, 78.4769, 31.6377,

27.1530, 5.7923, 23.9614, 59.5419, 3.5597,

69.9373, 29.7657, 91.4004, 85.5130, 65.2210,

62.6357, 23.9004, 95.3394, 59.5155, 48.1762,

98.7728, 97.2193, 66.3625, 65.0421, 22.0612],

\[19.3582, 2.4226, 47.2068, 20.1124, 31.9324,

23.4966, 5.0654, 12.4682, 35.3092, 90.3394,

8.4709, 91.5994, 79.7592, 93.8652, 92.6337,

49.0805, 63.9460, 81.2459, 63.4729, 77.1670,

17.8333, 18.6162, 44.9271, 44.8790, 3.6609]]], requires_grad=True)

相关推荐
2601_962295998 分钟前
Spark 和 Kafka 实现 Python 大规模情感分析
python·spark·kafka·情感分析·大规模处理
计算机源码社13 分钟前
分享一个基于大数据的跨平台内容生态画像与互动等级分析系统,基于Hadoop+Spark的社交媒体互动数据可视化大屏分析
大数据·hadoop·python·机器学习·数据挖掘·spark·毕业设计
砚底藏山河20 分钟前
行情工程实战 M01|存储选型 CSVSQLiteMySQL
java·python·金融·maven
在所不辞兄34 分钟前
【零基础学智能仿真-11】CatBoost——让材料类型和边界条件参与力学预测
人工智能·python·深度学习·神经网络·机器学习·工程技术
2601_9620976940 分钟前
python的多线程编程之锁
python·多线程·同步·事件·
1 小时前
Python 图片处理:裁剪缩放至300×200,格式JPG/PNG/GIF,控制大小≤100KB
linux·前端·python
2601_962294611 小时前
Python工具软件开发:借助InsCode AI IDE开启智能编程新时代
ide·python·ai·开发工具·智能化编程
2601_962097363 小时前
GraphQL,Grafana和Dash
python·grafana·数据可视化·graphql·dash
知识分享小能手9 小时前
深度学习学习教程,从入门到精通,深度学习中的正则化 — 完整知识点与代码示例(7)
人工智能·深度学习·学习
LaughingZhu10 小时前
Product Hunt 每日热榜 | 2026-09-05
人工智能·深度学习·神经网络·搜索引擎·百度