Ejemplo n.º 1
0
    def __init__(self, conf, *args):
        super(ProtoNetModule, self).__init__(*args)
        self.conf = conf
        self.net = {}
        if conf['feature']['net_name'] == 'WideResNet':
            self.net['feature'] = WideResNet.create_model(conf)
        else:
            self.net['feature'] = ConvNet.create_model(conf['feature'])

        self.net['head'] = ProtoHead.create_model()
        self.init_optimizer()
Ejemplo n.º 2
0
    def __init__(self, conf, *args):
        super(MetaRelationModule, self).__init__(*args)
        self.conf = conf
        self.net = {}
        if self.conf['feature']['net_name'] == 'ConvNet':
            self.net['feature'] = ConvNet.create_model(conf['feature'])
        elif self.conf['feature']['net_name'] == 'ResNet':
            self.net['feature'] = ResNet.create_model(conf['feature'])
        elif self.conf['feature']['net_name'] == 'WideResNet':
            self.net['feature'] = WideResNet.create_model(conf)
        elif self.conf['feature']['net_name'] == 'ResNet2':
            self.net['feature'] = ResNet2.create_model(conf)
        else:
            raise NotImplementedError

        self.net['relation'] = RelationNet(conf['relation'])
        if conf['relation']['use_meta_relation'] is True:
            self.net['meta_relation'] = MetaRelationNet(conf['meta_relation'])
        else:
            self.net['meta_relation'] = RelationHead(conf['meta_relation'])

        self.init_optimizer()