Улучшение нейросети
У меня есть датасет который состоит из 11 колонок и 8640 строк. Я построил нейросеть который состоит из 3 inputs С двумя hidden layers и 1 output. Вообще по идее 8 output но нужно для каждого output отдельный модель. И для этого я использовал функцию. Test set 33% Traning set 67%.
for i in range(0, 8):
inputs= Inputs_arr
outputs= Outputs_arr[:, i].reshape(-1, 1)
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
inputs=sc.fit_transform(inputs)
outputs=sc.fit_transform(outputs)
condition = np.isin(Inputs_arr[:,1], (8, 2))
inputs_train, inputs_test = inputs[~condition], inputs[condition]
outputs_train, outputs_test = outputs[~condition], outputs[condition]
from tensorflow.keras import layers
model = Sequential([
layers.Dense(units = 10, activation = 'relu', input_dim = 3),
layers.Dense(units = 10, activation = 'relu'),
layers.Dense(1, kernel_regularizer=l2(0.001), bias_regularizer=l2(0.09))
])
opt = tensorflow.keras.optimizers.Adam(learning_rate=0.001)
model.compile(optimizer =opt, loss='mse')
history = model.fit(inputs_train, outputs_train, validation_data=(inputs_test, outputs_test), epochs=100, batch_size=65)
теперь данный момент R^2 равен 0.87, Training Mean Squared Error 0.0749 Test Mean Squared Error 0.1236. Как можно улучить модель?