使用pycaffe定义网络:
参考链接:Learning LeNet
引入库:
import caffe from caffe import layers as L from caffe import params as P
使用pycaffe定义Net:
n = caffe.NetSpec()
定义DataLayer:
n.data, n.label = L.Data(batch_size=batch_size, backend=P.Data.LMDB, source=lmdb, transform_param=dict(scale=1. / 255), ntop=2) # 效果如下: layer { name: "data" type: "Data" top: "data" top: "label" transform_param { scale: 0.00392156862745 } data_param { source: "mnist/mnist_train_lmdb" batch_size: 64 backend: LMDB } }
定义ConvolutionLayer:
n.conv1 = L.Convolution(n.data, kernel_size=5, num_output=20, weight_filler=dict(type='xavier')) # 效果如下: layer { name: "conv1"