画像認識プログラミングレシピという本でchainerを学習しているのですが、肝心のCNNクラスの中身がいまいちわかりません。
それぞれの行で具体的にどのようなことが書かれているのか教えていただきたいです。よろしくお願いします。
python
1#CNN(畳み込みニューラルネットワーク)の設定 2 3class CNN(Chain): 4 #コンストラクタ 5 def __init__ (self): 6 super(CNN, self).__init__() 7 8 with self.init_scope(): 9 self.conv1 = L.Convolution2D(None, out_channels=32, ksize=3, stride=1, pad=1) 10 self.conv2 = L.Convolution2D(in_channels=32, out_channels=64, ksize=3, stride=1, pad=1) 11 self.conv3 = L.Convolution2D(in_channels=64, out_channels=128, ksize=3, stride=1, pad=1) 12 self.conv4 = L.Convolution2D(in_channels=128, out_channels=256, ksize=3, stride=1, pad=1) 13 self.layer1 = L.Linear(None, 1000) 14 self.layer2 = L.Linear(1000, 2) 15 16 def __call__(self, input): 17 func = F.max_pooling_2d(F.relu(self.conv1(input)), ksize=2, stride=2) 18 func = F.max_pooling_2d(F.relu(self.conv2(input)), ksize=2, stride=2) 19 func = F.max_pooling_2d(F.relu(self.conv3(input)), ksize=2, stride=2) 20 func = F.max_pooling_2d(F.relu(self.conv4(input)), ksize=2, stride=2) 21 func = F.dropout(F.relu(self.layer1(func)), ratio=0.80) 22 func = self.layer2(func) 23 return func
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。