![]() |
MyCaffe
1.12.2.41
Deep learning software for Windows C# programmers.
|
The ResNetModelBuilder adds the extra layers to a 'base' model for the ResNet model. More...
Public Types | |
| enum | MODEL { RESNET56 , RESNET101 , RESNET152 } |
| Defines the type of model to create. More... | |
Public Types inherited from MyCaffe.model.ModelBuilder | |
| enum | SCALE_BIAS { NONE , SCALE , BIAS } |
| Defines the scale bias type to use. More... | |
Public Member Functions | |
| ResNetModelBuilder (string strBaseDirectory, string strDataset, int nChannels, bool bSiamese, List< Tuple< int, bool > > rgIpLayers, bool bUsePool5, bool bUseDilationConv5, MODEL model, int nBatchSize=32, int nAccumBatchSize=32, List< int > rgGpuId=null, NetParameter net=null) | |
| The constructor. More... | |
| override SolverParameter | CreateSolver () |
| Create the base solver to use. More... | |
| override NetParameter | CreateModel (bool bDeploy=false) |
| Create the training model. More... | |
| override NetParameter | CreateDeployModel () |
| Create the testing SSD model for the pascal dataset. More... | |
Public Member Functions inherited from MyCaffe.model.ModelBuilder | |
| ModelBuilder (string strBaseDir, NetParameter net=null, SolverParameter solver=null) | |
| The constructor. More... | |
Protected Member Functions | |
| override LayerParameter | addExtraLayers (bool bUseBatchNorm=true, double dfLrMult=1) |
| Add extra layers (for SSD with the Pascal dataset) on top of a 'base' network (e.g. VGGNet or Inception) More... | |
Protected Member Functions inherited from MyCaffe.model.ModelBuilder | |
| string | getFileName (string strFile, string strSubDir) |
| Returns the full path of the filename using the base directory original set when creating the ModelBuilder. More... | |
| LayerParameter | findLayer (string strName) |
| Find a layer with a given name. More... | |
| NetParameter | createNet (string strName) |
| Create the base network parameter for the model and set its name to the 'm_strModel' name. More... | |
| LayerParameter | addDataLayer (string strSource, Phase phase, int nBatchSize=32, bool bOutputLabel=true, TransformationParameter transform=null, string strName="data", bool bSiamese=false) |
| Add the Data layer. More... | |
| LayerParameter | addAnnotatedDataLayer (string strSource, Phase phase, int nBatchSize=32, bool bOutputLabel=true, string strLabelMapFile="", SimpleDatum.ANNOTATION_TYPE anno_type=SimpleDatum.ANNOTATION_TYPE.NONE, TransformationParameter transform=null, List< BatchSampler > rgSampler=null) |
| Add the Annotated Data layer. More... | |
| List< LayerParameter > | createMultiBoxHead (LayerParameter data, int nNumClasses, List< MultiBoxHeadInfo > rgInfo, List< float > rgPriorVariance, bool bUseObjectness=false, bool bUseBatchNorm=true, double dfLrMult=1.0, bool useScale=true, int nImageHt=0, int nImageWd=0, bool bShareLocation=true, bool bFlip=true, bool bClip=true, double dfOffset=0.5, int nKernelSize=1, int nPad=0, string strConfPostfix="", string strLocPostfix="") |
| Create the multi-box head layers. More... | |
| LayerParameter | addConvBNLayer (string strInputLayer, string strOutputLayer, bool bUseBatchNorm, bool bUseRelU, int nNumOutput, int nKernelSize, int nPad, int nStride, double dfLrMult=1.0, int nDilation=1, SCALE_BIAS useScale=SCALE_BIAS.SCALE, string strConvPrefix="", string strConvPostfix="", string strBnPrefix="", string strBnPostfix="_bn", string strScalePrefix="", string strScalePostFix="_scale", string strBiasPrefix="", string strBiasPostfix="_bias", bool bNamedParams=false, string strLayerPostfix="", Phase phaseExclude=Phase.NONE) |
| Add convolution, batch-norm layers. More... | |
| LayerParameter | connectAndAddLayer (string fromLayer, LayerParameter toLayer, string fromLayer2=null) |
| Connect the from layer to the 'to' layer. More... | |
| LayerParameter | connectAndAddLayer (LayerParameter fromLayer, LayerParameter toLayer, bool bInPlace=false, bool bAdd=true, int nTopIdx=0) |
| Connect the from layer to the 'to' layer. More... | |
| LayerParameter | connectAndAddLayer (List< LayerParameter > rgFromLayer, LayerParameter toLayer, bool bAdd=true) |
| Connect the from layer to the 'to' layer. More... | |
| LayerParameter | createConvolution (string strName, int nNumOutput, int nKernelSize, int nPad=0, int nStride=1, int nDilation=1) |
| Create a new convolution layer parameter. More... | |
| LayerParameter | createPooling (string strName, PoolingParameter.PoolingMethod method, int nKernelSize, int nPad=0, int nStride=1) |
| Create a new pooling layer parameter. More... | |
| LayerParameter | addVGGBlock (LayerParameter lastLayer, int nBlockIdx, int nConvIdx, int nNumOutput, int nConvCount, bool? bNoPool, bool bDilatePool=false, int nKernelSize=3, int nPad=1, int nStride=1, int nDilation=1) |
| Add a new VGG block. More... | |
| LayerParameter | addVGGfc (LayerParameter lastLayer, int nBlockIdx, int nConvIdx, int nNumOutput, int nDilation, bool bDilated, bool bNoPool, bool bFullConv, bool bReduced, bool bDropout) |
| Adds the final layers to the network. More... | |
| LayerParameter | addVGGNetBody (LayerParameter lastLayer, bool bNeedFc=true, bool bFullConv=true, bool bReduced=true, bool bDilated=true, bool bNoPool=false, bool bDropout=false, List< string > rgstrFreezeLayers=null, bool bDilatePool4=false) |
| Adds the full VGG body to the network, connecting it to the 'lastLayer'. More... | |
| LayerParameter | addResBody (LayerParameter lastLayer, string strBlockName, int nOut2A, int nOut2B, int nOut2C, int nStride, bool bUseBranch1, int nDilation=1, bool bNamedParams=false, string strLayerPostfix="", Phase phaseExclude=Phase.NONE) |
| Adds a ResNet body to the network, connecting it to the 'lastLayer'. More... | |
| void | addExclusion (LayerParameter p, Phase phase) |
| Add a phase exclusion. More... | |
| LayerParameter | addResNetBody (string strDataName, int nBlock3Count=4, int nBlock4Count=23, bool bUsePool5=true, bool bUseDilationConv5=false, bool bNamedParams=false, string strLayerPostfix="", Phase phaseExclude=Phase.NONE) |
| Create a ResNet101 Body. More... | |
Additional Inherited Members | |
Protected Attributes inherited from MyCaffe.model.ModelBuilder | |
| string | m_strBaseDir |
| Specifies the base directory that contains the data and models. More... | |
| NetParameter | m_net = new NetParameter() |
| Specifies the base net to be altered. More... | |
| SolverParameter | m_solver = new SolverParameter() |
| Specifies the base solver to use. More... | |
Properties inherited from MyCaffe.model.ModelBuilder | |
| NetParameter | Net [get] |
| Returns the base net altered by the model builder. More... | |
| SolverParameter | Solver [get] |
| Returns the base solver. More... | |
The ResNetModelBuilder adds the extra layers to a 'base' model for the ResNet model.
Definition at line 15 of file ResNetModelBuilder.cs.
Defines the type of model to create.
| Enumerator | |
|---|---|
| RESNET56 | Specifies to create a ResNet56 model. |
| RESNET101 | Specifies to create a ResNet101 model. |
| RESNET152 | Specifies to create a ResNet152 model. |
Definition at line 41 of file ResNetModelBuilder.cs.
| MyCaffe.model.ResNetModelBuilder.ResNetModelBuilder | ( | string | strBaseDirectory, |
| string | strDataset, | ||
| int | nChannels, | ||
| bool | bSiamese, | ||
| List< Tuple< int, bool > > | rgIpLayers, | ||
| bool | bUsePool5, | ||
| bool | bUseDilationConv5, | ||
| MODEL | model, | ||
| int | nBatchSize = 32, |
||
| int | nAccumBatchSize = 32, |
||
| List< int > | rgGpuId = null, |
||
| NetParameter | net = null |
||
| ) |
The constructor.
| strBaseDirectory | Specifies the base directory that contains the data and models. |
| strDataset | Specifies the dataset that the model will run on. |
| nChannels | Specifies the number of channels in the data set (e.g. color = 3, b/w = 1). |
| bSiamese | Specifies whether or not to create a Siamese network."</param> <param name="rgIpLayers">Specifies a list of inner product layers added to the end of the network where each entry specifies the number of output and whether or not Noise is enabled for the layer.</param> <param name="bUsePool5">Specifies whether or not to use the Pool layer as the last layer.</param> <param name="bUseDilationConv5">Specifies whether or not to use dilation on block 5 layers.</param> <param name="model">Specifies the type of ResNet model to create.</param> <param name="nBatchSize">Optionally, specifies the batch size (default = 32).</param> <param name="nAccumBatchSize">Optionally, specifies the accumulation batch size (default = 32).</param> <param name="rgGpuId">Optionally, specifies a set of GPU ID's to use (when null, GPU=0 is used).</param> <param name="net">Specifies the 'base' net parameter that is to be altered. |
Definition at line 72 of file ResNetModelBuilder.cs.
|
protectedvirtual |
Add extra layers (for SSD with the Pascal dataset) on top of a 'base' network (e.g. VGGNet or Inception)
| bUseBatchNorm | Optionally, specifies whether or not to use batch normalization layers (default = true). |
| dfLrMult | Optionally, specifies the learning rate multiplier (default = 1.0). |
Implements MyCaffe.model.ModelBuilder.
Definition at line 339 of file ResNetModelBuilder.cs.
|
virtual |
Create the testing SSD model for the pascal dataset.
Implements MyCaffe.model.ModelBuilder.
Definition at line 329 of file ResNetModelBuilder.cs.
|
virtual |
Create the training model.
| bDeploy | Optionally, specifies to create a deployment model (default = false). |
Implements MyCaffe.model.ModelBuilder.
Definition at line 160 of file ResNetModelBuilder.cs.
|
virtual |
Create the base solver to use.
Implements MyCaffe.model.ModelBuilder.
Definition at line 126 of file ResNetModelBuilder.cs.