I'm currently tweaking various hyperparameters to get better results from my data.
examples/ssd/ssd_pascal.py
# Minimum scale of 0.2
min_ratio = 20
max_ratio = 95
step = int(math.floor((max_ratio - min_ratio) / (len(mbox_source_layers) - 2)))
min_sizes = []
max_sizes = []
for ratio in xrange(min_ratio, max_ratio + 1, step):
min_sizes.append(min_dim * ratio / 100.)
max_sizes.append(min_dim * (ratio + step) / 100.)
# A box with scale 0.1 is added nonetheless. Why?
min_sizes = [min_dim * 10 / 100.] + min_sizes
max_sizes = [[]] + max_sizes
Magic Number Alert:
I do not understand why a box with ratio 10 is being added to the list of box sizes.
If I were to set min_ratio = 4, would it still make sense to add the min_dim * 10 / 100 box, or should I rather add a min_dim * 2 / 100 box?
In your SSD paper, you write
[sic 3.4 MS COCO] but
now our smallest default box has a scale of 0.1 instead of 0.2, and the scale of the default
box on conv4 3 is 0.07 (e.g. corresponding to 21 pixels for a 300 脳 300 image).
Is this cite relevant to this?
I would be happy if you could shed some light on this subject, please.
The extra min_sizes is for conv4_3.
I think how to determine the optimal scale of default boxes at each layer is an open question. I believe it will be helpful to look at the specific dataset and design specific tiling strategy to cover the ground truth bbox space better. The ones I used in the paper is by no means the optimal.
Thank you for your feedback.
Most helpful comment
The extra min_sizes is for conv4_3.
I think how to determine the optimal scale of default boxes at each layer is an open question. I believe it will be helpful to look at the specific dataset and design specific tiling strategy to cover the ground truth bbox space better. The ones I used in the paper is by no means the optimal.