NSYSU Assignment 3-2-Flower Classification with self-training Solved

35.00 $

Category:

Description

Rate this product

Assignment #3-2 (Bonus)

Flower classification with self-training

Overview

• In assignment #3, you implemented a multi-class image classifier to recognize flowers.

• You will design and train a deep convolutional network based on Assignment #3 with extra data and the self-training method to predict the class label of a flower image.

• Please note that you’re still not allowed to use a pre-trained model.

Self-training

  • Given: labelled training data & unlabeled training data
  • Train the model with labelled data.
  • Repeat:

    • Predict the unlabeled data with the model to get pseudo labels.

    • Remove the data with high confidence level from the unlabeled dataset and add them to the labelled dataset.

    • Finetune with labeled dataset.

  • End: Repeat until all the unlabeled data with the pseudo labels reach certain confidence level, or until there’re no unlabeled data left.

Flower Dataset

• The dataset is the same as Assignment #3

daisy dandelion rose
• The train(labelled and unlabeled)/val/test splits are provided.

sunflower tulip
• Your model will be evaluated on the test set using the accuracy metric.

Assignment #3-2 Dataset

The same as assignment #3

The new unlabeled training data for self-training

Your task

  • We have code skeleton for you guys.
  • https://colab.research.google.com/drive/13QW99mhNFIroKCPoDZwOZ6L56pwuaQIz
  • Design a convolutional neural network to recognize the flowers. You must train your model based on your assignment #3.
  • The images provided are of different resolutions. You’ll need to resize the images into a fixed size of your own choice.
  • To get a high accuracy, you’ll need to experiment with different filter sizes, different number of layers, and other design principles discussed in class to figure out a network architecture that works best.
  • You’ll also need to try data augmentation, dropout, batch normalization as well as different optimizers and other tricks to boost performance.
  • Again, you cannot use any pre-trained model in this part.

Things you cannot do

  • You cannot submit results from Assignment #3.
  • You cannot submit results predicted by others.
  • You cannot copy trained models from others.
  • You cannot copy code from others, internet, GitHub …
  • You cannot collect more images to train your model in order to boost performance.
  • You cannot use the weights of pre-trained model.
    Any violation will result in no bonus points!

 

  • Assignment3-2_Self-Supervised_Learning-mzggon.zip