[英]Caffe Copy PreTrained Weights of AlexNet to custom network that has Two AlexNets
我正在嘗試建立一個包含兩個圖像輸入的網絡。 每個圖像將通過網絡與后期融合同時進行,后期融合將合並並提供一個輸出。 我使用下面的圖表顯示我的需要(ps:對不起,我的英語不太好)
我的網絡在caffe prototxt模型定義文件中定義,該文件包含到池5定義兩次的精確AlexNet。對於第一個網絡,各層的名稱與AlexNet中的名稱相同,而對於第二個網絡,我為每個層名稱添加了“ _1”后綴。 我的問題是我該如何復制保留的重量?
例如:每個網絡的卷積層1如下。 請注意,對於conv1
,可以輕松復制預訓練的權重,因為圖層名稱與預訓練模型中的圖層名稱相同。 但是conv1_1
不同,所以我擔心無法復制預訓練的權重? 還是即使層名稱不同也可以做到這一點?
layer {
name: "conv1"
type: "Convolution"
bottom: "data1"
top: "conv1"
param {
lr_mult: 0
decay_mult: 1
}
param {
lr_mult: 0
decay_mult: 0
}
convolution_param {
num_output: 96
kernel_size: 11
stride: 4
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 0
}
}
}
layer {
name: "conv1_1"
type: "Convolution"
bottom: "data2"
top: "conv1_1"
param {
lr_mult: 0
decay_mult: 1
}
param {
lr_mult: 0
decay_mult: 0
}
convolution_param {
num_output: 96
kernel_size: 11
stride: 4
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 0
}
}
}
我做了類似的事情,在這里您可以看到帶有相同AlexNet的暹羅網絡。 與Siamese網絡相同的AlexNet 。 這是prototxt文件
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.