如何解决pytorch中的有效遮挡1
我对使用PyTorch执行occlusion-1
进行任务有疑问。该模型是基于卷积的模型,就像前几层是卷积,合并或批处理规范化,然后是完全连接的层一样。 / p>
我想计算遮挡1,它是输入图像一个通道上单个像素的突变,然后计算输出值与原始输出的差(输出是标量)。由于图像或一维序列输入包含成千上万个像素,因此这确实很耗时。
是否有加速技术来提高时间效率?由于输入张量具有很多相同的分量,并且一个通道,一个像素上的一个值恰好将被更改(从参考值0或其他值更改为1)。
给定用于计算occlusion-1
的任务的示例代码,输入为'x'和'model',其大小为'x',对于一维序列,可能为x.size()=torch.Size([1,3,100000])
。并且遮挡将计算差值
y0=model(x)
for i in range(1000000):
for j in range(3):
x1=x.clone()
x1[:,j,i]=torch.tensor(1)
diff.append(model(x1)-y0)
正向操作可以在GPU上完成,并且代码中已将其省略。假设我们不可以使用talyer展开来近似结果。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。