Beispiel #1
0
 def get_primitives(cls, **primitive_kwargs) -> [CNNPrimitive]:
     act = dict(act_fun='relu', order='act_w_bn')
     df = dict(act_inplace=False, bn_affine=True, use_bn=True)
     return [
         CNNPrimitive(cls=SepConvLayer,
                      kwargs=dict(k_size=3, dilation=1, **act, **df),
                      stacked=2),
         CNNPrimitive(cls=SepConvLayer,
                      kwargs=dict(k_size=5, dilation=1, **act, **df),
                      stacked=2),
         CNNPrimitive(cls=SepConvLayer,
                      kwargs=dict(k_size=3, dilation=2, **act, **df)),
         CNNPrimitive(cls=SepConvLayer,
                      kwargs=dict(k_size=5, dilation=2, **act, **df)),
         CNNPrimitive(PoolingLayer,
                      kwargs=dict(k_size=3,
                                  pool_type='max',
                                  act_fun=None,
                                  order='w_bn',
                                  **df)),
         CNNPrimitive(PoolingLayer,
                      kwargs=dict(k_size=3,
                                  pool_type='avg',
                                  act_fun=None,
                                  order='w_bn',
                                  **df)),
         StrideChoiceCNNPrimitive([
             CNNPrimitive(cls=SkipLayer, kwargs=dict()),
             CNNPrimitive(cls=FactorizedReductionLayer,
                          kwargs=dict(**act, **df))
         ]),
         CNNPrimitive(cls=ZeroLayer, kwargs=dict()),
     ]
Beispiel #2
0
 def get_primitives(cls, **primitive_kwargs) -> [CNNPrimitive]:
     act = dict(act_fun='relu',
                order='act_w_bn',
                act_inplace=False,
                bn_affine=False,
                use_bn=True)
     return [
         CNNPrimitive(cls=ZeroLayer, kwargs=dict()),
         StrideChoiceCNNPrimitive([
             CNNPrimitive(cls=LinearTransformerLayer, kwargs=dict()),
             CNNPrimitive(cls=FactorizedReductionLayer, kwargs=dict(**act))
         ]),
         CNNPrimitive(cls=ConvLayer,
                      kwargs=dict(k_size=1, dilation=1, **act)),
         CNNPrimitive(cls=ConvLayer,
                      kwargs=dict(k_size=3, dilation=1, **act)),
         CNNPrimitive(PoolingConvLayer,
                      kwargs=dict(k_size=3,
                                  pool_type='avg',
                                  act_fun=None,
                                  order='w',
                                  bn_affine=False,
                                  use_bn=False,
                                  bias=False)),
     ]
Beispiel #3
0
 def get_primitives(cls, **primitive_kwargs) -> [CNNPrimitive]:
     act = dict(act_fun='relu', order='act_w_bn')
     df = dict(act_inplace=False, bn_affine=True, use_bn=True)
     dfnb = df.copy()
     dfnb['use_bn'] = False
     return [
         CNNPrimitive(cls=SepConvLayer, kwargs=dict(k_size=3, dilation=1, **act, **df), stacked=2),
         CNNPrimitive(cls=SepConvLayer, kwargs=dict(k_size=5, dilation=1, **act, **df), stacked=2),
         CNNPrimitive(cls=SepConvLayer, kwargs=dict(k_size=3, dilation=2, **act, **df)),
         CNNPrimitive(cls=SepConvLayer, kwargs=dict(k_size=5, dilation=2, **act, **df)),
         DifferentConfigPrimitive(
             CNNPrimitive(PoolingLayer, kwargs=dict(k_size=3, pool_type='max', act_fun=None, order='w_bn', **df)),
             CNNPrimitive(PoolingLayer, kwargs=dict(k_size=3, pool_type='max', act_fun=None, order='w', **dfnb))),
         DifferentConfigPrimitive(
             CNNPrimitive(PoolingLayer, kwargs=dict(k_size=3, pool_type='avg', act_fun=None, order='w_bn', **df)),
             CNNPrimitive(PoolingLayer, kwargs=dict(k_size=3, pool_type='avg', act_fun=None, order='w', **dfnb))),
         StrideChoiceCNNPrimitive([
             CNNPrimitive(cls=LinearTransformerLayer, kwargs=dict()),
             CNNPrimitive(cls=FactorizedReductionLayer, kwargs=dict(**act, **df))
         ]),
     ]