vgg_16 is declared without specifying num_classes meaning it gets built with the default value of 1000. It does not matter as we do not use the fully connected layers.
resnet_v1 is declared with num_classes=None. As specified in the slim documentation, it does not build fully connected layers. This is quite fine.
resnet_v2 is declared with num_classes=self._config.get('num_classes'). Now this is perplexing because num_classes=None was equally fine according to slim documentation.
This inconsistency puts to confusion someone trying to extend luminoth to new networks. Is this an inconsistency, or is it deliberate ?
I want to bring to attention, the following code snippet -
https://github.com/tryolabs/luminoth/blob/master/luminoth/models/base/base_network.py#L69-L101
In the above snippet
vgg_16 is declared without specifying num_classes meaning it gets built with the default value of 1000. It does not matter as we do not use the fully connected layers.
resnet_v1 is declared with num_classes=None. As specified in the slim documentation, it does not build fully connected layers. This is quite fine.
resnet_v2 is declared with
num_classes=self._config.get('num_classes')
. Now this is perplexing becausenum_classes=None
was equally fine according to slim documentation.This inconsistency puts to confusion someone trying to extend luminoth to new networks. Is this an inconsistency, or is it deliberate ?