functools.partial()

 

tensorflow.keras.layers.Dense()와 같이 동일한 parameter를 반복적으로 사용해야 하는 경우, partial() 함수를 사용하면 간단히 축약할 수 있다.

1
2
3
4
5
6
7
8
9
10
11
12
13
from functools import partial
from tensorflow import keras

RegularizedDense = partial(keras.layers.Dense,
                           activation='elu',
                           kernel_initializer='he_normal',
                           kernel_regularizer=keras.regularizers.l2(0.01))

model = keras.models.Sequential([
    RegularizedDense(300),
    RegularizedDense(300),
    RegularizedDense(10, activation='softmax')
])