728x90
Q. F.mse_loss와 nn.MSELoss 간의 차이는 무엇인가?
A. 아무런 차이가 없다. 다만, 사용하는데 있어서 사용법이 다를 뿐이다.
만약 nn.MSELoss를 사용하고자 한다면 아래의 2가지 경우와 같이 사용 가능하다.
criterion = nn.MSELoss()
loss = criterion(outputs, batch_y)
# or
loss = nn.MSELoss()(outputs, batch_y)
다만, 다음과 같이 사용하면 절대 안된다.
왜냐하면 MSELoss object를 먼저 생성하고, 이후에 적용해야 하기 때문이다.
loss = nn.MSELoss(outputs, batch_y)
That is, you have to construct an MSELoss object first, and then call
(apply) it.
만약 F.mse_loss를 사용하고자 한다면 바로 적용이 가능하다.
loss = F.mse_loss(outputs, batch_y)
728x90