Please use “dropout”, “batch normalization” and any “data augmentation” to improve the accuracy of the second MLP (i.e. (2) MLP) in Question 1 a. You are not allowed to change the fully-connected layers and activiation layers in (2) MLP). You may try to apply the above methods in anywhere of the MLP as you see fit. You can change the settings such as learning rate, training epoch and batch size.
To get your score, you need to submit the predicted results on the validation set of Mnist. That is, for each image in validation set, you need to save its predicted class (from digit 0 to digit 9). You can add the following code (code in bold) in Assignment 1 jupyter notebook to save your results.
def validate(loss_vector, accuracy_vector):
pred_all = 
for data,target in validation_loader:
pred = output.data.max(1)
pred_all = np.array(pred_all)
for epoch in range(1, epochs + 1):
pred_all = validate(lossv,accv)
Please make sure that 'pred_all' is of size [10000,]. Also, when you define the validation_loader, remember to set 'shuffle=False'.
After saving 'results.npy', you need to zip this file to submission.zip and upload submission.zip to the server by clicking on 'Participate' on the above. The validation accuracy will be regared as the evaluation metric to determine your ranking.
After uploading your results, you need to wait for a minute and refresh the page to see your ranking.
The validation accuracy calculated based on your uploaded results should be the same as the validation accuracy printed in your later submitted jupyer notebook. Only then will your score be considered valid, which means you did not change the upload results manually.
Start: Oct. 12, 2020, midnight
Description: In this phase, you can submit the result of validation set and see your rank in leaderboard.
Oct. 29, 2020, midnight
You must be logged in to participate in competitions.Sign In