In [1]:
import warnings
warnings.filterwarnings('ignore')

In [2]:
%matplotlib inline
%pylab inline


Populating the interactive namespace from numpy and matplotlib

In [3]:
import matplotlib.pylab as plt
import numpy as np

In [4]:
from distutils.version import StrictVersion

In [5]:
import sklearn
print(sklearn.__version__)

assert StrictVersion(sklearn.__version__ ) >= StrictVersion('0.18.1')


0.19.0

In [6]:
import tensorflow as tf
tf.logging.set_verbosity(tf.logging.ERROR)
print(tf.__version__)

assert StrictVersion(tf.__version__) >= StrictVersion('1.1.0')


1.2.1

In [7]:
import keras
print(keras.__version__)

assert StrictVersion(keras.__version__) >= StrictVersion('2.0.0')


Using TensorFlow backend.
2.0.8

Modell-Architektur

http://cs231n.github.io/neural-networks-1/#power

Layout of a typical CNN

http://cs231n.github.io/convolutional-networks/

Classic VGG like Architecture

  • we use a VGG like architecture
  • based on https://arxiv.org/abs/1409.1556
  • basic idea: sequential, deep, small convolutional filters, use dropouts to reduce overfitting
  • 16/19 layers are typical
  • we choose less layers, because we have limited resources

Convolutional Blocks: Cascading many Convolutional Layers having down sampling in between

http://cs231n.github.io/convolutional-networks/#conv

Example of a Convolution

Original Image

Many convolutional filters applied over all channels

http://cs.stanford.edu/people/karpathy/convnetjs/demo/cifar10.html

Downlsampling Layer: Reduces data sizes and risk of overfitting

http://cs231n.github.io/convolutional-networks/#pool

Activation Functions


In [54]:
def centerAxis(uses_negative=False):
    # http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.plot
    ax = plt.gca()
    ax.spines['left'].set_position('center')
    if uses_negative:
        ax.spines['bottom'].set_position('center')
    ax.spines['right'].set_color('none')
    ax.spines['top'].set_color('none')
    ax.xaxis.set_ticks_position('bottom')
    ax.yaxis.set_ticks_position('left')

Sigmoid

  • This is the classic
  • Continuous version of step function

In [55]:
def np_sigmoid(X):
    return 1 / (1 + np.exp(X * -1))

In [57]:
x = np.arange(-10,10,0.01)
y = np_sigmoid(x)

centerAxis()
plt.plot(x,y,lw=3)


Out[57]:
[<matplotlib.lines.Line2D at 0x7ff61eaeba58>]

Relu

  • perfect for blacking out everyhing beyong threshold
  • this is just what everyone actually uses

In [58]:
def np_relu(x):
    return np.maximum(0, x)

In [59]:
x = np.arange(-10, 10, 0.01)
y = np_relu(x)

centerAxis()
plt.plot(x,y,lw=3)


Out[59]:
[<matplotlib.lines.Line2D at 0x7ff61b1e45c0>]

In [ ]:

The classic VGG16 Architecture


In [33]:
def predict(model, img_path):
    img = image.load_img(img_path, target_size=(224, 224))
    x = image.img_to_array(img)
    x = np.expand_dims(x, axis=0)
    x = preprocess_input(x)

    preds = model.predict(x)
    # decode the results into a list of tuples (class, description, probability)
    # (one such list for each sample in the batch)
    print('Predicted:', decode_predictions(preds, top=3)[0])

In [34]:
from keras import applications
# applications.VGG16?
vgg16_model = applications.VGG16(weights='imagenet')

VGG starts with a number of convolutional blocks for feature extraction and ends with a fully connected classifier


In [35]:
vgg16_model.summary()


_________________________________________________________________
Layer (type)                 Output Shape              Param #   
=================================================================
input_5 (InputLayer)         (None, 224, 224, 3)       0         
_________________________________________________________________
block1_conv1 (Conv2D)        (None, 224, 224, 64)      1792      
_________________________________________________________________
block1_conv2 (Conv2D)        (None, 224, 224, 64)      36928     
_________________________________________________________________
block1_pool (MaxPooling2D)   (None, 112, 112, 64)      0         
_________________________________________________________________
block2_conv1 (Conv2D)        (None, 112, 112, 128)     73856     
_________________________________________________________________
block2_conv2 (Conv2D)        (None, 112, 112, 128)     147584    
_________________________________________________________________
block2_pool (MaxPooling2D)   (None, 56, 56, 128)       0         
_________________________________________________________________
block3_conv1 (Conv2D)        (None, 56, 56, 256)       295168    
_________________________________________________________________
block3_conv2 (Conv2D)        (None, 56, 56, 256)       590080    
_________________________________________________________________
block3_conv3 (Conv2D)        (None, 56, 56, 256)       590080    
_________________________________________________________________
block3_pool (MaxPooling2D)   (None, 28, 28, 256)       0         
_________________________________________________________________
block4_conv1 (Conv2D)        (None, 28, 28, 512)       1180160   
_________________________________________________________________
block4_conv2 (Conv2D)        (None, 28, 28, 512)       2359808   
_________________________________________________________________
block4_conv3 (Conv2D)        (None, 28, 28, 512)       2359808   
_________________________________________________________________
block4_pool (MaxPooling2D)   (None, 14, 14, 512)       0         
_________________________________________________________________
block5_conv1 (Conv2D)        (None, 14, 14, 512)       2359808   
_________________________________________________________________
block5_conv2 (Conv2D)        (None, 14, 14, 512)       2359808   
_________________________________________________________________
block5_conv3 (Conv2D)        (None, 14, 14, 512)       2359808   
_________________________________________________________________
block5_pool (MaxPooling2D)   (None, 7, 7, 512)         0         
_________________________________________________________________
flatten (Flatten)            (None, 25088)             0         
_________________________________________________________________
fc1 (Dense)                  (None, 4096)              102764544 
_________________________________________________________________
fc2 (Dense)                  (None, 4096)              16781312  
_________________________________________________________________
predictions (Dense)          (None, 1000)              4097000   
=================================================================
Total params: 138,357,544
Trainable params: 138,357,544
Non-trainable params: 0
_________________________________________________________________

In [37]:
!curl -O https://upload.wikimedia.org/wikipedia/commons/thumb/d/de/Beagle_Upsy.jpg/440px-Beagle_Upsy.jpg


  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 44891  100 44891    0     0    471      0  0:01:35  0:01:35 --:--:--  1989 0:00:40  0:17:08     01   62 27810    0     0    357      0  0:02:05  0:01:17  0:00:48  5322:22     0


In [38]:
predict(model = vgg16_model, img_path = '440px-Beagle_Upsy.jpg')


Predicted: [('n02088364', 'beagle', 0.32020867), ('n02089973', 'English_foxhound', 0.26515135), ('n02089867', 'Walker_hound', 0.20564148)]

In [47]:
!curl -O https://djcordhose.github.io/ai/img/cat-bonkers.png


  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  843k  100  843k    0     0   9866      0  0:01:27  0:01:27 --:--:--  156k 0 147      0  1:37:54  0:00:33  1:37:21  1152  0843k    7 64947    0     0   1072      0  0:13:25  0:01:00  0:12:25     0  843k    7 64947    0     0    990      0  0:14:32  0:01:05  0:13:27     0:14  0:01:09  0:11:05  357224  0:01:22  0:09:02  3594

In [52]:
predict(model = vgg16_model, img_path = 'cat-bonkers.png')


Predicted: [('n02124075', 'Egyptian_cat', 0.93594509), ('n02123045', 'tabby', 0.040695436), ('n02123159', 'tiger_cat', 0.019523595)]

In [32]:
!curl -O https://djcordhose.github.io/ai/img/squirrels/original/Michigan-MSU-raschka.jpg
!curl -O https://djcordhose.github.io/ai/img/squirrels/original/Black_New_York_stuy_town_squirrel_amanda_ernlund.jpeg
!curl -O https://djcordhose.github.io/ai/img/squirrels/original/london.jpg


  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  126k  100  126k    0     0   6755      0  0:00:19  0:00:19 --:--:-- 18071126k   12 15796    0     0   1254      0  0:01:43  0:00:12  0:01:31  3064
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  302k  100  302k    0     0  83072      0  0:00:03  0:00:03 --:--:-- 85627
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  494k  100  494k    0     0  14207      0  0:00:35  0:00:35 --:--:-- 35943    0    0     0    0     0      0      0 --:--:--  0:00:11 --:--:--     0 3354      0  0:02:30  0:00:19  0:02:11  6509


In [36]:
predict(model = vgg16_model, img_path = 'Michigan-MSU-raschka.jpg')


Predicted: [('n02356798', 'fox_squirrel', 0.99995279), ('n02361337', 'marmot', 4.3569533e-05), ('n02120505', 'grey_fox', 2.3456425e-06)]

In [25]:
predict(model = vgg16_model, img_path = 'Black_New_York_stuy_town_squirrel_amanda_ernlund.jpeg')


Predicted: [('n01514859', 'hen', 0.251127), ('n01514668', 'cock', 0.13989805), ('n02486410', 'baboon', 0.13570367)]

In [26]:
predict(model = vgg16_model, img_path = 'london.jpg')


Predicted: [('n02655020', 'puffer', 0.21103905), ('n02441942', 'weasel', 0.085964032), ('n01950731', 'sea_slug', 0.06110343)]

What does the CNN "see"?

Does it "see" the right thing?

  • Each filter output of a convolutional layer is called feature channel
  • with each input they should ideally either be
    • blank if they do not recognize any feature in the input or
    • encode what the feature channel "sees" in the input
  • feature channels directly before FC layers are often called bottleneck feature channels

Some activations from bottleneck features:


In [42]:
# create a tmp dir in the local directory this notebook runs in, otherwise quiver will fail (and won't tell you why)
!rm -rf tmp
!mkdir tmp

Visualizing feature channels using Quiver

Only works locally


In [53]:
# https://github.com/keplr-io/quiver

# Alternative with more styles of visualization: https://github.com/raghakot/keras-vis

# https://github.com/keplr-io/quiver
from quiver_engine import server
server.launch(vgg16_model, input_folder='.', port=7000)

# open at http://localhost:7000/
# interrupt kernel to return control to notebook


Starting webserver from: /home/olli/anaconda3/lib/python3.6/site-packages/quiver_engine
::1 - - [2017-09-28 20:42:49] "GET /model HTTP/1.1" 200 23654 0.009025
::1 - - [2017-09-28 20:42:49] "GET /inputs HTTP/1.1" 200 263 0.009799
::1 - - [2017-09-28 20:42:49] "GET /input-file/cat-bokners.png HTTP/1.1" 200 9664 0.029383
::1 - - [2017-09-28 20:42:50] "GET /input-file/cat-bonkers.png HTTP/1.1" 200 863885 0.087956
::1 - - [2017-09-28 20:43:04] "GET /predict/cat-bonkers.png HTTP/1.1" 200 546 1.270208
::1 - - [2017-09-28 20:43:08] "GET /layer/block5_conv3/cat-bonkers.png HTTP/1.1" 200 22051 4.286715
::1 - - [2017-09-28 20:43:08] "GET /temp-file/block5_conv3_0_cat-bonkers.png.png HTTP/1.1" 200 388 0.005836
::1 - - [2017-09-28 20:43:08] "GET /temp-file/block5_conv3_1_cat-bonkers.png.png HTTP/1.1" 200 414 0.005530
::1 - - [2017-09-28 20:43:08] "GET /temp-file/block5_conv3_2_cat-bonkers.png.png HTTP/1.1" 200 403 0.012756
::1 - - [2017-09-28 20:43:08] "GET /temp-file/block5_conv3_8_cat-bonkers.png.png HTTP/1.1" 200 395 0.009354
::1 - - [2017-09-28 20:43:08] "GET /temp-file/block5_conv3_3_cat-bonkers.png.png HTTP/1.1" 200 446 0.008355
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_9_cat-bonkers.png.png HTTP/1.1" 200 433 0.006303
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_6_cat-bonkers.png.png HTTP/1.1" 200 389 0.004560
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_7_cat-bonkers.png.png HTTP/1.1" 200 389 0.003617
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_4_cat-bonkers.png.png HTTP/1.1" 200 424 0.011270
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_5_cat-bonkers.png.png HTTP/1.1" 200 411 0.004061
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_11_cat-bonkers.png.png HTTP/1.1" 200 393 0.006762
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_10_cat-bonkers.png.png HTTP/1.1" 200 454 0.008003
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_12_cat-bonkers.png.png HTTP/1.1" 200 469 0.009442
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_13_cat-bonkers.png.png HTTP/1.1" 200 409 0.003705
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_16_cat-bonkers.png.png HTTP/1.1" 200 401 0.005215
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_17_cat-bonkers.png.png HTTP/1.1" 200 400 0.004533
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_14_cat-bonkers.png.png HTTP/1.1" 200 389 0.004098
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_15_cat-bonkers.png.png HTTP/1.1" 200 411 0.004317
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_18_cat-bonkers.png.png HTTP/1.1" 200 401 0.006732
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_19_cat-bonkers.png.png HTTP/1.1" 200 420 0.003697
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_20_cat-bonkers.png.png HTTP/1.1" 200 390 0.003243
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_21_cat-bonkers.png.png HTTP/1.1" 200 409 0.005985
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_22_cat-bonkers.png.png HTTP/1.1" 200 395 0.003845
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_23_cat-bonkers.png.png HTTP/1.1" 200 435 0.003876
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_24_cat-bonkers.png.png HTTP/1.1" 200 392 0.003278
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_25_cat-bonkers.png.png HTTP/1.1" 200 466 0.004308
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_26_cat-bonkers.png.png HTTP/1.1" 200 390 0.002902
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_27_cat-bonkers.png.png HTTP/1.1" 200 432 0.003182
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_29_cat-bonkers.png.png HTTP/1.1" 200 407 0.002709
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_30_cat-bonkers.png.png HTTP/1.1" 200 408 0.003356
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_31_cat-bonkers.png.png HTTP/1.1" 200 391 0.004884
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_36_cat-bonkers.png.png HTTP/1.1" 200 446 0.003412
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_32_cat-bonkers.png.png HTTP/1.1" 200 454 0.003441
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_28_cat-bonkers.png.png HTTP/1.1" 200 407 0.004572
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_34_cat-bonkers.png.png HTTP/1.1" 200 390 0.003978
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_35_cat-bonkers.png.png HTTP/1.1" 200 448 0.002741
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_37_cat-bonkers.png.png HTTP/1.1" 200 403 0.002852
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_38_cat-bonkers.png.png HTTP/1.1" 200 402 0.003360
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_33_cat-bonkers.png.png HTTP/1.1" 200 420 0.003303
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_40_cat-bonkers.png.png HTTP/1.1" 200 407 0.003052
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_41_cat-bonkers.png.png HTTP/1.1" 200 398 0.003730
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_42_cat-bonkers.png.png HTTP/1.1" 200 397 0.008451
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_43_cat-bonkers.png.png HTTP/1.1" 200 393 0.006110
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_39_cat-bonkers.png.png HTTP/1.1" 200 410 0.004644
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_45_cat-bonkers.png.png HTTP/1.1" 200 465 0.005798
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_46_cat-bonkers.png.png HTTP/1.1" 200 390 0.005449
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_47_cat-bonkers.png.png HTTP/1.1" 200 390 0.006049
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_48_cat-bonkers.png.png HTTP/1.1" 200 407 0.007339
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_44_cat-bonkers.png.png HTTP/1.1" 200 400 0.003293
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_50_cat-bonkers.png.png HTTP/1.1" 200 395 0.003582
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_51_cat-bonkers.png.png HTTP/1.1" 200 390 0.003765
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_52_cat-bonkers.png.png HTTP/1.1" 200 412 0.003562
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_53_cat-bonkers.png.png HTTP/1.1" 200 440 0.004380
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_49_cat-bonkers.png.png HTTP/1.1" 200 440 0.003832
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_55_cat-bonkers.png.png HTTP/1.1" 200 401 0.006133
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_60_cat-bonkers.png.png HTTP/1.1" 200 398 0.002989
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_56_cat-bonkers.png.png HTTP/1.1" 200 509 0.004285
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_57_cat-bonkers.png.png HTTP/1.1" 200 416 0.003716
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_58_cat-bonkers.png.png HTTP/1.1" 200 406 0.004034
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_54_cat-bonkers.png.png HTTP/1.1" 200 460 0.004100
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_61_cat-bonkers.png.png HTTP/1.1" 200 418 0.003927
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_62_cat-bonkers.png.png HTTP/1.1" 200 389 0.005007
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_63_cat-bonkers.png.png HTTP/1.1" 200 408 0.004108
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_64_cat-bonkers.png.png HTTP/1.1" 200 409 0.003440
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_59_cat-bonkers.png.png HTTP/1.1" 200 410 0.004628
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_66_cat-bonkers.png.png HTTP/1.1" 200 473 0.002836
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_67_cat-bonkers.png.png HTTP/1.1" 200 400 0.003365
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_68_cat-bonkers.png.png HTTP/1.1" 200 420 0.006610
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_73_cat-bonkers.png.png HTTP/1.1" 200 408 0.006233
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_74_cat-bonkers.png.png HTTP/1.1" 200 417 0.011195
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_75_cat-bonkers.png.png HTTP/1.1" 200 390 0.005352
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_69_cat-bonkers.png.png HTTP/1.1" 200 403 0.006657
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_65_cat-bonkers.png.png HTTP/1.1" 200 452 0.009334
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_78_cat-bonkers.png.png HTTP/1.1" 200 390 0.003956
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_71_cat-bonkers.png.png HTTP/1.1" 200 401 0.004263
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_72_cat-bonkers.png.png HTTP/1.1" 200 413 0.006854
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_76_cat-bonkers.png.png HTTP/1.1" 200 406 0.009273
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_82_cat-bonkers.png.png HTTP/1.1" 200 440 0.003865
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_77_cat-bonkers.png.png HTTP/1.1" 200 394 0.006788
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_70_cat-bonkers.png.png HTTP/1.1" 200 481 0.007221
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_85_cat-bonkers.png.png HTTP/1.1" 200 446 0.011169
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_80_cat-bonkers.png.png HTTP/1.1" 200 467 0.004142
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_81_cat-bonkers.png.png HTTP/1.1" 200 401 0.009178
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_88_cat-bonkers.png.png HTTP/1.1" 200 398 0.009529
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_83_cat-bonkers.png.png HTTP/1.1" 200 402 0.003407
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_84_cat-bonkers.png.png HTTP/1.1" 200 390 0.006739
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_79_cat-bonkers.png.png HTTP/1.1" 200 415 0.003936
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_87_cat-bonkers.png.png HTTP/1.1" 200 407 0.005714
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_89_cat-bonkers.png.png HTTP/1.1" 200 393 0.004689
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_90_cat-bonkers.png.png HTTP/1.1" 200 414 0.003843
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_91_cat-bonkers.png.png HTTP/1.1" 200 426 0.006621
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_86_cat-bonkers.png.png HTTP/1.1" 200 402 0.002880
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_93_cat-bonkers.png.png HTTP/1.1" 200 401 0.003911
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_94_cat-bonkers.png.png HTTP/1.1" 200 436 0.009976
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_99_cat-bonkers.png.png HTTP/1.1" 200 395 0.002955
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_95_cat-bonkers.png.png HTTP/1.1" 200 416 0.005028
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_96_cat-bonkers.png.png HTTP/1.1" 200 444 0.004249
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_92_cat-bonkers.png.png HTTP/1.1" 200 396 0.004177
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_98_cat-bonkers.png.png HTTP/1.1" 200 470 0.005674
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_100_cat-bonkers.png.png HTTP/1.1" 200 391 0.005821
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_105_cat-bonkers.png.png HTTP/1.1" 200 414 0.005597
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_101_cat-bonkers.png.png HTTP/1.1" 200 410 0.003406
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_102_cat-bonkers.png.png HTTP/1.1" 200 506 0.007738
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_108_cat-bonkers.png.png HTTP/1.1" 200 389 0.003225
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_97_cat-bonkers.png.png HTTP/1.1" 200 403 0.004600
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_104_cat-bonkers.png.png HTTP/1.1" 200 415 0.006889
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_106_cat-bonkers.png.png HTTP/1.1" 200 460 0.003295
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_107_cat-bonkers.png.png HTTP/1.1" 200 475 0.005144
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_109_cat-bonkers.png.png HTTP/1.1" 200 395 0.007625
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_103_cat-bonkers.png.png HTTP/1.1" 200 390 0.004154
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_110_cat-bonkers.png.png HTTP/1.1" 200 484 0.005644
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_111_cat-bonkers.png.png HTTP/1.1" 200 411 0.005644
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_112_cat-bonkers.png.png HTTP/1.1" 200 389 0.011884
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_113_cat-bonkers.png.png HTTP/1.1" 200 519 0.010628
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_114_cat-bonkers.png.png HTTP/1.1" 200 394 0.003400
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_115_cat-bonkers.png.png HTTP/1.1" 200 391 0.011066
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_117_cat-bonkers.png.png HTTP/1.1" 200 432 0.006424
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_118_cat-bonkers.png.png HTTP/1.1" 200 402 0.002870
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_119_cat-bonkers.png.png HTTP/1.1" 200 521 0.004059
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_120_cat-bonkers.png.png HTTP/1.1" 200 410 0.006211
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_116_cat-bonkers.png.png HTTP/1.1" 200 433 0.002597
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_122_cat-bonkers.png.png HTTP/1.1" 200 420 0.003577
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_123_cat-bonkers.png.png HTTP/1.1" 200 440 0.007095
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_124_cat-bonkers.png.png HTTP/1.1" 200 406 0.003321
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_125_cat-bonkers.png.png HTTP/1.1" 200 432 0.003108
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_121_cat-bonkers.png.png HTTP/1.1" 200 426 0.008002
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_127_cat-bonkers.png.png HTTP/1.1" 200 408 0.006074
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_132_cat-bonkers.png.png HTTP/1.1" 200 455 0.004685
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_128_cat-bonkers.png.png HTTP/1.1" 200 467 0.006996
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_134_cat-bonkers.png.png HTTP/1.1" 200 390 0.003834
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_129_cat-bonkers.png.png HTTP/1.1" 200 418 0.003358
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_130_cat-bonkers.png.png HTTP/1.1" 200 400 0.007916
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_126_cat-bonkers.png.png HTTP/1.1" 200 417 0.003275
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_133_cat-bonkers.png.png HTTP/1.1" 200 413 0.003994
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_139_cat-bonkers.png.png HTTP/1.1" 200 390 0.004715
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_135_cat-bonkers.png.png HTTP/1.1" 200 424 0.003364
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_136_cat-bonkers.png.png HTTP/1.1" 200 403 0.005452
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_137_cat-bonkers.png.png HTTP/1.1" 200 395 0.006880
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_131_cat-bonkers.png.png HTTP/1.1" 200 443 0.004835
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_140_cat-bonkers.png.png HTTP/1.1" 200 390 0.003606
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_141_cat-bonkers.png.png HTTP/1.1" 200 418 0.011762
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_142_cat-bonkers.png.png HTTP/1.1" 200 404 0.003561
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_143_cat-bonkers.png.png HTTP/1.1" 200 390 0.002717
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_138_cat-bonkers.png.png HTTP/1.1" 200 390 0.009297
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_145_cat-bonkers.png.png HTTP/1.1" 200 395 0.002789
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_146_cat-bonkers.png.png HTTP/1.1" 200 406 0.003468
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_151_cat-bonkers.png.png HTTP/1.1" 200 392 0.013249
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_152_cat-bonkers.png.png HTTP/1.1" 200 399 0.006612
::1 - - [2017-09-28 20:43:09] "GET /temp-file/block5_conv3_153_cat-bonkers.png.png HTTP/1.1" 200 425 0.008806
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_154_cat-bonkers.png.png HTTP/1.1" 200 404 0.009391
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_147_cat-bonkers.png.png HTTP/1.1" 200 395 0.005115
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_148_cat-bonkers.png.png HTTP/1.1" 200 426 0.006493
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_157_cat-bonkers.png.png HTTP/1.1" 200 444 0.004174
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_144_cat-bonkers.png.png HTTP/1.1" 200 398 0.011216
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_150_cat-bonkers.png.png HTTP/1.1" 200 401 0.006798
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_155_cat-bonkers.png.png HTTP/1.1" 200 557 0.006011
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_156_cat-bonkers.png.png HTTP/1.1" 200 447 0.011466
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_158_cat-bonkers.png.png HTTP/1.1" 200 409 0.009138
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_159_cat-bonkers.png.png HTTP/1.1" 200 477 0.006084
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_149_cat-bonkers.png.png HTTP/1.1" 200 395 0.004817
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_160_cat-bonkers.png.png HTTP/1.1" 200 424 0.005336
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_161_cat-bonkers.png.png HTTP/1.1" 200 453 0.002679
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_162_cat-bonkers.png.png HTTP/1.1" 200 389 0.002121
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_163_cat-bonkers.png.png HTTP/1.1" 200 393 0.004161
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_164_cat-bonkers.png.png HTTP/1.1" 200 492 0.003625
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_165_cat-bonkers.png.png HTTP/1.1" 200 401 0.014764
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_168_cat-bonkers.png.png HTTP/1.1" 200 445 0.011964
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_166_cat-bonkers.png.png HTTP/1.1" 200 483 0.003318
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_167_cat-bonkers.png.png HTTP/1.1" 200 455 0.010941
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_170_cat-bonkers.png.png HTTP/1.1" 200 398 0.008536
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_169_cat-bonkers.png.png HTTP/1.1" 200 406 0.011888
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_176_cat-bonkers.png.png HTTP/1.1" 200 398 0.007244
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_172_cat-bonkers.png.png HTTP/1.1" 200 480 0.004575
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_173_cat-bonkers.png.png HTTP/1.1" 200 412 0.008070
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_174_cat-bonkers.png.png HTTP/1.1" 200 393 0.003334
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_175_cat-bonkers.png.png HTTP/1.1" 200 410 0.004309
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_171_cat-bonkers.png.png HTTP/1.1" 200 410 0.003174
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_178_cat-bonkers.png.png HTTP/1.1" 200 394 0.002937
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_179_cat-bonkers.png.png HTTP/1.1" 200 420 0.003435
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_180_cat-bonkers.png.png HTTP/1.1" 200 402 0.002889
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_181_cat-bonkers.png.png HTTP/1.1" 200 390 0.007742
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_177_cat-bonkers.png.png HTTP/1.1" 200 448 0.004802
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_183_cat-bonkers.png.png HTTP/1.1" 200 500 0.003039
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_184_cat-bonkers.png.png HTTP/1.1" 200 396 0.003278
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_185_cat-bonkers.png.png HTTP/1.1" 200 451 0.008632
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_186_cat-bonkers.png.png HTTP/1.1" 200 427 0.003300
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_182_cat-bonkers.png.png HTTP/1.1" 200 412 0.003581
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_188_cat-bonkers.png.png HTTP/1.1" 200 399 0.009539
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_189_cat-bonkers.png.png HTTP/1.1" 200 395 0.003784
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_190_cat-bonkers.png.png HTTP/1.1" 200 437 0.003735
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_191_cat-bonkers.png.png HTTP/1.1" 200 390 0.006244
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_187_cat-bonkers.png.png HTTP/1.1" 200 395 0.002721
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_193_cat-bonkers.png.png HTTP/1.1" 200 442 0.009152
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_198_cat-bonkers.png.png HTTP/1.1" 200 451 0.002890
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_194_cat-bonkers.png.png HTTP/1.1" 200 400 0.004539
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_195_cat-bonkers.png.png HTTP/1.1" 200 395 0.007993
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_196_cat-bonkers.png.png HTTP/1.1" 200 407 0.003510
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_192_cat-bonkers.png.png HTTP/1.1" 200 395 0.008867
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_199_cat-bonkers.png.png HTTP/1.1" 200 402 0.004332
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_200_cat-bonkers.png.png HTTP/1.1" 200 431 0.004140
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_205_cat-bonkers.png.png HTTP/1.1" 200 411 0.007140
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_201_cat-bonkers.png.png HTTP/1.1" 200 401 0.003398
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_202_cat-bonkers.png.png HTTP/1.1" 200 444 0.005185
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_197_cat-bonkers.png.png HTTP/1.1" 200 407 0.004702
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_204_cat-bonkers.png.png HTTP/1.1" 200 400 0.007346
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_206_cat-bonkers.png.png HTTP/1.1" 200 394 0.004079
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_207_cat-bonkers.png.png HTTP/1.1" 200 399 0.008965
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_208_cat-bonkers.png.png HTTP/1.1" 200 390 0.002939
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_203_cat-bonkers.png.png HTTP/1.1" 200 398 0.003827
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_210_cat-bonkers.png.png HTTP/1.1" 200 390 0.006583
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_211_cat-bonkers.png.png HTTP/1.1" 200 456 0.004020
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_212_cat-bonkers.png.png HTTP/1.1" 200 437 0.006107
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_213_cat-bonkers.png.png HTTP/1.1" 200 445 0.003352
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_218_cat-bonkers.png.png HTTP/1.1" 200 401 0.009759
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_209_cat-bonkers.png.png HTTP/1.1" 200 466 0.004865
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_215_cat-bonkers.png.png HTTP/1.1" 200 473 0.008816
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_221_cat-bonkers.png.png HTTP/1.1" 200 411 0.004753
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_216_cat-bonkers.png.png HTTP/1.1" 200 471 0.007574
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_217_cat-bonkers.png.png HTTP/1.1" 200 389 0.013230
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_224_cat-bonkers.png.png HTTP/1.1" 200 427 0.008487
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_225_cat-bonkers.png.png HTTP/1.1" 200 407 0.007814
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_219_cat-bonkers.png.png HTTP/1.1" 200 412 0.004921
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_214_cat-bonkers.png.png HTTP/1.1" 200 470 0.006676
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_222_cat-bonkers.png.png HTTP/1.1" 200 414 0.008053
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_223_cat-bonkers.png.png HTTP/1.1" 200 445 0.006542
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_226_cat-bonkers.png.png HTTP/1.1" 200 415 0.004333
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_227_cat-bonkers.png.png HTTP/1.1" 200 453 0.008171
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_220_cat-bonkers.png.png HTTP/1.1" 200 403 0.007929
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_233_cat-bonkers.png.png HTTP/1.1" 200 415 0.006181
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_229_cat-bonkers.png.png HTTP/1.1" 200 545 0.002213
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_230_cat-bonkers.png.png HTTP/1.1" 200 483 0.004224
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_231_cat-bonkers.png.png HTTP/1.1" 200 470 0.008712
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_237_cat-bonkers.png.png HTTP/1.1" 200 415 0.003713
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_238_cat-bonkers.png.png HTTP/1.1" 200 481 0.003987
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_232_cat-bonkers.png.png HTTP/1.1" 200 398 0.003649
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_228_cat-bonkers.png.png HTTP/1.1" 200 449 0.007709
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_235_cat-bonkers.png.png HTTP/1.1" 200 413 0.004234
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_236_cat-bonkers.png.png HTTP/1.1" 200 454 0.007325
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_239_cat-bonkers.png.png HTTP/1.1" 200 425 0.003482
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_240_cat-bonkers.png.png HTTP/1.1" 200 415 0.006681
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_234_cat-bonkers.png.png HTTP/1.1" 200 459 0.003825
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_242_cat-bonkers.png.png HTTP/1.1" 200 413 0.002875
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_243_cat-bonkers.png.png HTTP/1.1" 200 427 0.014745
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_248_cat-bonkers.png.png HTTP/1.1" 200 419 0.004180
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_244_cat-bonkers.png.png HTTP/1.1" 200 423 0.005951
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_245_cat-bonkers.png.png HTTP/1.1" 200 426 0.005421
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_251_cat-bonkers.png.png HTTP/1.1" 200 390 0.007295
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_241_cat-bonkers.png.png HTTP/1.1" 200 390 0.009833
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_247_cat-bonkers.png.png HTTP/1.1" 200 390 0.005013
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_249_cat-bonkers.png.png HTTP/1.1" 200 405 0.004196
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_250_cat-bonkers.png.png HTTP/1.1" 200 392 0.003612
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_252_cat-bonkers.png.png HTTP/1.1" 200 448 0.008242
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_246_cat-bonkers.png.png HTTP/1.1" 200 408 0.005103
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_254_cat-bonkers.png.png HTTP/1.1" 200 464 0.004879
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_255_cat-bonkers.png.png HTTP/1.1" 200 477 0.003509
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_256_cat-bonkers.png.png HTTP/1.1" 200 446 0.009782
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_257_cat-bonkers.png.png HTTP/1.1" 200 418 0.003984
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_253_cat-bonkers.png.png HTTP/1.1" 200 407 0.004351
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_259_cat-bonkers.png.png HTTP/1.1" 200 426 0.005416
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_260_cat-bonkers.png.png HTTP/1.1" 200 389 0.004722
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_261_cat-bonkers.png.png HTTP/1.1" 200 399 0.005742
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_262_cat-bonkers.png.png HTTP/1.1" 200 402 0.004926
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_258_cat-bonkers.png.png HTTP/1.1" 200 463 0.006279
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_264_cat-bonkers.png.png HTTP/1.1" 200 390 0.005421
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_265_cat-bonkers.png.png HTTP/1.1" 200 403 0.004248
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_270_cat-bonkers.png.png HTTP/1.1" 200 412 0.007458
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_266_cat-bonkers.png.png HTTP/1.1" 200 411 0.002750
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_267_cat-bonkers.png.png HTTP/1.1" 200 401 0.008097
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_273_cat-bonkers.png.png HTTP/1.1" 200 390 0.007923
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_263_cat-bonkers.png.png HTTP/1.1" 200 498 0.009639
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_269_cat-bonkers.png.png HTTP/1.1" 200 396 0.004306
::1 - - [2017-09-28 20:43:10] "GET /temp-file/block5_conv3_271_cat-bonkers.png.png HTTP/1.1" 200 405 0.002512
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_272_cat-bonkers.png.png HTTP/1.1" 200 444 0.012572
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_278_cat-bonkers.png.png HTTP/1.1" 200 433 0.002935
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_274_cat-bonkers.png.png HTTP/1.1" 200 434 0.005510
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_268_cat-bonkers.png.png HTTP/1.1" 200 402 0.005078
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_276_cat-bonkers.png.png HTTP/1.1" 200 426 0.003375
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_277_cat-bonkers.png.png HTTP/1.1" 200 390 0.003126
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_279_cat-bonkers.png.png HTTP/1.1" 200 468 0.003436
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_280_cat-bonkers.png.png HTTP/1.1" 200 458 0.007391
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_281_cat-bonkers.png.png HTTP/1.1" 200 447 0.004237
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_275_cat-bonkers.png.png HTTP/1.1" 200 402 0.005220
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_287_cat-bonkers.png.png HTTP/1.1" 200 394 0.006479
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_282_cat-bonkers.png.png HTTP/1.1" 200 393 0.002853
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_283_cat-bonkers.png.png HTTP/1.1" 200 395 0.007331
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_284_cat-bonkers.png.png HTTP/1.1" 200 437 0.003322
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_285_cat-bonkers.png.png HTTP/1.1" 200 390 0.006303
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_286_cat-bonkers.png.png HTTP/1.1" 200 538 0.007704
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_289_cat-bonkers.png.png HTTP/1.1" 200 442 0.004537
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_290_cat-bonkers.png.png HTTP/1.1" 200 461 0.002512
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_291_cat-bonkers.png.png HTTP/1.1" 200 409 0.003076
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_292_cat-bonkers.png.png HTTP/1.1" 200 446 0.006569
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_288_cat-bonkers.png.png HTTP/1.1" 200 470 0.003443
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_294_cat-bonkers.png.png HTTP/1.1" 200 416 0.003208
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_295_cat-bonkers.png.png HTTP/1.1" 200 394 0.007952
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_296_cat-bonkers.png.png HTTP/1.1" 200 398 0.004213
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_297_cat-bonkers.png.png HTTP/1.1" 200 395 0.004441
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_302_cat-bonkers.png.png HTTP/1.1" 200 397 0.004885
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_293_cat-bonkers.png.png HTTP/1.1" 200 408 0.002914
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_299_cat-bonkers.png.png HTTP/1.1" 200 410 0.007135
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_300_cat-bonkers.png.png HTTP/1.1" 200 415 0.002531
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_301_cat-bonkers.png.png HTTP/1.1" 200 429 0.002710
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_303_cat-bonkers.png.png HTTP/1.1" 200 407 0.005550
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_298_cat-bonkers.png.png HTTP/1.1" 200 535 0.003732
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_305_cat-bonkers.png.png HTTP/1.1" 200 433 0.009897
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_306_cat-bonkers.png.png HTTP/1.1" 200 400 0.006430
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_307_cat-bonkers.png.png HTTP/1.1" 200 392 0.008066
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_308_cat-bonkers.png.png HTTP/1.1" 200 401 0.002553
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_304_cat-bonkers.png.png HTTP/1.1" 200 455 0.004121
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_310_cat-bonkers.png.png HTTP/1.1" 200 390 0.007479
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_311_cat-bonkers.png.png HTTP/1.1" 200 404 0.004754
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_312_cat-bonkers.png.png HTTP/1.1" 200 394 0.006026
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_313_cat-bonkers.png.png HTTP/1.1" 200 410 0.003755
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_309_cat-bonkers.png.png HTTP/1.1" 200 437 0.003418
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_315_cat-bonkers.png.png HTTP/1.1" 200 436 0.005396
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_316_cat-bonkers.png.png HTTP/1.1" 200 394 0.004978
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_317_cat-bonkers.png.png HTTP/1.1" 200 436 0.006422
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_318_cat-bonkers.png.png HTTP/1.1" 200 389 0.004914
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_314_cat-bonkers.png.png HTTP/1.1" 200 390 0.002652
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_320_cat-bonkers.png.png HTTP/1.1" 200 442 0.008523
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_321_cat-bonkers.png.png HTTP/1.1" 200 496 0.002427
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_322_cat-bonkers.png.png HTTP/1.1" 200 416 0.005355
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_327_cat-bonkers.png.png HTTP/1.1" 200 451 0.008784
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_323_cat-bonkers.png.png HTTP/1.1" 200 455 0.003500
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_319_cat-bonkers.png.png HTTP/1.1" 200 449 0.006449
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_330_cat-bonkers.png.png HTTP/1.1" 200 405 0.007296
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_325_cat-bonkers.png.png HTTP/1.1" 200 404 0.004516
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_326_cat-bonkers.png.png HTTP/1.1" 200 429 0.008080
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_333_cat-bonkers.png.png HTTP/1.1" 200 406 0.007546
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_328_cat-bonkers.png.png HTTP/1.1" 200 457 0.005929
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_329_cat-bonkers.png.png HTTP/1.1" 200 437 0.007780
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_336_cat-bonkers.png.png HTTP/1.1" 200 413 0.018199
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_337_cat-bonkers.png.png HTTP/1.1" 200 414 0.003839
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_324_cat-bonkers.png.png HTTP/1.1" 200 419 0.003245
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_332_cat-bonkers.png.png HTTP/1.1" 200 390 0.006616
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_334_cat-bonkers.png.png HTTP/1.1" 200 410 0.004968
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_335_cat-bonkers.png.png HTTP/1.1" 200 390 0.004026
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_338_cat-bonkers.png.png HTTP/1.1" 200 427 0.009826
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_343_cat-bonkers.png.png HTTP/1.1" 200 449 0.008852
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_331_cat-bonkers.png.png HTTP/1.1" 200 410 0.003179
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_340_cat-bonkers.png.png HTTP/1.1" 200 409 0.006220
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_341_cat-bonkers.png.png HTTP/1.1" 200 403 0.005918
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_342_cat-bonkers.png.png HTTP/1.1" 200 408 0.007738
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_344_cat-bonkers.png.png HTTP/1.1" 200 413 0.011551
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_339_cat-bonkers.png.png HTTP/1.1" 200 438 0.005678
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_350_cat-bonkers.png.png HTTP/1.1" 200 389 0.008059
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_346_cat-bonkers.png.png HTTP/1.1" 200 413 0.013533
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_352_cat-bonkers.png.png HTTP/1.1" 200 528 0.007854
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_347_cat-bonkers.png.png HTTP/1.1" 200 443 0.005076
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_348_cat-bonkers.png.png HTTP/1.1" 200 389 0.006822
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_349_cat-bonkers.png.png HTTP/1.1" 200 407 0.007192
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_345_cat-bonkers.png.png HTTP/1.1" 200 443 0.003569
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_353_cat-bonkers.png.png HTTP/1.1" 200 394 0.007472
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_358_cat-bonkers.png.png HTTP/1.1" 200 390 0.007727
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_359_cat-bonkers.png.png HTTP/1.1" 200 392 0.004926
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_354_cat-bonkers.png.png HTTP/1.1" 200 413 0.013167
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_361_cat-bonkers.png.png HTTP/1.1" 200 412 0.004996
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_355_cat-bonkers.png.png HTTP/1.1" 200 458 0.007767
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_356_cat-bonkers.png.png HTTP/1.1" 200 431 0.006695
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_351_cat-bonkers.png.png HTTP/1.1" 200 390 0.003947
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_360_cat-bonkers.png.png HTTP/1.1" 200 393 0.006865
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_362_cat-bonkers.png.png HTTP/1.1" 200 415 0.004566
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_363_cat-bonkers.png.png HTTP/1.1" 200 441 0.006020
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_364_cat-bonkers.png.png HTTP/1.1" 200 428 0.005323
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_357_cat-bonkers.png.png HTTP/1.1" 200 426 0.012546
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_370_cat-bonkers.png.png HTTP/1.1" 200 466 0.003008
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_366_cat-bonkers.png.png HTTP/1.1" 200 390 0.005757
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_367_cat-bonkers.png.png HTTP/1.1" 200 475 0.004861
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_368_cat-bonkers.png.png HTTP/1.1" 200 405 0.003229
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_369_cat-bonkers.png.png HTTP/1.1" 200 457 0.003273
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_365_cat-bonkers.png.png HTTP/1.1" 200 430 0.005239
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_372_cat-bonkers.png.png HTTP/1.1" 200 400 0.003900
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_377_cat-bonkers.png.png HTTP/1.1" 200 474 0.003769
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_373_cat-bonkers.png.png HTTP/1.1" 200 440 0.011658
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_374_cat-bonkers.png.png HTTP/1.1" 200 432 0.005557
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_375_cat-bonkers.png.png HTTP/1.1" 200 403 0.008867
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_371_cat-bonkers.png.png HTTP/1.1" 200 404 0.006272
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_378_cat-bonkers.png.png HTTP/1.1" 200 403 0.010931
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_383_cat-bonkers.png.png HTTP/1.1" 200 407 0.007787
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_379_cat-bonkers.png.png HTTP/1.1" 200 476 0.004170
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_385_cat-bonkers.png.png HTTP/1.1" 200 433 0.004702
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_380_cat-bonkers.png.png HTTP/1.1" 200 447 0.004325
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_381_cat-bonkers.png.png HTTP/1.1" 200 434 0.005682
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_376_cat-bonkers.png.png HTTP/1.1" 200 397 0.006768
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_384_cat-bonkers.png.png HTTP/1.1" 200 397 0.007224
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_386_cat-bonkers.png.png HTTP/1.1" 200 398 0.011439
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_391_cat-bonkers.png.png HTTP/1.1" 200 440 0.014750
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_387_cat-bonkers.png.png HTTP/1.1" 200 431 0.009912
::1 - - [2017-09-28 20:43:11] "GET /temp-file/block5_conv3_388_cat-bonkers.png.png HTTP/1.1" 200 408 0.003639
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_382_cat-bonkers.png.png HTTP/1.1" 200 490 0.014058
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_395_cat-bonkers.png.png HTTP/1.1" 200 400 0.008484
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_396_cat-bonkers.png.png HTTP/1.1" 200 427 0.005164
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_390_cat-bonkers.png.png HTTP/1.1" 200 403 0.008414
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_392_cat-bonkers.png.png HTTP/1.1" 200 432 0.011178
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_393_cat-bonkers.png.png HTTP/1.1" 200 389 0.004450
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_394_cat-bonkers.png.png HTTP/1.1" 200 389 0.009544
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_401_cat-bonkers.png.png HTTP/1.1" 200 390 0.010628
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_389_cat-bonkers.png.png HTTP/1.1" 200 393 0.013133
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_403_cat-bonkers.png.png HTTP/1.1" 200 390 0.012097
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_404_cat-bonkers.png.png HTTP/1.1" 200 398 0.007501
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_398_cat-bonkers.png.png HTTP/1.1" 200 462 0.006801
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_399_cat-bonkers.png.png HTTP/1.1" 200 417 0.006956
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_400_cat-bonkers.png.png HTTP/1.1" 200 395 0.004479
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_402_cat-bonkers.png.png HTTP/1.1" 200 470 0.012100
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_397_cat-bonkers.png.png HTTP/1.1" 200 489 0.009557
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_406_cat-bonkers.png.png HTTP/1.1" 200 474 0.004378
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_407_cat-bonkers.png.png HTTP/1.1" 200 487 0.010703
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_408_cat-bonkers.png.png HTTP/1.1" 200 425 0.003301
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_409_cat-bonkers.png.png HTTP/1.1" 200 398 0.008976
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_405_cat-bonkers.png.png HTTP/1.1" 200 394 0.008262
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_411_cat-bonkers.png.png HTTP/1.1" 200 390 0.005912
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_412_cat-bonkers.png.png HTTP/1.1" 200 412 0.007009
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_417_cat-bonkers.png.png HTTP/1.1" 200 469 0.004077
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_418_cat-bonkers.png.png HTTP/1.1" 200 439 0.010847
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_419_cat-bonkers.png.png HTTP/1.1" 200 390 0.007799
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_413_cat-bonkers.png.png HTTP/1.1" 200 395 0.009825
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_421_cat-bonkers.png.png HTTP/1.1" 200 408 0.007997
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_422_cat-bonkers.png.png HTTP/1.1" 200 401 0.029187
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_423_cat-bonkers.png.png HTTP/1.1" 200 404 0.005908
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_424_cat-bonkers.png.png HTTP/1.1" 200 390 0.015666
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_425_cat-bonkers.png.png HTTP/1.1" 200 465 0.014723
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_426_cat-bonkers.png.png HTTP/1.1" 200 394 0.003391
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_427_cat-bonkers.png.png HTTP/1.1" 200 510 0.011047
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_414_cat-bonkers.png.png HTTP/1.1" 200 424 0.014878
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_429_cat-bonkers.png.png HTTP/1.1" 200 390 0.006821
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_410_cat-bonkers.png.png HTTP/1.1" 200 411 0.013618
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_431_cat-bonkers.png.png HTTP/1.1" 200 425 0.007082
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_416_cat-bonkers.png.png HTTP/1.1" 200 402 0.009332
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_420_cat-bonkers.png.png HTTP/1.1" 200 459 0.015427
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_428_cat-bonkers.png.png HTTP/1.1" 200 390 0.008294
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_430_cat-bonkers.png.png HTTP/1.1" 200 402 0.014732
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_415_cat-bonkers.png.png HTTP/1.1" 200 485 0.009991
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_432_cat-bonkers.png.png HTTP/1.1" 200 390 0.014244
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_433_cat-bonkers.png.png HTTP/1.1" 200 389 0.011039
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_434_cat-bonkers.png.png HTTP/1.1" 200 453 0.011700
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_435_cat-bonkers.png.png HTTP/1.1" 200 394 0.008877
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_436_cat-bonkers.png.png HTTP/1.1" 200 437 0.004359
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_437_cat-bonkers.png.png HTTP/1.1" 200 406 0.010701
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_439_cat-bonkers.png.png HTTP/1.1" 200 440 0.008607
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_444_cat-bonkers.png.png HTTP/1.1" 200 465 0.005661
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_440_cat-bonkers.png.png HTTP/1.1" 200 432 0.008035
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_441_cat-bonkers.png.png HTTP/1.1" 200 439 0.008176
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_447_cat-bonkers.png.png HTTP/1.1" 200 398 0.009712
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_442_cat-bonkers.png.png HTTP/1.1" 200 391 0.006427
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_438_cat-bonkers.png.png HTTP/1.1" 200 395 0.003361
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_445_cat-bonkers.png.png HTTP/1.1" 200 476 0.003401
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_446_cat-bonkers.png.png HTTP/1.1" 200 469 0.008112
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_448_cat-bonkers.png.png HTTP/1.1" 200 393 0.004907
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_449_cat-bonkers.png.png HTTP/1.1" 200 435 0.004874
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_443_cat-bonkers.png.png HTTP/1.1" 200 396 0.006016
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_451_cat-bonkers.png.png HTTP/1.1" 200 396 0.004585
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_452_cat-bonkers.png.png HTTP/1.1" 200 408 0.005898
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_453_cat-bonkers.png.png HTTP/1.1" 200 398 0.013610
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_458_cat-bonkers.png.png HTTP/1.1" 200 400 0.002810
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_454_cat-bonkers.png.png HTTP/1.1" 200 448 0.006971
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_450_cat-bonkers.png.png HTTP/1.1" 200 403 0.004141
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_456_cat-bonkers.png.png HTTP/1.1" 200 402 0.005121
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_462_cat-bonkers.png.png HTTP/1.1" 200 435 0.005526
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_457_cat-bonkers.png.png HTTP/1.1" 200 408 0.004940
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_459_cat-bonkers.png.png HTTP/1.1" 200 390 0.006091
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_460_cat-bonkers.png.png HTTP/1.1" 200 390 0.010294
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_455_cat-bonkers.png.png HTTP/1.1" 200 402 0.002345
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_463_cat-bonkers.png.png HTTP/1.1" 200 411 0.003353
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_464_cat-bonkers.png.png HTTP/1.1" 200 475 0.002884
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_465_cat-bonkers.png.png HTTP/1.1" 200 416 0.003753
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_466_cat-bonkers.png.png HTTP/1.1" 200 390 0.006278
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_461_cat-bonkers.png.png HTTP/1.1" 200 394 0.009697
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_472_cat-bonkers.png.png HTTP/1.1" 200 412 0.003709
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_473_cat-bonkers.png.png HTTP/1.1" 200 419 0.005236
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_468_cat-bonkers.png.png HTTP/1.1" 200 450 0.002815
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_469_cat-bonkers.png.png HTTP/1.1" 200 428 0.016704
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_476_cat-bonkers.png.png HTTP/1.1" 200 389 0.006536
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_470_cat-bonkers.png.png HTTP/1.1" 200 389 0.002283
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_471_cat-bonkers.png.png HTTP/1.1" 200 473 0.003339
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_479_cat-bonkers.png.png HTTP/1.1" 200 389 0.003129
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_467_cat-bonkers.png.png HTTP/1.1" 200 412 0.018811
::1 - - [2017-09-28 20:43:12] "GET /temp-file/block5_conv3_475_cat-bonkers.png.png HTTP/1.1" 200 395 0.019544
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_482_cat-bonkers.png.png HTTP/1.1" 200 402 0.005524
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_477_cat-bonkers.png.png HTTP/1.1" 200 407 0.007041
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_478_cat-bonkers.png.png HTTP/1.1" 200 400 0.003487
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_480_cat-bonkers.png.png HTTP/1.1" 200 396 0.008963
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_474_cat-bonkers.png.png HTTP/1.1" 200 423 0.004541
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_483_cat-bonkers.png.png HTTP/1.1" 200 402 0.004076
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_484_cat-bonkers.png.png HTTP/1.1" 200 390 0.003784
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_485_cat-bonkers.png.png HTTP/1.1" 200 405 0.006208
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_490_cat-bonkers.png.png HTTP/1.1" 200 397 0.009647
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_486_cat-bonkers.png.png HTTP/1.1" 200 432 0.008835
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_481_cat-bonkers.png.png HTTP/1.1" 200 399 0.002263
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_488_cat-bonkers.png.png HTTP/1.1" 200 436 0.004118
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_494_cat-bonkers.png.png HTTP/1.1" 200 408 0.007457
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_489_cat-bonkers.png.png HTTP/1.1" 200 390 0.012554
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_496_cat-bonkers.png.png HTTP/1.1" 200 397 0.002867
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_491_cat-bonkers.png.png HTTP/1.1" 200 447 0.006588
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_492_cat-bonkers.png.png HTTP/1.1" 200 390 0.002992
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_487_cat-bonkers.png.png HTTP/1.1" 200 411 0.002783
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_495_cat-bonkers.png.png HTTP/1.1" 200 462 0.005939
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_497_cat-bonkers.png.png HTTP/1.1" 200 427 0.002595
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_498_cat-bonkers.png.png HTTP/1.1" 200 471 0.010412
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_499_cat-bonkers.png.png HTTP/1.1" 200 427 0.004370
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_493_cat-bonkers.png.png HTTP/1.1" 200 410 0.005021
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_501_cat-bonkers.png.png HTTP/1.1" 200 438 0.010760
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_506_cat-bonkers.png.png HTTP/1.1" 200 459 0.003561
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_502_cat-bonkers.png.png HTTP/1.1" 200 477 0.010742
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_503_cat-bonkers.png.png HTTP/1.1" 200 417 0.002197
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_504_cat-bonkers.png.png HTTP/1.1" 200 431 0.005865
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_505_cat-bonkers.png.png HTTP/1.1" 200 399 0.003122
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_500_cat-bonkers.png.png HTTP/1.1" 200 438 0.004879
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_507_cat-bonkers.png.png HTTP/1.1" 200 427 0.008979
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_508_cat-bonkers.png.png HTTP/1.1" 200 419 0.004452
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_509_cat-bonkers.png.png HTTP/1.1" 200 398 0.004481
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_510_cat-bonkers.png.png HTTP/1.1" 200 423 0.006386
::1 - - [2017-09-28 20:43:13] "GET /temp-file/block5_conv3_511_cat-bonkers.png.png HTTP/1.1" 200 415 0.004081
KeyboardInterrupt
Thu Sep 28 20:46:11 2017
---------------------------------------------------------------------------
KeyboardInterrupt                         Traceback (most recent call last)
<ipython-input-53-85b6fa938e72> in <module>()
      5 # https://github.com/keplr-io/quiver
      6 from quiver_engine import server
----> 7 server.launch(vgg16_model, input_folder='.', port=7000)
      8 
      9 # open at http://localhost:7000/

~/anaconda3/lib/python3.6/site-packages/quiver_engine/server.py in launch(model, temp_folder, input_folder, port, html_base_dir)
    159         get_app(model, html_base_dir=html_base_dir,
    160                 temp_folder=temp_folder, input_folder=input_folder),
--> 161         port
    162     )
    163 

~/anaconda3/lib/python3.6/site-packages/quiver_engine/server.py in run_app(app, port)
    143     http_server = WSGIServer(('', port), app)
    144     webbrowser.open_new('http://localhost:' + str(port))
--> 145     http_server.serve_forever()
    146 
    147 

~/anaconda3/lib/python3.6/site-packages/gevent/baseserver.py in serve_forever(self, stop_timeout)
    360             self.start()
    361         try:
--> 362             self._stop_event.wait()
    363         finally:
    364             Greenlet.spawn(self.stop, timeout=stop_timeout).join()

~/anaconda3/lib/python3.6/site-packages/gevent/event.py in wait(self, timeout)
    217             noticeable when the *timeout* is present.
    218         """
--> 219         return self._wait(timeout)
    220 
    221     def _reset_internal_locks(self): # pragma: no cover

~/anaconda3/lib/python3.6/site-packages/gevent/event.py in _wait(self, timeout)
    127             return self._wait_return_value(False, False)
    128 
--> 129         gotit = self._wait_core(timeout)
    130         return self._wait_return_value(True, gotit)
    131 

~/anaconda3/lib/python3.6/site-packages/gevent/event.py in _wait_core(self, timeout, catch)
    104             try:
    105                 try:
--> 106                     result = self.hub.switch()
    107                     if result is not self: # pragma: no cover
    108                         raise InvalidSwitchError('Invalid switch into Event.wait(): %r' % (result, ))

~/anaconda3/lib/python3.6/site-packages/gevent/hub.py in switch(self)
    628         if switch_out is not None:
    629             switch_out()
--> 630         return RawGreenlet.switch(self)
    631 
    632     def switch_out(self):

KeyboardInterrupt: 

In [49]:
from keras.applications.resnet50 import ResNet50
from keras.preprocessing import image
from keras.applications.resnet50 import preprocess_input, decode_predictions
import numpy as np

resnet_model = ResNet50(weights='imagenet')

In [50]:
resnet_model.summary()


____________________________________________________________________________________________________
Layer (type)                     Output Shape          Param #     Connected to                     
====================================================================================================
input_6 (InputLayer)             (None, 224, 224, 3)   0                                            
____________________________________________________________________________________________________
conv1 (Conv2D)                   (None, 112, 112, 64)  9472        input_6[0][0]                    
____________________________________________________________________________________________________
bn_conv1 (BatchNormalization)    (None, 112, 112, 64)  256         conv1[0][0]                      
____________________________________________________________________________________________________
activation_50 (Activation)       (None, 112, 112, 64)  0           bn_conv1[0][0]                   
____________________________________________________________________________________________________
max_pooling2d_2 (MaxPooling2D)   (None, 55, 55, 64)    0           activation_50[0][0]              
____________________________________________________________________________________________________
res2a_branch2a (Conv2D)          (None, 55, 55, 64)    4160        max_pooling2d_2[0][0]            
____________________________________________________________________________________________________
bn2a_branch2a (BatchNormalizatio (None, 55, 55, 64)    256         res2a_branch2a[0][0]             
____________________________________________________________________________________________________
activation_51 (Activation)       (None, 55, 55, 64)    0           bn2a_branch2a[0][0]              
____________________________________________________________________________________________________
res2a_branch2b (Conv2D)          (None, 55, 55, 64)    36928       activation_51[0][0]              
____________________________________________________________________________________________________
bn2a_branch2b (BatchNormalizatio (None, 55, 55, 64)    256         res2a_branch2b[0][0]             
____________________________________________________________________________________________________
activation_52 (Activation)       (None, 55, 55, 64)    0           bn2a_branch2b[0][0]              
____________________________________________________________________________________________________
res2a_branch2c (Conv2D)          (None, 55, 55, 256)   16640       activation_52[0][0]              
____________________________________________________________________________________________________
res2a_branch1 (Conv2D)           (None, 55, 55, 256)   16640       max_pooling2d_2[0][0]            
____________________________________________________________________________________________________
bn2a_branch2c (BatchNormalizatio (None, 55, 55, 256)   1024        res2a_branch2c[0][0]             
____________________________________________________________________________________________________
bn2a_branch1 (BatchNormalization (None, 55, 55, 256)   1024        res2a_branch1[0][0]              
____________________________________________________________________________________________________
add_17 (Add)                     (None, 55, 55, 256)   0           bn2a_branch2c[0][0]              
                                                                   bn2a_branch1[0][0]               
____________________________________________________________________________________________________
activation_53 (Activation)       (None, 55, 55, 256)   0           add_17[0][0]                     
____________________________________________________________________________________________________
res2b_branch2a (Conv2D)          (None, 55, 55, 64)    16448       activation_53[0][0]              
____________________________________________________________________________________________________
bn2b_branch2a (BatchNormalizatio (None, 55, 55, 64)    256         res2b_branch2a[0][0]             
____________________________________________________________________________________________________
activation_54 (Activation)       (None, 55, 55, 64)    0           bn2b_branch2a[0][0]              
____________________________________________________________________________________________________
res2b_branch2b (Conv2D)          (None, 55, 55, 64)    36928       activation_54[0][0]              
____________________________________________________________________________________________________
bn2b_branch2b (BatchNormalizatio (None, 55, 55, 64)    256         res2b_branch2b[0][0]             
____________________________________________________________________________________________________
activation_55 (Activation)       (None, 55, 55, 64)    0           bn2b_branch2b[0][0]              
____________________________________________________________________________________________________
res2b_branch2c (Conv2D)          (None, 55, 55, 256)   16640       activation_55[0][0]              
____________________________________________________________________________________________________
bn2b_branch2c (BatchNormalizatio (None, 55, 55, 256)   1024        res2b_branch2c[0][0]             
____________________________________________________________________________________________________
add_18 (Add)                     (None, 55, 55, 256)   0           bn2b_branch2c[0][0]              
                                                                   activation_53[0][0]              
____________________________________________________________________________________________________
activation_56 (Activation)       (None, 55, 55, 256)   0           add_18[0][0]                     
____________________________________________________________________________________________________
res2c_branch2a (Conv2D)          (None, 55, 55, 64)    16448       activation_56[0][0]              
____________________________________________________________________________________________________
bn2c_branch2a (BatchNormalizatio (None, 55, 55, 64)    256         res2c_branch2a[0][0]             
____________________________________________________________________________________________________
activation_57 (Activation)       (None, 55, 55, 64)    0           bn2c_branch2a[0][0]              
____________________________________________________________________________________________________
res2c_branch2b (Conv2D)          (None, 55, 55, 64)    36928       activation_57[0][0]              
____________________________________________________________________________________________________
bn2c_branch2b (BatchNormalizatio (None, 55, 55, 64)    256         res2c_branch2b[0][0]             
____________________________________________________________________________________________________
activation_58 (Activation)       (None, 55, 55, 64)    0           bn2c_branch2b[0][0]              
____________________________________________________________________________________________________
res2c_branch2c (Conv2D)          (None, 55, 55, 256)   16640       activation_58[0][0]              
____________________________________________________________________________________________________
bn2c_branch2c (BatchNormalizatio (None, 55, 55, 256)   1024        res2c_branch2c[0][0]             
____________________________________________________________________________________________________
add_19 (Add)                     (None, 55, 55, 256)   0           bn2c_branch2c[0][0]              
                                                                   activation_56[0][0]              
____________________________________________________________________________________________________
activation_59 (Activation)       (None, 55, 55, 256)   0           add_19[0][0]                     
____________________________________________________________________________________________________
res3a_branch2a (Conv2D)          (None, 28, 28, 128)   32896       activation_59[0][0]              
____________________________________________________________________________________________________
bn3a_branch2a (BatchNormalizatio (None, 28, 28, 128)   512         res3a_branch2a[0][0]             
____________________________________________________________________________________________________
activation_60 (Activation)       (None, 28, 28, 128)   0           bn3a_branch2a[0][0]              
____________________________________________________________________________________________________
res3a_branch2b (Conv2D)          (None, 28, 28, 128)   147584      activation_60[0][0]              
____________________________________________________________________________________________________
bn3a_branch2b (BatchNormalizatio (None, 28, 28, 128)   512         res3a_branch2b[0][0]             
____________________________________________________________________________________________________
activation_61 (Activation)       (None, 28, 28, 128)   0           bn3a_branch2b[0][0]              
____________________________________________________________________________________________________
res3a_branch2c (Conv2D)          (None, 28, 28, 512)   66048       activation_61[0][0]              
____________________________________________________________________________________________________
res3a_branch1 (Conv2D)           (None, 28, 28, 512)   131584      activation_59[0][0]              
____________________________________________________________________________________________________
bn3a_branch2c (BatchNormalizatio (None, 28, 28, 512)   2048        res3a_branch2c[0][0]             
____________________________________________________________________________________________________
bn3a_branch1 (BatchNormalization (None, 28, 28, 512)   2048        res3a_branch1[0][0]              
____________________________________________________________________________________________________
add_20 (Add)                     (None, 28, 28, 512)   0           bn3a_branch2c[0][0]              
                                                                   bn3a_branch1[0][0]               
____________________________________________________________________________________________________
activation_62 (Activation)       (None, 28, 28, 512)   0           add_20[0][0]                     
____________________________________________________________________________________________________
res3b_branch2a (Conv2D)          (None, 28, 28, 128)   65664       activation_62[0][0]              
____________________________________________________________________________________________________
bn3b_branch2a (BatchNormalizatio (None, 28, 28, 128)   512         res3b_branch2a[0][0]             
____________________________________________________________________________________________________
activation_63 (Activation)       (None, 28, 28, 128)   0           bn3b_branch2a[0][0]              
____________________________________________________________________________________________________
res3b_branch2b (Conv2D)          (None, 28, 28, 128)   147584      activation_63[0][0]              
____________________________________________________________________________________________________
bn3b_branch2b (BatchNormalizatio (None, 28, 28, 128)   512         res3b_branch2b[0][0]             
____________________________________________________________________________________________________
activation_64 (Activation)       (None, 28, 28, 128)   0           bn3b_branch2b[0][0]              
____________________________________________________________________________________________________
res3b_branch2c (Conv2D)          (None, 28, 28, 512)   66048       activation_64[0][0]              
____________________________________________________________________________________________________
bn3b_branch2c (BatchNormalizatio (None, 28, 28, 512)   2048        res3b_branch2c[0][0]             
____________________________________________________________________________________________________
add_21 (Add)                     (None, 28, 28, 512)   0           bn3b_branch2c[0][0]              
                                                                   activation_62[0][0]              
____________________________________________________________________________________________________
activation_65 (Activation)       (None, 28, 28, 512)   0           add_21[0][0]                     
____________________________________________________________________________________________________
res3c_branch2a (Conv2D)          (None, 28, 28, 128)   65664       activation_65[0][0]              
____________________________________________________________________________________________________
bn3c_branch2a (BatchNormalizatio (None, 28, 28, 128)   512         res3c_branch2a[0][0]             
____________________________________________________________________________________________________
activation_66 (Activation)       (None, 28, 28, 128)   0           bn3c_branch2a[0][0]              
____________________________________________________________________________________________________
res3c_branch2b (Conv2D)          (None, 28, 28, 128)   147584      activation_66[0][0]              
____________________________________________________________________________________________________
bn3c_branch2b (BatchNormalizatio (None, 28, 28, 128)   512         res3c_branch2b[0][0]             
____________________________________________________________________________________________________
activation_67 (Activation)       (None, 28, 28, 128)   0           bn3c_branch2b[0][0]              
____________________________________________________________________________________________________
res3c_branch2c (Conv2D)          (None, 28, 28, 512)   66048       activation_67[0][0]              
____________________________________________________________________________________________________
bn3c_branch2c (BatchNormalizatio (None, 28, 28, 512)   2048        res3c_branch2c[0][0]             
____________________________________________________________________________________________________
add_22 (Add)                     (None, 28, 28, 512)   0           bn3c_branch2c[0][0]              
                                                                   activation_65[0][0]              
____________________________________________________________________________________________________
activation_68 (Activation)       (None, 28, 28, 512)   0           add_22[0][0]                     
____________________________________________________________________________________________________
res3d_branch2a (Conv2D)          (None, 28, 28, 128)   65664       activation_68[0][0]              
____________________________________________________________________________________________________
bn3d_branch2a (BatchNormalizatio (None, 28, 28, 128)   512         res3d_branch2a[0][0]             
____________________________________________________________________________________________________
activation_69 (Activation)       (None, 28, 28, 128)   0           bn3d_branch2a[0][0]              
____________________________________________________________________________________________________
res3d_branch2b (Conv2D)          (None, 28, 28, 128)   147584      activation_69[0][0]              
____________________________________________________________________________________________________
bn3d_branch2b (BatchNormalizatio (None, 28, 28, 128)   512         res3d_branch2b[0][0]             
____________________________________________________________________________________________________
activation_70 (Activation)       (None, 28, 28, 128)   0           bn3d_branch2b[0][0]              
____________________________________________________________________________________________________
res3d_branch2c (Conv2D)          (None, 28, 28, 512)   66048       activation_70[0][0]              
____________________________________________________________________________________________________
bn3d_branch2c (BatchNormalizatio (None, 28, 28, 512)   2048        res3d_branch2c[0][0]             
____________________________________________________________________________________________________
add_23 (Add)                     (None, 28, 28, 512)   0           bn3d_branch2c[0][0]              
                                                                   activation_68[0][0]              
____________________________________________________________________________________________________
activation_71 (Activation)       (None, 28, 28, 512)   0           add_23[0][0]                     
____________________________________________________________________________________________________
res4a_branch2a (Conv2D)          (None, 14, 14, 256)   131328      activation_71[0][0]              
____________________________________________________________________________________________________
bn4a_branch2a (BatchNormalizatio (None, 14, 14, 256)   1024        res4a_branch2a[0][0]             
____________________________________________________________________________________________________
activation_72 (Activation)       (None, 14, 14, 256)   0           bn4a_branch2a[0][0]              
____________________________________________________________________________________________________
res4a_branch2b (Conv2D)          (None, 14, 14, 256)   590080      activation_72[0][0]              
____________________________________________________________________________________________________
bn4a_branch2b (BatchNormalizatio (None, 14, 14, 256)   1024        res4a_branch2b[0][0]             
____________________________________________________________________________________________________
activation_73 (Activation)       (None, 14, 14, 256)   0           bn4a_branch2b[0][0]              
____________________________________________________________________________________________________
res4a_branch2c (Conv2D)          (None, 14, 14, 1024)  263168      activation_73[0][0]              
____________________________________________________________________________________________________
res4a_branch1 (Conv2D)           (None, 14, 14, 1024)  525312      activation_71[0][0]              
____________________________________________________________________________________________________
bn4a_branch2c (BatchNormalizatio (None, 14, 14, 1024)  4096        res4a_branch2c[0][0]             
____________________________________________________________________________________________________
bn4a_branch1 (BatchNormalization (None, 14, 14, 1024)  4096        res4a_branch1[0][0]              
____________________________________________________________________________________________________
add_24 (Add)                     (None, 14, 14, 1024)  0           bn4a_branch2c[0][0]              
                                                                   bn4a_branch1[0][0]               
____________________________________________________________________________________________________
activation_74 (Activation)       (None, 14, 14, 1024)  0           add_24[0][0]                     
____________________________________________________________________________________________________
res4b_branch2a (Conv2D)          (None, 14, 14, 256)   262400      activation_74[0][0]              
____________________________________________________________________________________________________
bn4b_branch2a (BatchNormalizatio (None, 14, 14, 256)   1024        res4b_branch2a[0][0]             
____________________________________________________________________________________________________
activation_75 (Activation)       (None, 14, 14, 256)   0           bn4b_branch2a[0][0]              
____________________________________________________________________________________________________
res4b_branch2b (Conv2D)          (None, 14, 14, 256)   590080      activation_75[0][0]              
____________________________________________________________________________________________________
bn4b_branch2b (BatchNormalizatio (None, 14, 14, 256)   1024        res4b_branch2b[0][0]             
____________________________________________________________________________________________________
activation_76 (Activation)       (None, 14, 14, 256)   0           bn4b_branch2b[0][0]              
____________________________________________________________________________________________________
res4b_branch2c (Conv2D)          (None, 14, 14, 1024)  263168      activation_76[0][0]              
____________________________________________________________________________________________________
bn4b_branch2c (BatchNormalizatio (None, 14, 14, 1024)  4096        res4b_branch2c[0][0]             
____________________________________________________________________________________________________
add_25 (Add)                     (None, 14, 14, 1024)  0           bn4b_branch2c[0][0]              
                                                                   activation_74[0][0]              
____________________________________________________________________________________________________
activation_77 (Activation)       (None, 14, 14, 1024)  0           add_25[0][0]                     
____________________________________________________________________________________________________
res4c_branch2a (Conv2D)          (None, 14, 14, 256)   262400      activation_77[0][0]              
____________________________________________________________________________________________________
bn4c_branch2a (BatchNormalizatio (None, 14, 14, 256)   1024        res4c_branch2a[0][0]             
____________________________________________________________________________________________________
activation_78 (Activation)       (None, 14, 14, 256)   0           bn4c_branch2a[0][0]              
____________________________________________________________________________________________________
res4c_branch2b (Conv2D)          (None, 14, 14, 256)   590080      activation_78[0][0]              
____________________________________________________________________________________________________
bn4c_branch2b (BatchNormalizatio (None, 14, 14, 256)   1024        res4c_branch2b[0][0]             
____________________________________________________________________________________________________
activation_79 (Activation)       (None, 14, 14, 256)   0           bn4c_branch2b[0][0]              
____________________________________________________________________________________________________
res4c_branch2c (Conv2D)          (None, 14, 14, 1024)  263168      activation_79[0][0]              
____________________________________________________________________________________________________
bn4c_branch2c (BatchNormalizatio (None, 14, 14, 1024)  4096        res4c_branch2c[0][0]             
____________________________________________________________________________________________________
add_26 (Add)                     (None, 14, 14, 1024)  0           bn4c_branch2c[0][0]              
                                                                   activation_77[0][0]              
____________________________________________________________________________________________________
activation_80 (Activation)       (None, 14, 14, 1024)  0           add_26[0][0]                     
____________________________________________________________________________________________________
res4d_branch2a (Conv2D)          (None, 14, 14, 256)   262400      activation_80[0][0]              
____________________________________________________________________________________________________
bn4d_branch2a (BatchNormalizatio (None, 14, 14, 256)   1024        res4d_branch2a[0][0]             
____________________________________________________________________________________________________
activation_81 (Activation)       (None, 14, 14, 256)   0           bn4d_branch2a[0][0]              
____________________________________________________________________________________________________
res4d_branch2b (Conv2D)          (None, 14, 14, 256)   590080      activation_81[0][0]              
____________________________________________________________________________________________________
bn4d_branch2b (BatchNormalizatio (None, 14, 14, 256)   1024        res4d_branch2b[0][0]             
____________________________________________________________________________________________________
activation_82 (Activation)       (None, 14, 14, 256)   0           bn4d_branch2b[0][0]              
____________________________________________________________________________________________________
res4d_branch2c (Conv2D)          (None, 14, 14, 1024)  263168      activation_82[0][0]              
____________________________________________________________________________________________________
bn4d_branch2c (BatchNormalizatio (None, 14, 14, 1024)  4096        res4d_branch2c[0][0]             
____________________________________________________________________________________________________
add_27 (Add)                     (None, 14, 14, 1024)  0           bn4d_branch2c[0][0]              
                                                                   activation_80[0][0]              
____________________________________________________________________________________________________
activation_83 (Activation)       (None, 14, 14, 1024)  0           add_27[0][0]                     
____________________________________________________________________________________________________
res4e_branch2a (Conv2D)          (None, 14, 14, 256)   262400      activation_83[0][0]              
____________________________________________________________________________________________________
bn4e_branch2a (BatchNormalizatio (None, 14, 14, 256)   1024        res4e_branch2a[0][0]             
____________________________________________________________________________________________________
activation_84 (Activation)       (None, 14, 14, 256)   0           bn4e_branch2a[0][0]              
____________________________________________________________________________________________________
res4e_branch2b (Conv2D)          (None, 14, 14, 256)   590080      activation_84[0][0]              
____________________________________________________________________________________________________
bn4e_branch2b (BatchNormalizatio (None, 14, 14, 256)   1024        res4e_branch2b[0][0]             
____________________________________________________________________________________________________
activation_85 (Activation)       (None, 14, 14, 256)   0           bn4e_branch2b[0][0]              
____________________________________________________________________________________________________
res4e_branch2c (Conv2D)          (None, 14, 14, 1024)  263168      activation_85[0][0]              
____________________________________________________________________________________________________
bn4e_branch2c (BatchNormalizatio (None, 14, 14, 1024)  4096        res4e_branch2c[0][0]             
____________________________________________________________________________________________________
add_28 (Add)                     (None, 14, 14, 1024)  0           bn4e_branch2c[0][0]              
                                                                   activation_83[0][0]              
____________________________________________________________________________________________________
activation_86 (Activation)       (None, 14, 14, 1024)  0           add_28[0][0]                     
____________________________________________________________________________________________________
res4f_branch2a (Conv2D)          (None, 14, 14, 256)   262400      activation_86[0][0]              
____________________________________________________________________________________________________
bn4f_branch2a (BatchNormalizatio (None, 14, 14, 256)   1024        res4f_branch2a[0][0]             
____________________________________________________________________________________________________
activation_87 (Activation)       (None, 14, 14, 256)   0           bn4f_branch2a[0][0]              
____________________________________________________________________________________________________
res4f_branch2b (Conv2D)          (None, 14, 14, 256)   590080      activation_87[0][0]              
____________________________________________________________________________________________________
bn4f_branch2b (BatchNormalizatio (None, 14, 14, 256)   1024        res4f_branch2b[0][0]             
____________________________________________________________________________________________________
activation_88 (Activation)       (None, 14, 14, 256)   0           bn4f_branch2b[0][0]              
____________________________________________________________________________________________________
res4f_branch2c (Conv2D)          (None, 14, 14, 1024)  263168      activation_88[0][0]              
____________________________________________________________________________________________________
bn4f_branch2c (BatchNormalizatio (None, 14, 14, 1024)  4096        res4f_branch2c[0][0]             
____________________________________________________________________________________________________
add_29 (Add)                     (None, 14, 14, 1024)  0           bn4f_branch2c[0][0]              
                                                                   activation_86[0][0]              
____________________________________________________________________________________________________
activation_89 (Activation)       (None, 14, 14, 1024)  0           add_29[0][0]                     
____________________________________________________________________________________________________
res5a_branch2a (Conv2D)          (None, 7, 7, 512)     524800      activation_89[0][0]              
____________________________________________________________________________________________________
bn5a_branch2a (BatchNormalizatio (None, 7, 7, 512)     2048        res5a_branch2a[0][0]             
____________________________________________________________________________________________________
activation_90 (Activation)       (None, 7, 7, 512)     0           bn5a_branch2a[0][0]              
____________________________________________________________________________________________________
res5a_branch2b (Conv2D)          (None, 7, 7, 512)     2359808     activation_90[0][0]              
____________________________________________________________________________________________________
bn5a_branch2b (BatchNormalizatio (None, 7, 7, 512)     2048        res5a_branch2b[0][0]             
____________________________________________________________________________________________________
activation_91 (Activation)       (None, 7, 7, 512)     0           bn5a_branch2b[0][0]              
____________________________________________________________________________________________________
res5a_branch2c (Conv2D)          (None, 7, 7, 2048)    1050624     activation_91[0][0]              
____________________________________________________________________________________________________
res5a_branch1 (Conv2D)           (None, 7, 7, 2048)    2099200     activation_89[0][0]              
____________________________________________________________________________________________________
bn5a_branch2c (BatchNormalizatio (None, 7, 7, 2048)    8192        res5a_branch2c[0][0]             
____________________________________________________________________________________________________
bn5a_branch1 (BatchNormalization (None, 7, 7, 2048)    8192        res5a_branch1[0][0]              
____________________________________________________________________________________________________
add_30 (Add)                     (None, 7, 7, 2048)    0           bn5a_branch2c[0][0]              
                                                                   bn5a_branch1[0][0]               
____________________________________________________________________________________________________
activation_92 (Activation)       (None, 7, 7, 2048)    0           add_30[0][0]                     
____________________________________________________________________________________________________
res5b_branch2a (Conv2D)          (None, 7, 7, 512)     1049088     activation_92[0][0]              
____________________________________________________________________________________________________
bn5b_branch2a (BatchNormalizatio (None, 7, 7, 512)     2048        res5b_branch2a[0][0]             
____________________________________________________________________________________________________
activation_93 (Activation)       (None, 7, 7, 512)     0           bn5b_branch2a[0][0]              
____________________________________________________________________________________________________
res5b_branch2b (Conv2D)          (None, 7, 7, 512)     2359808     activation_93[0][0]              
____________________________________________________________________________________________________
bn5b_branch2b (BatchNormalizatio (None, 7, 7, 512)     2048        res5b_branch2b[0][0]             
____________________________________________________________________________________________________
activation_94 (Activation)       (None, 7, 7, 512)     0           bn5b_branch2b[0][0]              
____________________________________________________________________________________________________
res5b_branch2c (Conv2D)          (None, 7, 7, 2048)    1050624     activation_94[0][0]              
____________________________________________________________________________________________________
bn5b_branch2c (BatchNormalizatio (None, 7, 7, 2048)    8192        res5b_branch2c[0][0]             
____________________________________________________________________________________________________
add_31 (Add)                     (None, 7, 7, 2048)    0           bn5b_branch2c[0][0]              
                                                                   activation_92[0][0]              
____________________________________________________________________________________________________
activation_95 (Activation)       (None, 7, 7, 2048)    0           add_31[0][0]                     
____________________________________________________________________________________________________
res5c_branch2a (Conv2D)          (None, 7, 7, 512)     1049088     activation_95[0][0]              
____________________________________________________________________________________________________
bn5c_branch2a (BatchNormalizatio (None, 7, 7, 512)     2048        res5c_branch2a[0][0]             
____________________________________________________________________________________________________
activation_96 (Activation)       (None, 7, 7, 512)     0           bn5c_branch2a[0][0]              
____________________________________________________________________________________________________
res5c_branch2b (Conv2D)          (None, 7, 7, 512)     2359808     activation_96[0][0]              
____________________________________________________________________________________________________
bn5c_branch2b (BatchNormalizatio (None, 7, 7, 512)     2048        res5c_branch2b[0][0]             
____________________________________________________________________________________________________
activation_97 (Activation)       (None, 7, 7, 512)     0           bn5c_branch2b[0][0]              
____________________________________________________________________________________________________
res5c_branch2c (Conv2D)          (None, 7, 7, 2048)    1050624     activation_97[0][0]              
____________________________________________________________________________________________________
bn5c_branch2c (BatchNormalizatio (None, 7, 7, 2048)    8192        res5c_branch2c[0][0]             
____________________________________________________________________________________________________
add_32 (Add)                     (None, 7, 7, 2048)    0           bn5c_branch2c[0][0]              
                                                                   activation_95[0][0]              
____________________________________________________________________________________________________
activation_98 (Activation)       (None, 7, 7, 2048)    0           add_32[0][0]                     
____________________________________________________________________________________________________
avg_pool (AveragePooling2D)      (None, 1, 1, 2048)    0           activation_98[0][0]              
____________________________________________________________________________________________________
flatten_2 (Flatten)              (None, 2048)          0           avg_pool[0][0]                   
____________________________________________________________________________________________________
fc1000 (Dense)                   (None, 1000)          2049000     flatten_2[0][0]                  
====================================================================================================
Total params: 25,636,712
Trainable params: 25,583,592
Non-trainable params: 53,120
____________________________________________________________________________________________________

In [51]:
predict(model = resnet_model, img_path = 'cat-bonkers.png')


Predicted: [('n02124075', 'Egyptian_cat', 0.84642726), ('n02123045', 'tabby', 0.11844059), ('n02123159', 'tiger_cat', 0.032821048)]

In [19]:
predict(model = resnet_model, img_path = 'Michigan-MSU-raschka.jpg')


Predicted: [('n02356798', 'fox_squirrel', 0.99944216), ('n02361337', 'marmot', 0.00048720645), ('n02120505', 'grey_fox', 2.5803765e-05)]

In [18]:
predict(model = resnet_model, img_path = 'Black_New_York_stuy_town_squirrel_amanda_ernlund.jpeg')


Predicted: [('n02096177', 'cairn', 0.24615261), ('n02487347', 'macaque', 0.094039716), ('n02112018', 'Pomeranian', 0.087077923)]

In [17]:
predict(model = resnet_model, img_path = 'london.jpg')


Predicted: [('n02356798', 'fox_squirrel', 0.41871732), ('n03223299', 'doormat', 0.19806233), ('n02321529', 'sea_cucumber', 0.056219026)]

Hands-On 1 (CNN Overview)

Experiment with all Kinds of Layers: https://transcranial.github.io/keras-js/#/mnist-cnn

  • Try to fool the network by incrementally drawing ambiguous digits

Side Node: Keras.js makes all Keras Models available in the Browser



Hands-On 2 (Filter Kernel Details)

Try out Filter Kernels: http://setosa.io/ev/image-kernels/



In [ ]: