@@ 321-335 (lines=15) @@ | ||
318 | x = layers.BatchNormalization(axis=bn_axis, name=name + 'bn')(x) |
|
319 | x = layers.Activation(activation_fn, name=name + 'activation')(x) |
|
320 | ||
321 | if 0 < se_ratio <= 1: |
|
322 | filters_se = max(1, int(filters_in * se_ratio)) |
|
323 | se = layers.GlobalAveragePooling3D(name=name + 'se_squeeze')(x) |
|
324 | se = layers.Reshape((1, 1, 1, filters), name=name + 'se_reshape')(se) |
|
325 | se = layers.Conv3D(filters_se, 1, |
|
326 | padding='same', |
|
327 | activation=activation_fn, |
|
328 | # kernel_initializer=CONV_KERNEL_INITIALIZER, |
|
329 | name=name + 'se_reduce')(se) |
|
330 | se = layers.Conv3D(filters, 1, |
|
331 | padding='same', |
|
332 | activation='sigmoid', |
|
333 | # kernel_initializer=CONV_KERNEL_INITIALIZER, |
|
334 | name=name + 'se_expand')(se) |
|
335 | x = layers.multiply([x, se], name=name + 'se_excite') |
|
336 | ||
337 | x = layers.Conv3D(filters_out, 1, |
|
338 | padding='same', |
@@ 552-564 (lines=13) @@ | ||
549 | else: |
|
550 | x = inputs |
|
551 | ||
552 | if 0 < se_ratio <= 1: |
|
553 | filters_se = max(1, int(filters_in * se_ratio)) |
|
554 | se = layers.GlobalAveragePooling3D(name=name + 'se_squeeze')(x) |
|
555 | se = layers.Reshape((1, 1, 1, filters), name=name + 'se_reshape')(se) |
|
556 | se = layers.Conv3D(filters_se, 1, |
|
557 | padding='same', |
|
558 | activation=activation_fn, |
|
559 | name=name + 'se_reduce')(se) |
|
560 | se = layers.Conv3D(filters, 1, |
|
561 | padding='same', |
|
562 | activation='sigmoid', |
|
563 | name=name + 'se_expand')(se) |
|
564 | x = layers.multiply([x, se], name=name + 'se_excite') |
|
565 | ||
566 | x = layers.Conv3D(filters_out, 1, |
|
567 | padding='same', |