defpvig_ti_224_gelu(pretrained=False,**kwargs):classOptInit:def__init__(self, num_classes=1000, drop_path_rate=0.0,**kwargs):
self.k =9# 邻域的数目,默认为9
self.conv ='mr'# 图卷积层=mr
self.act ='gelu'# 激活层=gelu
self.norm ='batch'# batch or instance normalization {batch, instance}
self.bias =True# bias of conv layer True or False
self.dropout =0.0# dropout rate
self.use_dilation =True# use dilated knn or not
self.epsilon =0.2# stochastic epsilon for gcn
self.use_stochastic =False# stochastic for gcn, True or False
self.drop_path = drop_path_rate
self.blocks =[2,2,6,2]# number of basic blocks in the backbone
self.channels =[48,96,240,384]# number of channels of deep features
self.n_classes = num_classes # Dimension of out_channels
self.emb_dims =1024# Dimension of embeddings
opt = OptInit(**kwargs)
model = DeepGCN(opt)
model.default_cfg = default_cfgs['vig_224_gelu']return model
DeepGCN
classDeepGCN(torch.nn.Module):def__init__(self, opt):super(DeepGCN, self).__init__()print(opt)
k = opt