File size: 1,795 Bytes
8f2be8b |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
from transformers.configuration_utils import PretrainedConfig
class EcapaConfig(PretrainedConfig):
model_type = 'ecapa'
def __init__(
self,
n_mels=80,
sample_rate=16000,
win_length=25,
hop_length=10,
mean_norm=True,
std_norm=False,
norm_type='sentence',
hidden_size=192,
channels=[512, 512, 512, 512, 1536],
kernel_sizes=[5, 3, 3, 3, 1],
dilations=[1, 2, 3, 4, 1],
attention_channels=128,
res2net_scale=8,
se_channels=128,
global_context=True,
groups=[1, 1, 1, 1, 1],
num_classes=1251,
loss_fn='aam',
auto_map={
"AutoConfig": "configuration_ecapa.EcapaConfig",
"AutoModel": "modeling_ecapa.EcapaModel",
},
initializer_range=0.02,
**kwargs
):
# Compute features
self.n_mels = n_mels
self.sample_rate = sample_rate
self.win_length = win_length
self.hop_length = hop_length
# Mean variance norm
self.mean_norm = mean_norm
self.std_norm = std_norm
self.norm_type = norm_type
# Embedding model
self.channels = channels
self.kernel_sizes = kernel_sizes
self.attention_channels = attention_channels
self.dilations = dilations
self.res2net_scale = res2net_scale
self.se_channels = se_channels
self.global_context = global_context
self.groups = groups
self.hidden_size = hidden_size
# Classifier
self.num_classes = num_classes
self.loss_fn = loss_fn
# Others
self.auto_map = auto_map
self.initializer_range = initializer_range
super().__init__(**kwargs) |