nin.py
Go to the documentation of this file.
1 import chainer
2 import chainer.functions as F
3 import chainer.initializers as I
4 import chainer.links as L
5 
6 # mainly copied from https://github.com/chainer/chainer/blob/master/examples/imagenet/nin.py
7 
8 
9 class NIN(chainer.Chain):
10 
11  """Network-in-Network example model."""
12 
13  insize = 227
14 
15  def __init__(self, n_class=1000): # 1000 is for ImageNet
16  super(NIN, self).__init__()
17  conv_init = I.HeNormal() # MSRA scaling
18  self.n_class = n_class
19 
20  with self.init_scope():
21  self.mlpconv1 = L.MLPConvolution2D(
22  None, (96, 96, 96), 11, stride=4, conv_init=conv_init)
23  self.mlpconv2 = L.MLPConvolution2D(
24  None, (256, 256, 256), 5, pad=2, conv_init=conv_init)
25  self.mlpconv3 = L.MLPConvolution2D(
26  None, (384, 384, 384), 3, pad=1, conv_init=conv_init)
27  self.mlpconv4 = L.MLPConvolution2D(
28  None, (1024, 1024, self.n_class), 3, pad=1, conv_init=conv_init)
29 
30  def forward(self, x, t=None):
31  h = F.max_pooling_2d(F.relu(self.mlpconv1(x)), 3, stride=2)
32  h = F.max_pooling_2d(F.relu(self.mlpconv2(h)), 3, stride=2)
33  h = F.max_pooling_2d(F.relu(self.mlpconv3(h)), 3, stride=2)
34  h = self.mlpconv4(F.dropout(h))
35  h = F.reshape(F.average_pooling_2d(h, 6), (len(x), self.n_class))
36 
37  self.pred = F.softmax(h)
38 
39  if t is None:
40  assert not chainer.config.train
41  return
42 
43  self.loss = F.softmax_cross_entropy(h, t)
44  self.acc = F.accuracy(self.pred, t)
45 
46  chainer.report({'loss': self.loss, 'accuracy': self.acc}, self)
47 
48  return self.loss
sound_classification.nin.nin.NIN
Definition: nin.py:9
sound_classification.nin.nin.NIN.__init__
def __init__(self, n_class=1000)
Definition: nin.py:15
sound_classification.nin.nin.NIN.mlpconv3
mlpconv3
Definition: nin.py:25
sound_classification.nin.nin.NIN.mlpconv2
mlpconv2
Definition: nin.py:23
sound_classification.nin.nin.NIN.mlpconv4
mlpconv4
Definition: nin.py:27
sound_classification.nin.nin.NIN.loss
loss
Definition: nin.py:43
sound_classification.nin.nin.NIN.n_class
n_class
Definition: nin.py:18
sound_classification.nin.nin.NIN.pred
pred
Definition: nin.py:37
sound_classification.nin.nin.NIN.forward
def forward(self, x, t=None)
Definition: nin.py:30
sound_classification.nin.nin.NIN.mlpconv1
mlpconv1
Definition: nin.py:21
sound_classification.nin.nin.NIN.acc
acc
Definition: nin.py:44


sound_classification
Author(s):
autogenerated on Fri May 16 2025 03:12:55