caffe2 建立自己的Python層

2021-08-21 01:31:40 字數 861 閱讀 3900

一、 沒有反向傳播

例如:

def

mul_ab

(inputs, outputs):

num_blobs = int(len(inputs)/2)

for i in range(num_blobs): # range(x), x must be integer

i = int(i) # inputs 的座標必須是整形

outputs[i].reshape(inputs[i].shape) # reshape output

input0 = inputs[i].data

input1 = inputs[i+num_blobs].data

result = np.zeros(input0.shape, dtype=type(input0))

result = input0 * input1

outputs[i].data[...] = result # assigning variables

呼叫:

model.net

.python(mul_ab)(blobs_in+obj_pred_blobs, blobs_multi)

其中, blobs_in(inputs) 必須是乙個列表,列表元素必須是blob
此函式實現的是乘法,a×b, a: (n, c, h, w) b:(n, 1, h, w),沒有反向傳播,因此需要在模型建立時:

for b in blobs_multi:

model.stopgradient(b, b)

return blobs_multi

Caffe2的安裝詳述

caffe2的安裝過程區分ubuntu的不同版本,在ubuntu 14.04和 ubuntu 16.04下的相關命令有所不同,最重要的是caffe2主要支援python2.7版本,以下python和pip命令預設情況下都是指python2.7版本,經過筆者測試,caffe2版本暫時不支援python...

caffe 轉caffe2模型出現的問題

剛開始接觸caffe,用nvidia tx2跑了ssd模型,達到8 9幀。把caffe模型轉caffe2模型時,轉到reshape層時出現錯誤 valueerror unknown argument type key values value 發現是protobuffer 版本問題,參考 解壓,編譯...

caffe2 安裝與介紹

一早發現caffe2的較成熟的release版發布了 the first production ready release 那麼深度學習平台在之後一段時間也是會出現其與tensorflow相互競爭的局面。從開啟這個caffe2的官網就會發現,有了facebook的支援,連介面也好看多了。不過再仔細看...