【发布时间】:2020-12-30 23:43:43
【问题描述】:
我是 PyTorch 的新手。我了解到它使用autograd 自动计算梯度下降函数的梯度。
我不想调整权重,而是想使用梯度下降来改变输入以实现所需的输出。因此,我不想改变神经元的权重,而是想保持所有的权重相同,只改变输入以最小化损失。
例如。该网络是经过训练的图像分类器,数字为 0-9。我输入随机噪声,我想对其进行变形,以便网络以 60% 的置信度将其视为3。我想利用梯度下降来调整输入的值(最初是噪声),直到网络认为输入是3,置信度为 60%。
有没有办法做到这一点?
【问题讨论】:
-
只有一个网络是不可能的。你需要像 GAN(生成对抗网络)这样的东西,它是 2 个网络的组合,才能完成这项工作。
-
是的,你可以。看看这个official tutorial。