[英]I am studying artificial neural networks. Where is the hidden layer?
class MLP(nn.Module):
def __init__(self):
super().__init__()
self.in_dim = 28 * 28
self.out_dim = 10
self.fc1 =nn.Linear(self.in_dim,512)
self.fc2=nn.Linear(512, 256)
self.fc3 =nn.Linear(256, 128)
self.fc4 =nn.Linear(128, 64)
self.fc5 =nn.Linear(64, self.out_dim)
self.relu = nn.ReLU()
def forward(self, x):
a1 = self.relu(self.fc1(x.view(-1,self.in_dim)))
a2 = self.relu(self.fc2(a1))
a3 = self.relu(self.fc3(a2))
a4 = self.relu(self.fc4(a3))
logit = self.fc5(a4)
return logit
這真的很基礎,但聽了解釋后我很困惑,所以我問。 看上面的代碼,
如果是隱藏層,a1,a2,a3,a4 是否正確?
x是輸入值,我們認為a1是x乘以fc(權重)的結果,a2是對a1應用激活函數的結果。
考慮到隱藏層位於輸入層和輸出層之間。 我不得不說隱藏層,在這種情況下,它將是 a2 和 a3。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.