Код: Выделить всё
def FunctionFindBestParams(X_train, y_train, X_test, y_test):
batch_size_list=[5, 10, 15, 20]
epoch_list = [5, 10, 50, 100]
import pandas as pd
SearchResultsData=pd.DataFrame(columns=['TrialNumber', 'Parameters', 'Accuracy'])
TrialNumber=0
for batch_size_trial in batch_size_list:
for epochs_trial in epoch_list:
TrialNumber+=1
model = Sequential()
model.add(Dense(units=5, input_dim=X_train.shape[1], kernel_initializer='normal', activation='relu'))
model.add(Dense(units=5, kernel_initializer='normal', activation='relu'))
model.add(Dense(1, kernel_initializer='normal'))
model.compile(loss='mean_squared_error', optimizer='adam')
model.fit(X_train, y_train ,batch_size = batch_size_trial, epochs = epochs_trial, verbose=0)
MAPE = np.mean(100 * (np.abs(y_test-model.predict(X_test))/y_test))
print(TrialNumber, 'Parameters:','batch_size:', batch_size_trial,'-', 'epochs:',epochs_trial, 'Accuracy:', 100-MAPE)
SearchResultsData=SearchResultsData.concat(pd.DataFrame(data=[[TrialNumber, str(batch_size_trial)+'-'+str(epochs_trial), 100-MAPE]],
columns=['TrialNumber', 'Parameters', 'Accuracy'] ))
return(SearchResultsData)
ResultsData=FunctionFindBestParams(X_train, y_train, X_test, y_test)
Подробнее здесь: https://stackoverflow.com/questions/785 ... ute-concat