Настройка параметров через Tuner Keras
помогите исправить и оптимизировать пожалуйста. но основной вопрос как настроить что Тюнер перебирал и оптимизаторы и разный шаг для них (а то смог сделать или только перебор оптимизаторов или шага обучения) а так же возможно ли настроить так же чтоб тюнер перебирал разные значения batch size.
Создаем модель
class RegressionHyperModel(HyperModel):
def __init__(self, input_shape):
self.input_shape = input_shape
def build(self, hp):
model = Sequential()
activation_choice = hp.Choice('activation', values=['relu', 'sigmoid', 'tanh', 'elu', 'selu'])
model.add(
layers.Dense(
units=hp.Int('units', 32, 1024, 30, default=128),
activation=hp.Choice(
'dense_activation',
values=['relu', 'tanh', 'sigmoid'],
default='relu'),
input_shape=input_shape
)
)
for i in range(hp.Int('num_layers', 2, 10)):
model.add(layers.Dense(units=hp.Int('units_' + str(i),
min_value=32,
max_value=1024,
step=32),
activation=activation_choice))
model.add(
layers.Dropout(
hp.Float(
'dropout',
min_value=0.0,
max_value=0.1,
default=0.005,
step=0.01)
)
)
model.add(layers.Dense(1))
model.compile(
optimizer=keras.optimizers.Adam(
hp.Choice('learning_rate',
values=[1e-2, 1e-3, 1e-4])),
loss='mse',metrics=['mse']
)
return model