Tips to improve (reduce) rmse loss using dense network

@Jeromy and other experts of fast.ai.
Is there anyone can point me towards some good reference or tips to tune MLP?
Input data shape --> 4524, 23
Target variable is a rank percentile 0-100 number
Network:
def base_model(learn_rate=0.00001, optimizer=‘adam’):
optimizer = optimizers.Adam(lr=learn_rate)
model = Sequential()
model.add(Dense(30, activation=‘relu’,
kernel_regularizer = ‘l2’,
kernel_initializer = ‘normal’,
kernel_constraint=maxnorm(3),
input_shape=(23,)))
#model.add(Dropout(0.2))
#model.add(Dense(10, activation=‘linear’,
# kernel_regularizer = ‘l2’,
# kernel_initializer=‘normal’))
model.add(Dropout(0.2))
model.add(Dense(1, activation=‘linear’,
kernel_regularizer = ‘l2’,
kernel_initializer=‘normal’,
kernel_constraint=maxnorm(3)))
model.compile(loss=‘mse’, optimizer=optimizer, metrics=[‘accuracy’])
return model

early_stopping = EarlyStopping(monitor=‘val_loss’, min_delta=0, patience=1, verbose=0, mode=‘auto’)
history = model.fit(X_train, y_train, validation_split=0.3,
epochs=300, batch_size=10,
#callbacks = [early_stopping],
verbose=1)

Is there any example of using fastai library for regression?