from network import net as net
model = net(num_channels=1, scale_factor=4, d=32, s=5, m=1)
print(model)
#model = torch.load(pretrained_model, map_location = torch.device('cpu'))
model.load_state_dict(torch.load(pretrained_model, map_location = torch.device(
'cpu')))
#print(model)
pretrained_state_dict = model.state_dict(
) pretrained_state_dict_keys = list(pretrained_state_dict.keys(
))#print(pretrained_state_dict_keys)
for k in range(len(pretrained_state_dict_keys)):
print(pretrained_state_dict[pretrained_state_dict_keys[k]
].shape)
###列印出 這裡面這些key的 shape
卷積層 除了w 還有 bias
之後還有prelu layer 有乙個引數;
上述求和 最後是 4016
1 * 32 * 5 * 5 = 800
32(bias)–其實輸出通道32 可以看做是 32個 155的filter所以有32個bias
1(prelu)
32 * 5 * 1 * 1 = 160
5(bias)
1(prelu)
5533 = 225
5(bias)
1(prelu)
53211 = 160
32(bias)
prelu(1)
3219*9 = 2592
1(bias)反卷積層也有bias的
800+32+1+160+5+1+225+5+1+160+32+1+2592+1 = 4016
當然在pytorch中可以直接計算模型的引數數量的
def print_network(net):
num_params = 0
for param in net.parameters(
): num_params += param.numel(
) print(net)
print(
'total number of parameters: %d' % num_params)
這個出來的結果就是401 虛擬桌面專案伺服器數量,具體是怎麼計算的
桌面雲需要的伺服器數量與虛擬機器負載密切相關。在使用者數比較少的情況下,管理節點可以與其他使用者虛機合用物理伺服器。使用者數較多時,管理節點與使用者虛機分開部署,可獨佔兩台伺服器。一般每個資源池至少配置一台冗餘伺服器。計算公式如下 伺服器數量 使用者數 虛擬機器密度 管理伺服器數量 冗餘伺服器數量 ...
學習筆記 神經網路的計算量和參數量估計
模型最終的的速度,不僅僅是和計算量多少有關係,還和諸如記憶體頻寬 優化程度 cpu流水線 cache之類的因素也有很大關係。對於輸入為i ii,輸出為j jj的全連線層,其權重w ww儲存在i j i times j i j的矩陣中。啟用函式沒有引數,所以參數量為0。lstm包含4個非線性變換,每一...
卷積神經網路參數量和計算量記憶體計算
每一次卷積的參數量和特徵圖的大小無關,僅和卷積核的大小,偏置及bn有關。1.每個卷積層的參數量,1表示偏置 co x kw x kh x cin 1 2.全連線層的參數量 d1 1 x d2 3.bn層的參數量 因為bn層需要學習兩個引數 gamma 和 beta 所以參數量是2xco 1.一次卷積...