|
|
@@ -70,7 +70,7 @@ class SymbolNet(nn.Module): |
|
|
|
num_features = 64 * (image_size[0] // 4 - 1) * (image_size[1] // 4 - 1) |
|
|
|
self.fc1 = nn.Sequential(nn.Linear(num_features, 120), nn.ReLU()) |
|
|
|
self.fc2 = nn.Sequential(nn.Linear(120, 84), nn.ReLU()) |
|
|
|
self.fc3 = nn.Linear(84, num_classes) |
|
|
|
self.fc3 = nn.Sequential(nn.Linear(84, num_classes), nn.Softmax(dim=1)) |
|
|
|
|
|
|
|
def forward(self, x): |
|
|
|
x = self.conv1(x) |
|
|
@@ -86,6 +86,7 @@ class SymbolNetAutoencoder(nn.Module): |
|
|
|
def __init__(self, num_classes=4, image_size=(28, 28, 1)): |
|
|
|
super(SymbolNetAutoencoder, self).__init__() |
|
|
|
self.base_model = SymbolNet(num_classes, image_size) |
|
|
|
self.softmax = nn.Softmax(dim=1) |
|
|
|
self.fc1 = nn.Sequential(nn.Linear(num_classes, 100), nn.ReLU()) |
|
|
|
self.fc2 = nn.Sequential( |
|
|
|
nn.Linear(100, image_size[0] * image_size[1]), nn.ReLU() |
|
|
@@ -93,7 +94,7 @@ class SymbolNetAutoencoder(nn.Module): |
|
|
|
|
|
|
|
def forward(self, x): |
|
|
|
x = self.base_model(x) |
|
|
|
x = nn.Softmax(x, dim=1) |
|
|
|
# x = self.softmax(x) |
|
|
|
x = self.fc1(x) |
|
|
|
x = self.fc2(x) |
|
|
|
return x |