Python 为什么辍学不改变我的输入张量?

Python 为什么辍学不改变我的输入张量?,python,pytorch,dropout,Python,Pytorch,Dropout,请参阅以下与输出关联的代码 import torch import torch.nn as nn inputTensor = torch.tensor([1.0, 2.0, 3, 4, 5]) outplace_dropout = nn.Dropout(p=0.4) print(inputTensor) output_afterDropout = outplace_dropout(inputTensor) print(output_afterDropout) print(inputTensor

请参阅以下与输出关联的代码

import torch
import torch.nn as nn
inputTensor = torch.tensor([1.0, 2.0, 3, 4, 5])

outplace_dropout = nn.Dropout(p=0.4)
print(inputTensor)
output_afterDropout = outplace_dropout(inputTensor)
print(output_afterDropout)
print(inputTensor)
输出为:

tensor([1., 2., 3., 4., 5.])
tensor([1.6667, 3.3333, 0.0000, 6.6667, 0.0000])
tensor([1., 2., 3., 4., 5.])
请详细说明为什么输入张量值仍然保持不变?

从的文档中,您可以看到
inplace
参数默认为
False
。如果希望就地更改输入张量,请将初始化更改为:

outplace_dropout = nn.Dropout(p=0.4, inplace=True)