def forward(self, x): x = self.conv1(x) x = H.relu(x) x = H.max_pool2d(x, kernel_size=2, stride=2) x = self.conv2(x) # x = self.se(x) x = H.relu(x) x = H.max_pool2d(x, kernel_size=2, stride=2) x = x.view(x.shape[0], -1) x = self.fc1(x) x = H.relu(x) x = self.fc2(x) x = H.relu(x) x = self.fc3(x) return x
def forward(self, x): z = H.mean(x, axis=(2, 3)) z = self.fc1(z) z = H.relu(z) z = self.fc2(z) s = H.sigmoid(z) n, c = s.shape s = s.reshape(n, c, 1, 1) x = x * s return x
def test_relu(): a = gtensor(dm('1 -2; -3 4')) k = gtensor(dm('8 3; 2 1')) b = H.relu(a) ret = (b * k + b).sum() ret.backward() grad = dm('9 0; 0 2') np.testing.assert_allclose(a.grad, grad)
def forward(self, x): x = self.conv1(x) x = self.se1(x) x = self.bn1(x) x = H.relu(x) x = H.max_pool2d(x, kernel_size=2, stride=2) x = self.conv2(x) x = self.se2(x) x = self.bn2(x) x = H.relu(x) x = H.max_pool2d(x, kernel_size=2, stride=2) x = x.view(x.shape[0], -1) x = self.fc1(x) # x = H.dropout(x, p=0.5, training=self.training) x = H.relu(x) x = self.fc2(x) # x = H.dropout(x, p=0.5, training=self.training) x = H.relu(x) x = self.fc3(x) return x
def forward(self, x): return H.relu(x)