| 266 | |
| 267 | |
| 268 | def VGGA(order): |
| 269 | model = cnn.CNNModelHelper(order, name='vgg-a', |
| 270 | use_cudnn=True, cudnn_exhaustive_search=True) |
| 271 | conv1 = model.Conv( |
| 272 | "data", |
| 273 | "conv1", |
| 274 | 3, |
| 275 | 64, |
| 276 | 3, |
| 277 | ('XavierFill', {}), |
| 278 | ('ConstantFill', {}), |
| 279 | pad=1 |
| 280 | ) |
| 281 | relu1 = model.Relu(conv1, "conv1") |
| 282 | pool1 = model.MaxPool(relu1, "pool1", kernel=2, stride=2) |
| 283 | conv2 = model.Conv( |
| 284 | pool1, |
| 285 | "conv2", |
| 286 | 64, |
| 287 | 128, |
| 288 | 3, |
| 289 | ('XavierFill', {}), |
| 290 | ('ConstantFill', {}), |
| 291 | pad=1 |
| 292 | ) |
| 293 | relu2 = model.Relu(conv2, "conv2") |
| 294 | pool2 = model.MaxPool(relu2, "pool2", kernel=2, stride=2) |
| 295 | conv3 = model.Conv( |
| 296 | pool2, |
| 297 | "conv3", |
| 298 | 128, |
| 299 | 256, |
| 300 | 3, |
| 301 | ('XavierFill', {}), |
| 302 | ('ConstantFill', {}), |
| 303 | pad=1 |
| 304 | ) |
| 305 | relu3 = model.Relu(conv3, "conv3") |
| 306 | conv4 = model.Conv( |
| 307 | relu3, |
| 308 | "conv4", |
| 309 | 256, |
| 310 | 256, |
| 311 | 3, |
| 312 | ('XavierFill', {}), |
| 313 | ('ConstantFill', {}), |
| 314 | pad=1 |
| 315 | ) |
| 316 | relu4 = model.Relu(conv4, "conv4") |
| 317 | pool4 = model.MaxPool(relu4, "pool4", kernel=2, stride=2) |
| 318 | conv5 = model.Conv( |
| 319 | pool4, |
| 320 | "conv5", |
| 321 | 256, |
| 322 | 512, |
| 323 | 3, |
| 324 | ('XavierFill', {}), |
| 325 | ('ConstantFill', {}), |