Last active
April 16, 2019 04:56
-
-
Save none53/f407453a778bd05b94bc240cee99804f to your computer and use it in GitHub Desktop.
20190416_vgg19_models.ipynb
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"nbformat": 4, | |
"nbformat_minor": 0, | |
"metadata": { | |
"colab": { | |
"name": "20190416_vgg19_models.ipynb", | |
"version": "0.3.2", | |
"provenance": [], | |
"collapsed_sections": [] | |
}, | |
"kernelspec": { | |
"name": "python3", | |
"display_name": "Python 3" | |
}, | |
"accelerator": "GPU" | |
}, | |
"cells": [ | |
{ | |
"metadata": { | |
"id": "MrQe1ZDAax0P", | |
"colab_type": "code", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 1108 | |
}, | |
"outputId": "6bae57af-b37e-40a2-d987-3923ea120778" | |
}, | |
"cell_type": "code", | |
"source": [ | |
"from keras.preprocessing import image\n", | |
"import keras.applications.vgg19 as vgg19\n", | |
"\n", | |
"model = vgg19.VGG19(weights=None, input_shape=(64, 64, 3))\n", | |
"model.summary()" | |
], | |
"execution_count": 1, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"Using TensorFlow backend.\n" | |
], | |
"name": "stderr" | |
}, | |
{ | |
"output_type": "stream", | |
"text": [ | |
"WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/tensorflow/python/framework/op_def_library.py:263: colocate_with (from tensorflow.python.framework.ops) is deprecated and will be removed in a future version.\n", | |
"Instructions for updating:\n", | |
"Colocations handled automatically by placer.\n", | |
"_________________________________________________________________\n", | |
"Layer (type) Output Shape Param # \n", | |
"=================================================================\n", | |
"input_1 (InputLayer) (None, 64, 64, 3) 0 \n", | |
"_________________________________________________________________\n", | |
"block1_conv1 (Conv2D) (None, 64, 64, 64) 1792 \n", | |
"_________________________________________________________________\n", | |
"block1_conv2 (Conv2D) (None, 64, 64, 64) 36928 \n", | |
"_________________________________________________________________\n", | |
"block1_pool (MaxPooling2D) (None, 32, 32, 64) 0 \n", | |
"_________________________________________________________________\n", | |
"block2_conv1 (Conv2D) (None, 32, 32, 128) 73856 \n", | |
"_________________________________________________________________\n", | |
"block2_conv2 (Conv2D) (None, 32, 32, 128) 147584 \n", | |
"_________________________________________________________________\n", | |
"block2_pool (MaxPooling2D) (None, 16, 16, 128) 0 \n", | |
"_________________________________________________________________\n", | |
"block3_conv1 (Conv2D) (None, 16, 16, 256) 295168 \n", | |
"_________________________________________________________________\n", | |
"block3_conv2 (Conv2D) (None, 16, 16, 256) 590080 \n", | |
"_________________________________________________________________\n", | |
"block3_conv3 (Conv2D) (None, 16, 16, 256) 590080 \n", | |
"_________________________________________________________________\n", | |
"block3_conv4 (Conv2D) (None, 16, 16, 256) 590080 \n", | |
"_________________________________________________________________\n", | |
"block3_pool (MaxPooling2D) (None, 8, 8, 256) 0 \n", | |
"_________________________________________________________________\n", | |
"block4_conv1 (Conv2D) (None, 8, 8, 512) 1180160 \n", | |
"_________________________________________________________________\n", | |
"block4_conv2 (Conv2D) (None, 8, 8, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block4_conv3 (Conv2D) (None, 8, 8, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block4_conv4 (Conv2D) (None, 8, 8, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block4_pool (MaxPooling2D) (None, 4, 4, 512) 0 \n", | |
"_________________________________________________________________\n", | |
"block5_conv1 (Conv2D) (None, 4, 4, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block5_conv2 (Conv2D) (None, 4, 4, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block5_conv3 (Conv2D) (None, 4, 4, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block5_conv4 (Conv2D) (None, 4, 4, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block5_pool (MaxPooling2D) (None, 2, 2, 512) 0 \n", | |
"_________________________________________________________________\n", | |
"flatten (Flatten) (None, 2048) 0 \n", | |
"_________________________________________________________________\n", | |
"fc1 (Dense) (None, 4096) 8392704 \n", | |
"_________________________________________________________________\n", | |
"fc2 (Dense) (None, 4096) 16781312 \n", | |
"_________________________________________________________________\n", | |
"predictions (Dense) (None, 1000) 4097000 \n", | |
"=================================================================\n", | |
"Total params: 49,295,400\n", | |
"Trainable params: 49,295,400\n", | |
"Non-trainable params: 0\n", | |
"_________________________________________________________________\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"id": "K_pC4VZcbuSO", | |
"colab_type": "code", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 1020 | |
}, | |
"outputId": "2421a854-47e7-4c2a-961a-b5444cc554d5" | |
}, | |
"cell_type": "code", | |
"source": [ | |
"from keras.preprocessing import image\n", | |
"import keras.applications.vgg19 as vgg19\n", | |
"\n", | |
"model = vgg19.VGG19(weights=None, input_shape=(128, 128, 3))\n", | |
"model.summary()" | |
], | |
"execution_count": 2, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"_________________________________________________________________\n", | |
"Layer (type) Output Shape Param # \n", | |
"=================================================================\n", | |
"input_2 (InputLayer) (None, 128, 128, 3) 0 \n", | |
"_________________________________________________________________\n", | |
"block1_conv1 (Conv2D) (None, 128, 128, 64) 1792 \n", | |
"_________________________________________________________________\n", | |
"block1_conv2 (Conv2D) (None, 128, 128, 64) 36928 \n", | |
"_________________________________________________________________\n", | |
"block1_pool (MaxPooling2D) (None, 64, 64, 64) 0 \n", | |
"_________________________________________________________________\n", | |
"block2_conv1 (Conv2D) (None, 64, 64, 128) 73856 \n", | |
"_________________________________________________________________\n", | |
"block2_conv2 (Conv2D) (None, 64, 64, 128) 147584 \n", | |
"_________________________________________________________________\n", | |
"block2_pool (MaxPooling2D) (None, 32, 32, 128) 0 \n", | |
"_________________________________________________________________\n", | |
"block3_conv1 (Conv2D) (None, 32, 32, 256) 295168 \n", | |
"_________________________________________________________________\n", | |
"block3_conv2 (Conv2D) (None, 32, 32, 256) 590080 \n", | |
"_________________________________________________________________\n", | |
"block3_conv3 (Conv2D) (None, 32, 32, 256) 590080 \n", | |
"_________________________________________________________________\n", | |
"block3_conv4 (Conv2D) (None, 32, 32, 256) 590080 \n", | |
"_________________________________________________________________\n", | |
"block3_pool (MaxPooling2D) (None, 16, 16, 256) 0 \n", | |
"_________________________________________________________________\n", | |
"block4_conv1 (Conv2D) (None, 16, 16, 512) 1180160 \n", | |
"_________________________________________________________________\n", | |
"block4_conv2 (Conv2D) (None, 16, 16, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block4_conv3 (Conv2D) (None, 16, 16, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block4_conv4 (Conv2D) (None, 16, 16, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block4_pool (MaxPooling2D) (None, 8, 8, 512) 0 \n", | |
"_________________________________________________________________\n", | |
"block5_conv1 (Conv2D) (None, 8, 8, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block5_conv2 (Conv2D) (None, 8, 8, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block5_conv3 (Conv2D) (None, 8, 8, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block5_conv4 (Conv2D) (None, 8, 8, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block5_pool (MaxPooling2D) (None, 4, 4, 512) 0 \n", | |
"_________________________________________________________________\n", | |
"flatten (Flatten) (None, 8192) 0 \n", | |
"_________________________________________________________________\n", | |
"fc1 (Dense) (None, 4096) 33558528 \n", | |
"_________________________________________________________________\n", | |
"fc2 (Dense) (None, 4096) 16781312 \n", | |
"_________________________________________________________________\n", | |
"predictions (Dense) (None, 1000) 4097000 \n", | |
"=================================================================\n", | |
"Total params: 74,461,224\n", | |
"Trainable params: 74,461,224\n", | |
"Non-trainable params: 0\n", | |
"_________________________________________________________________\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"id": "9D_Z6Infbfzo", | |
"colab_type": "code", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 1020 | |
}, | |
"outputId": "6832cd46-7106-4483-c1e6-3fa096617e2c" | |
}, | |
"cell_type": "code", | |
"source": [ | |
"from keras.preprocessing import image\n", | |
"import keras.applications.vgg19 as vgg19\n", | |
"\n", | |
"model = vgg19.VGG19(weights=None, input_shape=(224, 224, 3))\n", | |
"model.summary()" | |
], | |
"execution_count": 3, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"_________________________________________________________________\n", | |
"Layer (type) Output Shape Param # \n", | |
"=================================================================\n", | |
"input_3 (InputLayer) (None, 224, 224, 3) 0 \n", | |
"_________________________________________________________________\n", | |
"block1_conv1 (Conv2D) (None, 224, 224, 64) 1792 \n", | |
"_________________________________________________________________\n", | |
"block1_conv2 (Conv2D) (None, 224, 224, 64) 36928 \n", | |
"_________________________________________________________________\n", | |
"block1_pool (MaxPooling2D) (None, 112, 112, 64) 0 \n", | |
"_________________________________________________________________\n", | |
"block2_conv1 (Conv2D) (None, 112, 112, 128) 73856 \n", | |
"_________________________________________________________________\n", | |
"block2_conv2 (Conv2D) (None, 112, 112, 128) 147584 \n", | |
"_________________________________________________________________\n", | |
"block2_pool (MaxPooling2D) (None, 56, 56, 128) 0 \n", | |
"_________________________________________________________________\n", | |
"block3_conv1 (Conv2D) (None, 56, 56, 256) 295168 \n", | |
"_________________________________________________________________\n", | |
"block3_conv2 (Conv2D) (None, 56, 56, 256) 590080 \n", | |
"_________________________________________________________________\n", | |
"block3_conv3 (Conv2D) (None, 56, 56, 256) 590080 \n", | |
"_________________________________________________________________\n", | |
"block3_conv4 (Conv2D) (None, 56, 56, 256) 590080 \n", | |
"_________________________________________________________________\n", | |
"block3_pool (MaxPooling2D) (None, 28, 28, 256) 0 \n", | |
"_________________________________________________________________\n", | |
"block4_conv1 (Conv2D) (None, 28, 28, 512) 1180160 \n", | |
"_________________________________________________________________\n", | |
"block4_conv2 (Conv2D) (None, 28, 28, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block4_conv3 (Conv2D) (None, 28, 28, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block4_conv4 (Conv2D) (None, 28, 28, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block4_pool (MaxPooling2D) (None, 14, 14, 512) 0 \n", | |
"_________________________________________________________________\n", | |
"block5_conv1 (Conv2D) (None, 14, 14, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block5_conv2 (Conv2D) (None, 14, 14, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block5_conv3 (Conv2D) (None, 14, 14, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block5_conv4 (Conv2D) (None, 14, 14, 512) 2359808 \n", | |
"_________________________________________________________________\n", | |
"block5_pool (MaxPooling2D) (None, 7, 7, 512) 0 \n", | |
"_________________________________________________________________\n", | |
"flatten (Flatten) (None, 25088) 0 \n", | |
"_________________________________________________________________\n", | |
"fc1 (Dense) (None, 4096) 102764544 \n", | |
"_________________________________________________________________\n", | |
"fc2 (Dense) (None, 4096) 16781312 \n", | |
"_________________________________________________________________\n", | |
"predictions (Dense) (None, 1000) 4097000 \n", | |
"=================================================================\n", | |
"Total params: 143,667,240\n", | |
"Trainable params: 143,667,240\n", | |
"Non-trainable params: 0\n", | |
"_________________________________________________________________\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"id": "ieGldrtJKtH4", | |
"colab_type": "code", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 715 | |
}, | |
"outputId": "668e038e-0c38-4517-a6cc-ccb08c3c7b99" | |
}, | |
"cell_type": "code", | |
"source": [ | |
"from keras.preprocessing import image\n", | |
"import keras.applications.vgg19 as vgg19\n", | |
"\n", | |
"model = vgg19.VGG19(weights='imagenet', input_shape=(64, 64, 3))\n", | |
"model.summary()" | |
], | |
"execution_count": 4, | |
"outputs": [ | |
{ | |
"output_type": "error", | |
"ename": "ValueError", | |
"evalue": "ignored", | |
"traceback": [ | |
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", | |
"\u001b[0;31mValueError\u001b[0m Traceback (most recent call last)", | |
"\u001b[0;32m<ipython-input-4-7f2e82711ae3>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[1;32m 2\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mkeras\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mapplications\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvgg19\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0mvgg19\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 4\u001b[0;31m \u001b[0mmodel\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mvgg19\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mVGG19\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mweights\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'imagenet'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minput_shape\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m64\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m64\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m3\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 5\u001b[0m \u001b[0mmodel\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msummary\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", | |
"\u001b[0;32m/usr/local/lib/python3.6/dist-packages/keras/applications/__init__.py\u001b[0m in \u001b[0;36mwrapper\u001b[0;34m(*args, **kwargs)\u001b[0m\n\u001b[1;32m 26\u001b[0m \u001b[0mkwargs\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'models'\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmodels\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 27\u001b[0m \u001b[0mkwargs\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'utils'\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mutils\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 28\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mbase_fun\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 29\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 30\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mwrapper\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", | |
"\u001b[0;32m/usr/local/lib/python3.6/dist-packages/keras/applications/vgg19.py\u001b[0m in \u001b[0;36mVGG19\u001b[0;34m(*args, **kwargs)\u001b[0m\n\u001b[1;32m 9\u001b[0m \u001b[0;34m@\u001b[0m\u001b[0mkeras_modules_injection\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 10\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mVGG19\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 11\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mvgg19\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mVGG19\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 12\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 13\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", | |
"\u001b[0;32m/usr/local/lib/python3.6/dist-packages/keras_applications/vgg19.py\u001b[0m in \u001b[0;36mVGG19\u001b[0;34m(include_top, weights, input_tensor, input_shape, pooling, classes, **kwargs)\u001b[0m\n\u001b[1;32m 97\u001b[0m \u001b[0mdata_format\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mbackend\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mimage_data_format\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 98\u001b[0m \u001b[0mrequire_flatten\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0minclude_top\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 99\u001b[0;31m weights=weights)\n\u001b[0m\u001b[1;32m 100\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 101\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0minput_tensor\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", | |
"\u001b[0;32m/usr/local/lib/python3.6/dist-packages/keras_applications/imagenet_utils.py\u001b[0m in \u001b[0;36m_obtain_input_shape\u001b[0;34m(input_shape, default_size, min_size, data_format, require_flatten, weights)\u001b[0m\n\u001b[1;32m 290\u001b[0m \u001b[0;34m'and loading `imagenet` weights, '\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 291\u001b[0m \u001b[0;34m'`input_shape` should be '\u001b[0m \u001b[0;34m+\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 292\u001b[0;31m str(default_shape) + '.')\n\u001b[0m\u001b[1;32m 293\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mdefault_shape\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 294\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0minput_shape\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", | |
"\u001b[0;31mValueError\u001b[0m: When setting `include_top=True` and loading `imagenet` weights, `input_shape` should be (224, 224, 3)." | |
] | |
} | |
] | |
} | |
] | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
入力画像サイズごとのモデル