Python mxnet.gluon.nn.Sequential() Examples
The following are 30
code examples of mxnet.gluon.nn.Sequential().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
mxnet.gluon.nn
, or try the search function
.
Example #1
Source File: net.py From dynamic-training-with-apache-mxnet-on-aws with Apache License 2.0 | 7 votes |
def __init__(self, inplanes, planes, stride=1, downsample=None, norm_layer=InstanceNorm): super(Bottleneck, self).__init__() self.expansion = 4 self.downsample = downsample if self.downsample is not None: self.residual_layer = nn.Conv2D(in_channels=inplanes, channels=planes * self.expansion, kernel_size=1, strides=(stride, stride)) self.conv_block = nn.Sequential() with self.conv_block.name_scope(): self.conv_block.add(norm_layer(in_channels=inplanes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(nn.Conv2D(in_channels=inplanes, channels=planes, kernel_size=1)) self.conv_block.add(norm_layer(in_channels=planes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(ConvLayer(planes, planes, kernel_size=3, stride=stride)) self.conv_block.add(norm_layer(in_channels=planes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(nn.Conv2D(in_channels=planes, channels=planes * self.expansion, kernel_size=1))
Example #2
Source File: test_gluon.py From SNIPER-mxnet with Apache License 2.0 | 6 votes |
def test_lambda(): net1 = mx.gluon.nn.HybridSequential() net1.add(nn.Activation('tanh'), nn.LeakyReLU(0.1)) net2 = mx.gluon.nn.HybridSequential() op3 = lambda F, x, *args: F.LeakyReLU(x, *args, slope=0.1) net2.add(nn.HybridLambda('tanh'), nn.HybridLambda(op3)) op4 = lambda x: mx.nd.LeakyReLU(x, slope=0.1) net3 = mx.gluon.nn.Sequential() net3.add(nn.Lambda('tanh'), nn.Lambda(op4)) input_data = mx.nd.random.uniform(shape=(2, 3, 5, 7)) out1, out2, out3 = net1(input_data), net2(input_data), net3(input_data) assert_almost_equal(out1.asnumpy(), out2.asnumpy(), rtol=1e-3) assert_almost_equal(out1.asnumpy(), out3.asnumpy(), rtol=1e-3)
Example #3
Source File: densechebconv.py From dgl with Apache License 2.0 | 6 votes |
def __init__(self, in_feats, out_feats, k, bias=True): super(DenseChebConv, self).__init__() self._in_feats = in_feats self._out_feats = out_feats self._k = k with self.name_scope(): self.fc = nn.Sequential() for _ in range(k): self.fc.add( nn.Dense(out_feats, in_units=in_feats, use_bias=False, weight_initializer=mx.init.Xavier(magnitude=math.sqrt(2.0))) ) if bias: self.bias = self.params.get('bias', shape=(out_feats,), init=mx.init.Zero()) else: self.bias = None
Example #4
Source File: main.py From dgl with Apache License 2.0 | 6 votes |
def __init__(self, g, in_feats, n_hidden, n_classes, n_layers, activation, dropout, aggregator_type): super(GraphSAGE, self).__init__() self.g = g with self.name_scope(): self.layers = nn.Sequential() # input layer self.layers.add(SAGEConv(in_feats, n_hidden, aggregator_type, feat_drop=dropout, activation=activation)) # hidden layers for i in range(n_layers - 1): self.layers.add(SAGEConv(n_hidden, n_hidden, aggregator_type, feat_drop=dropout, activation=activation)) # output layer self.layers.add(SAGEConv(n_hidden, n_classes, aggregator_type, feat_drop=dropout, activation=None)) # activation None
Example #5
Source File: test_gluon.py From dynamic-training-with-apache-mxnet-on-aws with Apache License 2.0 | 6 votes |
def test_summary(): net = gluon.model_zoo.vision.resnet50_v1() net.initialize() net.summary(mx.nd.ones((32, 3, 224, 224))) net2 = nn.Sequential() with net2.name_scope(): net2.add(nn.Embedding(40, 30)) net2.add(gluon.rnn.LSTM(30)) net2.add(nn.Dense(40, flatten=False, params=net2[0].params)) net2.initialize() net2.summary(mx.nd.ones((80, 32))) net3 = gluon.rnn.LSTM(30) net3.initialize() begin_state = net3.begin_state(32) net3.summary(mx.nd.ones((80, 32, 5)), begin_state) net.hybridize() assert_raises(AssertionError, net.summary, mx.nd.ones((32, 3, 224, 224)))
Example #6
Source File: test_gluon.py From dynamic-training-with-apache-mxnet-on-aws with Apache License 2.0 | 6 votes |
def test_lambda(): net1 = mx.gluon.nn.HybridSequential() net1.add(nn.Activation('tanh'), nn.LeakyReLU(0.1)) net2 = mx.gluon.nn.HybridSequential() op3 = lambda F, x, *args: F.LeakyReLU(x, *args, slope=0.1) net2.add(nn.HybridLambda('tanh'), nn.HybridLambda(op3)) op4 = lambda x: mx.nd.LeakyReLU(x, slope=0.1) net3 = mx.gluon.nn.Sequential() net3.add(nn.Lambda('tanh'), nn.Lambda(op4)) input_data = mx.nd.random.uniform(shape=(2, 3, 5, 7)) out1, out2, out3 = net1(input_data), net2(input_data), net3(input_data) assert_almost_equal(out1.asnumpy(), out2.asnumpy(), rtol=1e-3, atol=1e-3) assert_almost_equal(out1.asnumpy(), out3.asnumpy(), rtol=1e-3, atol=1e-3)
Example #7
Source File: test_gluon.py From dynamic-training-with-apache-mxnet-on-aws with Apache License 2.0 | 6 votes |
def test_basic(): model = nn.Sequential() model.add(nn.Dense(128, activation='tanh', in_units=10, flatten=False)) model.add(nn.Dropout(0.5)) model.add(nn.Dense(64, activation='tanh', in_units=256), nn.Dense(32, in_units=64)) model.add(nn.Activation('relu')) # symbol x = mx.sym.var('data') y = model(x) assert len(y.list_arguments()) == 7 # ndarray model.collect_params().initialize(mx.init.Xavier(magnitude=2.24)) x = model(mx.nd.zeros((32, 2, 10))) assert x.shape == (32, 32) x.wait_to_read() model.collect_params().setattr('grad_req', 'null') assert list(model.collect_params().values())[0]._grad is None model.collect_params().setattr('grad_req', 'write') assert list(model.collect_params().values())[0]._grad is not None
Example #8
Source File: net.py From dynamic-training-with-apache-mxnet-on-aws with Apache License 2.0 | 6 votes |
def __init__(self, inplanes, planes, stride=2, norm_layer=InstanceNorm): super(UpBottleneck, self).__init__() self.expansion = 4 self.residual_layer = UpsampleConvLayer(inplanes, planes * self.expansion, kernel_size=1, stride=1, upsample=stride) self.conv_block = nn.Sequential() with self.conv_block.name_scope(): self.conv_block.add(norm_layer(in_channels=inplanes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(nn.Conv2D(in_channels=inplanes, channels=planes, kernel_size=1)) self.conv_block.add(norm_layer(in_channels=planes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(UpsampleConvLayer(planes, planes, kernel_size=3, stride=1, upsample=stride)) self.conv_block.add(norm_layer(in_channels=planes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(nn.Conv2D(in_channels=planes, channels=planes * self.expansion, kernel_size=1))
Example #9
Source File: gatedgraphconv.py From dgl with Apache License 2.0 | 6 votes |
def __init__(self, in_feats, out_feats, n_steps, n_etypes, bias=True): super(GatedGraphConv, self).__init__() self._in_feats = in_feats self._out_feats = out_feats self._n_steps = n_steps self._n_etypes = n_etypes if not bias: raise KeyError('MXNet do not support disabling bias in GRUCell.') with self.name_scope(): self.linears = nn.Sequential() for _ in range(n_etypes): self.linears.add( nn.Dense(out_feats, weight_initializer=mx.init.Xavier(), in_units=out_feats) ) self.gru = gluon.rnn.GRUCell(out_feats, input_size=out_feats)
Example #10
Source File: chebconv.py From dgl with Apache License 2.0 | 6 votes |
def __init__(self, in_feats, out_feats, k, bias=True): super(ChebConv, self).__init__() self._in_feats = in_feats self._out_feats = out_feats self._k = k with self.name_scope(): self.fc = nn.Sequential() for _ in range(k): self.fc.add( nn.Dense(out_feats, use_bias=False, weight_initializer=mx.init.Xavier(magnitude=math.sqrt(2.0)), in_units=in_feats) ) if bias: self.bias = self.params.get('bias', shape=(out_feats,), init=mx.init.Zero()) else: self.bias = None
Example #11
Source File: net.py From training_results_v0.6 with Apache License 2.0 | 6 votes |
def __init__(self, inplanes, planes, stride=1, downsample=None, norm_layer=InstanceNorm): super(Bottleneck, self).__init__() self.expansion = 4 self.downsample = downsample if self.downsample is not None: self.residual_layer = nn.Conv2D(in_channels=inplanes, channels=planes * self.expansion, kernel_size=1, strides=(stride, stride)) self.conv_block = nn.Sequential() with self.conv_block.name_scope(): self.conv_block.add(norm_layer(in_channels=inplanes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(nn.Conv2D(in_channels=inplanes, channels=planes, kernel_size=1)) self.conv_block.add(norm_layer(in_channels=planes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(ConvLayer(planes, planes, kernel_size=3, stride=stride)) self.conv_block.add(norm_layer(in_channels=planes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(nn.Conv2D(in_channels=planes, channels=planes * self.expansion, kernel_size=1))
Example #12
Source File: dcgan.py From training_results_v0.6 with Apache License 2.0 | 6 votes |
def get_netD(): # build the discriminator netD = nn.Sequential() with netD.name_scope(): # input is (nc) x 64 x 64 netD.add(nn.Conv2D(ndf, 4, 2, 1, use_bias=False)) netD.add(nn.LeakyReLU(0.2)) # state size. (ndf) x 32 x 32 netD.add(nn.Conv2D(ndf * 2, 4, 2, 1, use_bias=False)) netD.add(nn.BatchNorm()) netD.add(nn.LeakyReLU(0.2)) # state size. (ndf*2) x 16 x 16 netD.add(nn.Conv2D(ndf * 4, 4, 2, 1, use_bias=False)) netD.add(nn.BatchNorm()) netD.add(nn.LeakyReLU(0.2)) # state size. (ndf*4) x 8 x 8 netD.add(nn.Conv2D(ndf * 8, 4, 2, 1, use_bias=False)) netD.add(nn.BatchNorm()) netD.add(nn.LeakyReLU(0.2)) # state size. (ndf*8) x 4 x 4 netD.add(nn.Conv2D(2, 4, 1, 0, use_bias=False)) # state size. 2 x 1 x 1 return netD
Example #13
Source File: sound_classifier.py From AudioEmotion with MIT License | 6 votes |
def _build_custom_neural_network(num_inputs, num_labels): from mxnet.gluon import nn net = nn.Sequential(prefix='custom_') with net.name_scope(): net.add(nn.Dense(512, in_units=num_inputs, activation='relu', prefix='dense0_')) net.add(nn.BatchNorm()) net.add(nn.Dropout(0.5)) net.add(nn.Dense(512, activation='relu', prefix='dense1_')) net.add(nn.BatchNorm()) net.add(nn.Dropout(0.5)) net.add(nn.Dense(256, activation='relu', prefix='dense2_')) net.add(nn.BatchNorm()) net.add(nn.Dropout(0.5)) net.add(nn.Dense(128, activation='relu', prefix='dense3_')) net.add(nn.BatchNorm()) net.add(nn.Dropout(0.5)) net.add(nn.Dense(64, activation='relu', prefix='dense4_')) net.add(nn.BatchNorm()) net.add(nn.Dropout(0.5)) net.add(nn.Dense(num_labels, prefix='dense5_')) return net
Example #14
Source File: net.py From comment_toxic_CapsuleNet with MIT License | 6 votes |
def net_define(): net = nn.Sequential() with net.name_scope(): net.add(nn.Embedding(config.MAX_WORDS, config.EMBEDDING_DIM)) net.add(rnn.GRU(128,layout='NTC',bidirectional=True, num_layers=2, dropout=0.2)) net.add(transpose(axes=(0,2,1))) # net.add(nn.MaxPool2D(pool_size=(config.MAX_LENGTH,1))) # net.add(nn.Conv2D(128, kernel_size=(101,1), padding=(50,0), groups=128,activation='relu')) net.add(PrimeConvCap(8,32, kernel_size=(1,1), padding=(0,0))) # net.add(AdvConvCap(8,32,8,32, kernel_size=(1,1), padding=(0,0))) net.add(CapFullyBlock(8*(config.MAX_LENGTH)/2, num_cap=12, input_units=32, units=16, route_num=5)) # net.add(CapFullyBlock(8*(config.MAX_LENGTH-8), num_cap=12, input_units=32, units=16, route_num=5)) # net.add(CapFullyBlock(8, num_cap=12, input_units=32, units=16, route_num=5)) net.add(nn.Dropout(0.2)) # net.add(LengthBlock()) net.add(nn.Dense(6, activation='sigmoid')) net.initialize(init=init.Xavier()) return net
Example #15
Source File: net.py From training_results_v0.6 with Apache License 2.0 | 6 votes |
def __init__(self, inplanes, planes, stride=2, norm_layer=InstanceNorm): super(UpBottleneck, self).__init__() self.expansion = 4 self.residual_layer = UpsampleConvLayer(inplanes, planes * self.expansion, kernel_size=1, stride=1, upsample=stride) self.conv_block = nn.Sequential() with self.conv_block.name_scope(): self.conv_block.add(norm_layer(in_channels=inplanes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(nn.Conv2D(in_channels=inplanes, channels=planes, kernel_size=1)) self.conv_block.add(norm_layer(in_channels=planes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(UpsampleConvLayer(planes, planes, kernel_size=3, stride=1, upsample=stride)) self.conv_block.add(norm_layer(in_channels=planes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(nn.Conv2D(in_channels=planes, channels=planes * self.expansion, kernel_size=1))
Example #16
Source File: test_gluon.py From SNIPER-mxnet with Apache License 2.0 | 6 votes |
def test_basic(): model = nn.Sequential() model.add(nn.Dense(128, activation='tanh', in_units=10, flatten=False)) model.add(nn.Dropout(0.5)) model.add(nn.Dense(64, activation='tanh', in_units=256), nn.Dense(32, in_units=64)) model.add(nn.Activation('relu')) # symbol x = mx.sym.var('data') y = model(x) assert len(y.list_arguments()) == 7 # ndarray model.collect_params().initialize(mx.init.Xavier(magnitude=2.24)) x = model(mx.nd.zeros((32, 2, 10))) assert x.shape == (32, 32) x.wait_to_read() model.collect_params().setattr('grad_req', 'null') assert list(model.collect_params().values())[0]._grad is None model.collect_params().setattr('grad_req', 'write') assert list(model.collect_params().values())[0]._grad is not None
Example #17
Source File: net.py From SNIPER-mxnet with Apache License 2.0 | 6 votes |
def __init__(self, inplanes, planes, stride=2, norm_layer=InstanceNorm): super(UpBottleneck, self).__init__() self.expansion = 4 self.residual_layer = UpsampleConvLayer(inplanes, planes * self.expansion, kernel_size=1, stride=1, upsample=stride) self.conv_block = nn.Sequential() with self.conv_block.name_scope(): self.conv_block.add(norm_layer(in_channels=inplanes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(nn.Conv2D(in_channels=inplanes, channels=planes, kernel_size=1)) self.conv_block.add(norm_layer(in_channels=planes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(UpsampleConvLayer(planes, planes, kernel_size=3, stride=1, upsample=stride)) self.conv_block.add(norm_layer(in_channels=planes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(nn.Conv2D(in_channels=planes, channels=planes * self.expansion, kernel_size=1))
Example #18
Source File: net.py From SNIPER-mxnet with Apache License 2.0 | 6 votes |
def __init__(self, inplanes, planes, stride=1, downsample=None, norm_layer=InstanceNorm): super(Bottleneck, self).__init__() self.expansion = 4 self.downsample = downsample if self.downsample is not None: self.residual_layer = nn.Conv2D(in_channels=inplanes, channels=planes * self.expansion, kernel_size=1, strides=(stride, stride)) self.conv_block = nn.Sequential() with self.conv_block.name_scope(): self.conv_block.add(norm_layer(in_channels=inplanes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(nn.Conv2D(in_channels=inplanes, channels=planes, kernel_size=1)) self.conv_block.add(norm_layer(in_channels=planes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(ConvLayer(planes, planes, kernel_size=3, stride=stride)) self.conv_block.add(norm_layer(in_channels=planes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(nn.Conv2D(in_channels=planes, channels=planes * self.expansion, kernel_size=1))
Example #19
Source File: rl_controller.py From autogluon with Apache License 2.0 | 6 votes |
def __init__(self, kwspaces, softmax_temperature=1.0, ctx=mx.cpu(), **kwargs): super().__init__(**kwargs) self.softmax_temperature = softmax_temperature self.spaces = list(kwspaces.items()) self.context = ctx # only support Categorical space for now self.num_tokens = [] for _, space in self.spaces: assert isinstance(space, Categorical) self.num_tokens.append(len(space)) # controller lstm self.decoders = nn.Sequential() for idx, size in enumerate(self.num_tokens): self.decoders.add(Alpha((size,)))
Example #20
Source File: net.py From MXNet-Gluon-Style-Transfer with MIT License | 6 votes |
def __init__(self, inplanes, planes, stride=2, norm_layer=InstanceNorm): super(UpBottleneck, self).__init__() self.expansion = 4 self.residual_layer = UpsampleConvLayer(inplanes, planes * self.expansion, kernel_size=1, stride=1, upsample=stride) self.conv_block = nn.Sequential() with self.conv_block.name_scope(): self.conv_block.add(norm_layer(in_channels=inplanes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(nn.Conv2D(in_channels=inplanes, channels=planes, kernel_size=1)) self.conv_block.add(norm_layer(in_channels=planes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(UpsampleConvLayer(planes, planes, kernel_size=3, stride=1, upsample=stride)) self.conv_block.add(norm_layer(in_channels=planes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(nn.Conv2D(in_channels=planes, channels=planes * self.expansion, kernel_size=1))
Example #21
Source File: net.py From MXNet-Gluon-Style-Transfer with MIT License | 6 votes |
def __init__(self, inplanes, planes, stride=1, downsample=None, norm_layer=InstanceNorm): super(Bottleneck, self).__init__() self.expansion = 4 self.downsample = downsample if self.downsample is not None: self.residual_layer = nn.Conv2D(in_channels=inplanes, channels=planes * self.expansion, kernel_size=1, strides=(stride, stride)) self.conv_block = nn.Sequential() with self.conv_block.name_scope(): self.conv_block.add(norm_layer(in_channels=inplanes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(nn.Conv2D(in_channels=inplanes, channels=planes, kernel_size=1)) self.conv_block.add(norm_layer(in_channels=planes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(ConvLayer(planes, planes, kernel_size=3, stride=stride)) self.conv_block.add(norm_layer(in_channels=planes)) self.conv_block.add(nn.Activation('relu')) self.conv_block.add(nn.Conv2D(in_channels=planes, channels=planes * self.expansion, kernel_size=1))
Example #22
Source File: utils.py From d2l-zh with Apache License 2.0 | 6 votes |
def resnet18(num_classes): """The ResNet-18 model.""" net = nn.Sequential() net.add(nn.Conv2D(64, kernel_size=3, strides=1, padding=1), nn.BatchNorm(), nn.Activation('relu')) def resnet_block(num_channels, num_residuals, first_block=False): blk = nn.Sequential() for i in range(num_residuals): if i == 0 and not first_block: blk.add(Residual(num_channels, use_1x1conv=True, strides=2)) else: blk.add(Residual(num_channels)) return blk net.add(resnet_block(64, 2, first_block=True), resnet_block(128, 2), resnet_block(256, 2), resnet_block(512, 2)) net.add(nn.GlobalAvgPool2D(), nn.Dense(num_classes)) return net
Example #23
Source File: utils.py From d2l-zh with Apache License 2.0 | 6 votes |
def resnet18(num_classes): """The ResNet-18 model.""" net = nn.Sequential() net.add(nn.Conv2D(64, kernel_size=3, strides=1, padding=1), nn.BatchNorm(), nn.Activation('relu')) def resnet_block(num_channels, num_residuals, first_block=False): blk = nn.Sequential() for i in range(num_residuals): if i == 0 and not first_block: blk.add(Residual(num_channels, use_1x1conv=True, strides=2)) else: blk.add(Residual(num_channels)) return blk net.add(resnet_block(64, 2, first_block=True), resnet_block(128, 2), resnet_block(256, 2), resnet_block(512, 2)) net.add(nn.GlobalAvgPool2D(), nn.Dense(num_classes)) return net
Example #24
Source File: net.py From comment_toxic_CapsuleNet with MIT License | 6 votes |
def net_define_eu(): net = nn.Sequential() with net.name_scope(): net.add(nn.Embedding(config.MAX_WORDS, config.EMBEDDING_DIM)) net.add(rnn.GRU(128,layout='NTC',bidirectional=True, num_layers=1, dropout=0.2)) net.add(transpose(axes=(0,2,1))) net.add(nn.GlobalMaxPool1D()) ''' net.add(FeatureBlock1()) ''' net.add(extendDim(axes=3)) net.add(PrimeConvCap(16, 32, kernel_size=(1,1), padding=(0,0),strides=(1,1))) net.add(CapFullyNGBlock(16, num_cap=12, input_units=32, units=16, route_num=3)) net.add(nn.Dropout(0.2)) net.add(nn.Dense(6, activation='sigmoid')) net.initialize(init=init.Xavier()) return net
Example #25
Source File: hourglass.py From mxnet-centernet with MIT License | 6 votes |
def __init__(self, kernel_size, channels_out, channels_in, stride=1, with_bn=True, **kwargs): #super(residual, self).__init__(**kwargs) super(residual, self).__init__() with self.name_scope(): self.conv1 = nn.Conv2D(channels_out, kernel_size=(3,3), strides=(stride, stride), padding=(1,1), in_channels=channels_in, use_bias=False) self.bn1 = nn.BatchNorm(in_channels= channels_out) self.conv2 = nn.Conv2D(channels_out, kernel_size=(3,3), strides=(1, 1), padding=(1,1), in_channels = channels_out,use_bias=False) self.bn2 = nn.BatchNorm(in_channels= channels_out) #self.skip = nn.HybridSequential() self.skip = nn.Sequential() if stride != 1 or channels_in != channels_out: self.skip.add( nn.Conv2D(channels_out, kernel_size=(1,1), strides=(stride, stride), in_channels= channels_in, use_bias=False), nn.BatchNorm(in_channels= channels_out) )
Example #26
Source File: train_wgan.py From gluon-cv with Apache License 2.0 | 5 votes |
def __init__(self, isize, nz, nc, ndf, ngpu): super(MLP_D, self).__init__() self.ngpu = ngpu self.main = gluon.nn.Sequential() with self.main.name_scope(): self.main.add(nn.Dense(units=ndf, in_units=nc * isize * isize, activation='relu')) # Z goes into a linear of size: ndf self.main.add(nn.Dense(units=ndf, in_units=ndf, activation='relu')) self.main.add(nn.Dense(units=ndf, in_units=ndf, activation='relu')) self.main.add(nn.Dense(units=1, in_units=ndf)) self.nc = nc self.isize = isize self.nz = nz
Example #27
Source File: CapsNet.py From CapsNet_Mxnet with Apache License 2.0 | 5 votes |
def CapsNet(batch_size, ctx): net = nn.Sequential() with net.name_scope(): net.add(nn.Conv2D(channels=256, kernel_size=9, strides=1, padding=(0,0), activation='relu')) net.add(PrimaryConv(dim_vector=8, n_channels=32, kernel_size=9, strides=2, context=ctx, padding=(0,0))) net.add(DigitCaps(num_capsule=10, dim_vector=16, context=ctx)) net.add(Length()) net.initialize(ctx=ctx, init=init.Xavier()) return net
Example #28
Source File: utils.py From d2l-zh with Apache License 2.0 | 5 votes |
def train_gluon_ch7(trainer_name, trainer_hyperparams, features, labels, batch_size=10, num_epochs=2): """Train a linear regression model with a given Gluon trainer.""" net = nn.Sequential() net.add(nn.Dense(1)) net.initialize(init.Normal(sigma=0.01)) loss = gloss.L2Loss() def eval_loss(): return loss(net(features), labels).mean().asscalar() ls = [eval_loss()] data_iter = gdata.DataLoader( gdata.ArrayDataset(features, labels), batch_size, shuffle=True) trainer = gluon.Trainer(net.collect_params(), trainer_name, trainer_hyperparams) for _ in range(num_epochs): start = time.time() for batch_i, (X, y) in enumerate(data_iter): with autograd.record(): l = loss(net(X), y) l.backward() trainer.step(batch_size) if (batch_i + 1) * batch_size % 100 == 0: ls.append(eval_loss()) print('loss: %f, %f sec per epoch' % (ls[-1], time.time() - start)) set_figsize() plt.plot(np.linspace(0, num_epochs, len(ls)), ls) plt.xlabel('epoch') plt.ylabel('loss')
Example #29
Source File: test_gluon.py From dynamic-training-with-apache-mxnet-on-aws with Apache License 2.0 | 5 votes |
def test_sequential_warning(): with warnings.catch_warnings(record=True) as w: # The following line permits the test to pass if run multiple times warnings.simplefilter('always') b = gluon.nn.Sequential() b.add(gluon.nn.Dense(20)) b.hybridize() assert len(w) == 1
Example #30
Source File: utils.py From d2l-zh with Apache License 2.0 | 5 votes |
def train_gluon_ch7(trainer_name, trainer_hyperparams, features, labels, batch_size=10, num_epochs=2): """Train a linear regression model with a given Gluon trainer.""" net = nn.Sequential() net.add(nn.Dense(1)) net.initialize(init.Normal(sigma=0.01)) loss = gloss.L2Loss() def eval_loss(): return loss(net(features), labels).mean().asscalar() ls = [eval_loss()] data_iter = gdata.DataLoader( gdata.ArrayDataset(features, labels), batch_size, shuffle=True) trainer = gluon.Trainer(net.collect_params(), trainer_name, trainer_hyperparams) for _ in range(num_epochs): start = time.time() for batch_i, (X, y) in enumerate(data_iter): with autograd.record(): l = loss(net(X), y) l.backward() trainer.step(batch_size) if (batch_i + 1) * batch_size % 100 == 0: ls.append(eval_loss()) print('loss: %f, %f sec per epoch' % (ls[-1], time.time() - start)) set_figsize() plt.plot(np.linspace(0, num_epochs, len(ls)), ls) plt.xlabel('epoch') plt.ylabel('loss')