def linkFeature(self, input_name, conv_name, activation='tanh'):
print('Am I called')
filters = self.params.get('filters')
nb_filter = self.params.get('nb_filter')
convs = self.layers.get(conv_name)
assert filters
assert convs
features = []
for fsz, conv in zip(filters, convs):
conv_output = conv(self.tensors[input_name])
if type(activation) == type(''):
act = Activation(
activation, name='%s-act-%d' % (input_name, fsz)
)(conv_output)
else:
act = activation(
name='%s-advanced-act-%d' % (input_name, fsz)
)(conv_output)
maxpool = Lambda(
lambda x: K.max(x[:,:,:,0], axis=2),
output_shape=(nb_filter,),
name='%s-maxpool-%d' % (input_name, fsz)
)(act)
features.append(maxpool)
if len(features) > 1:
return Merge(mode='concat', name='%s-feature' % input_name)(features)
else:
return features[0]
评论列表
文章目录