let's get the weight of the first layer:
for w in model_resnet18.parameters():
w = w.data.cpu()
print(w.shape)
break
then, normalize the weights:
min_w = torch.min(w)
w1 = (-1 / (2 * min_w)) * w + 0.5
print(torch.min(w1).item(), torch.max(w1).item())
next, make a grid and display it:
grid_size = len(w1)
x_grid = [w1[i] for i in range(grid_size)]
x_grid = utils.make_grid(x_grid, nrow=8, padding=1)
print(x_grid.shape)
plt.figure(figsize=(10, 10))
show(x_grid)
※ reference: pytorch computer vision codebook
'머신러닝 > Pytorch' 카테고리의 다른 글
define colors using random tuples (0) | 2021.01.06 |
---|---|
define the optimizer and the learning rate schedule (0) | 2021.01.06 |
store best weights (0) | 2021.01.04 |
Storing and loading models (0) | 2020.12.31 |
model summary (0) | 2020.12.31 |