2
$\begingroup$

I am basically interested in vehicle on the road.

YoloV3 pytorch is giving a decent result.

So my interested Vehicles Car Motorbike Bicycle Truck and bus, I have a small vehicles being detected as truck.

Since the small vehicle is nicely being detected as truck. I have annotated this small vehicle as a different class.

Though, I could add an extra class say 81th class, since the current YoloV3 being used is trained on 80 classes.

81th class would contain the weight of the truck, I would freeze the weights such that the rest of the 80 classes remain unaltered and only the 81th class of this new data gets trained.

The problem is the final layer gets tuned according to the prediction of all the classes it learns.

I was not able to find any post that could actually mention this way of preserving the predictions of the other classes and introducing a new class using transfer learning.

The closest, I was able to get is this post of Weight Sampling Tutorial SSD using keras

Its mentioned in

Option 1: Just ignore the fact that we need only 8 classes

This would work, and it wouldn't even be a terrible option. Since only 8 out of the 80 classes would get trained, the model might get gradually worse at predicting the other 72 clases in the second paragraph.

Is it possible to preserve the predictions, of the previous pre trained model while introducing the new class and use transfer learning to train only for that class?

I Feel that this is not possible, would like to know your opinion. Hope someone can prove me wrong.

$\endgroup$
1
$\begingroup$

Even if you want to re-train your model for just one new class you will have to prepare your training data such that it includes all or most of the classes which you want to predict. Most of the times last two layers of a network have the data of number of labels which are to be predicted and that should always be sum of the number of classes you already trained on and the number of classes you want to add for training.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.