def build_model():
    model = Sequential()
    model.add(Dense(units = 4, activation = 'relu', input_shape = (8, )))
    model.add(Dense(units = 20, activation = 'relu'))
    model.add(Dense(units = 10, activation = 'relu'))
    model.add(Dense(units = 1, activation = 'linear'))

    # 옵티마이저의 learning rate를 설정하는 방법
    model.compile(tf.keras.optimizers.RMSprop(learning_rate = 0.001), loss = 'mse', metrics = ['mse', 'mae'])
    #model.compile('adam', 'mse')
    return model
    
model = build_model()
epoch_history = model.fit(X_train, y_train, epochs = 1000, validation_split = 0.2)

Validation set(검정 데이터)은 training set으로 만들어진 모델의 성능을 측정하기 위해 사용된다. 일반적으로 어떤 모델이 가장 데이터에 적합한지 찾아내기 위해서 다양한 파라미터와 모델을 사용해보게 되며, 그 중 validation set으로 가장 성능이 좋았던 모델을 선택한다. validation_split이 0.2면 학습데이터의 20프로를 에포크 한번 끝날 때마다 오차를 측정하는 데 쓴다.

 

+ Recent posts