mirror of
https://github.com/iperov/DeepFaceLab.git
synced 2025-07-10 15:23:32 -07:00
adding kernel initializer option to FUNITAdain block
This commit is contained in:
parent
deeb98474b
commit
4a2203cc35
2 changed files with 6 additions and 5 deletions
|
@ -258,10 +258,10 @@ class FUNIT(object):
|
||||||
inp, mlp = input
|
inp, mlp = input
|
||||||
x = inp
|
x = inp
|
||||||
x = Conv2D(dim, 3, strides=1, padding='valid')(ZeroPadding2D(1)(x))
|
x = Conv2D(dim, 3, strides=1, padding='valid')(ZeroPadding2D(1)(x))
|
||||||
x = FUNITAdain()([x,mlp])
|
x = FUNITAdain(kernel_initializer='he_normal')([x,mlp])
|
||||||
x = ReLU()(x)
|
x = ReLU()(x)
|
||||||
x = Conv2D(dim, 3, strides=1, padding='valid')(ZeroPadding2D(1)(x))
|
x = Conv2D(dim, 3, strides=1, padding='valid')(ZeroPadding2D(1)(x))
|
||||||
x = FUNITAdain()([x,mlp])
|
x = FUNITAdain(kernel_initializer='he_normal')([x,mlp])
|
||||||
return Add()([x,inp])
|
return Add()([x,inp])
|
||||||
return func
|
return func
|
||||||
|
|
||||||
|
|
|
@ -522,10 +522,11 @@ NLayerDiscriminator = nnlib.NLayerDiscriminator
|
||||||
so we don't need to slice outter MLP block and assign weights every call, just pass MLP inside.
|
so we don't need to slice outter MLP block and assign weights every call, just pass MLP inside.
|
||||||
also size of dense blocks is calculated automatically
|
also size of dense blocks is calculated automatically
|
||||||
"""
|
"""
|
||||||
def __init__(self, axis=-1, epsilon=1e-5, momentum=0.99, **kwargs):
|
def __init__(self, axis=-1, epsilon=1e-5, momentum=0.99, kernel_initializer='glorot_uniform', **kwargs):
|
||||||
self.axis = axis
|
self.axis = axis
|
||||||
self.epsilon = epsilon
|
self.epsilon = epsilon
|
||||||
self.momentum = momentum
|
self.momentum = momentum
|
||||||
|
self.kernel_initializer = kernel_initializer
|
||||||
super(FUNITAdain, self).__init__(**kwargs)
|
super(FUNITAdain, self).__init__(**kwargs)
|
||||||
|
|
||||||
def build(self, input_shape):
|
def build(self, input_shape):
|
||||||
|
@ -533,9 +534,9 @@ NLayerDiscriminator = nnlib.NLayerDiscriminator
|
||||||
x, mlp = input_shape
|
x, mlp = input_shape
|
||||||
units = x[self.axis]
|
units = x[self.axis]
|
||||||
|
|
||||||
self.kernel1 = self.add_weight(shape=(units, units), initializer='he_normal', name='kernel1')
|
self.kernel1 = self.add_weight(shape=(units, units), initializer=self.kernel_initializer, name='kernel1')
|
||||||
self.bias1 = self.add_weight(shape=(units,), initializer='zeros', name='bias1')
|
self.bias1 = self.add_weight(shape=(units,), initializer='zeros', name='bias1')
|
||||||
self.kernel2 = self.add_weight(shape=(units, units), initializer='he_normal', name='kernel2')
|
self.kernel2 = self.add_weight(shape=(units, units), initializer=self.kernel_initializer, name='kernel2')
|
||||||
self.bias2 = self.add_weight(shape=(units,), initializer='zeros', name='bias2')
|
self.bias2 = self.add_weight(shape=(units,), initializer='zeros', name='bias2')
|
||||||
|
|
||||||
self.built = True
|
self.built = True
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue