from transformers import PretrainedConfig | |
import os | |
import yaml | |
import requests | |
from functools import partial | |
import torch.nn as nn | |
class SMARTIESConfig(PretrainedConfig): | |
model_type = "SMARTIES-v1-ViT-B" | |
def __init__( | |
self, | |
img_size=224, | |
patch_size=16, | |
embed_dim=768, | |
depth=12, | |
num_heads=12, | |
mlp_ratio=4.0, | |
qkv_bias=True, | |
norm_eps=1e-6, | |
spectrum_specs=None, | |
global_pool=False, | |
norm_layer_eps=1e-6, | |
mixed_precision='no', | |
decoder_embed_dim=512, | |
decoder_depth=8, | |
decoder_num_heads=16, | |
pos_drop_rate=0.0, | |
**kwargs | |
): | |
super().__init__(**kwargs) | |
self.img_size = img_size | |
self.patch_size = patch_size | |
self.embed_dim = embed_dim | |
self.depth = depth | |
self.num_heads = num_heads | |
self.mlp_ratio = mlp_ratio | |
self.qkv_bias = qkv_bias | |
self.norm_eps = norm_eps | |
self.spectrum_specs = spectrum_specs | |
self.global_pool = global_pool | |
self.pos_drop_rate = pos_drop_rate | |
self.num_heads = self.num_heads | |
self.norm_layer_eps = norm_layer_eps | |
self.mixed_precision = mixed_precision | |
self.decoder_embed_dim = decoder_embed_dim | |
self.decoder_depth = decoder_depth | |
self.decoder_num_heads = decoder_num_heads |