-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy path2-identity_block.py
executable file
·25 lines (22 loc) · 1.03 KB
/
2-identity_block.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/usr/bin/env python3
"""Function that builds an identity block as described
in Deep Residual Learning for Image Recognition (2015)"""
import tensorflow.keras as K
def identity_block(A_prev, filters):
"""Function that builds an identity block as described
in Deep Residual Learning for Image Recognition (2015)"""
shortcut = A_prev
X = K.layers.Conv2D(filters[0], kernel_size=(1, 1), padding='same',
kernel_initializer='he_normal')(A_prev)
X = K.layers.BatchNormalization(axis=3)(X)
X = K.layers.Activation('relu')(X)
X = K.layers.Conv2D(filters[1], kernel_size=(3, 3), padding='same',
kernel_initializer='he_normal')(X)
X = K.layers.BatchNormalization(axis=3)(X)
X = K.layers.Activation('relu')(X)
X = K.layers.Conv2D(filters[2], kernel_size=(1, 1), padding='same',
kernel_initializer='he_normal')(X)
X = K.layers.BatchNormalization(axis=3)(X)
X = K.layers.Add()([X, shortcut])
X = K.layers.Activation('relu')(X)
return X