from transformers import PretrainedConfig | |
class ConfigHybridBiGRUModel(PretrainedConfig): | |
model_type = "bert-bigru" | |
def __init__(self, | |
bert_model_name="bert-base-uncased", | |
tokenizer_name="bert-base-uncased", | |
hidden_dim=128, | |
num_classes=2, | |
gru_layers=1, | |
bidirectional=True, | |
dropout=0.3, | |
concat_layers=0, | |
pooling="last", | |
freeze_bert=False, | |
freeze_n_layers=0, # jumlah layer yg akan di-freeze | |
freeze_from_start=False, # freeze dari awal atau akhir | |
**kwargs): | |
super().__init__(**kwargs) | |
self.bert_model_name = bert_model_name | |
self.tokenizer_name = tokenizer_name | |
self.hidden_dim = hidden_dim | |
self.num_classes = num_classes | |
self.gru_layers = gru_layers | |
self.bidirectional = bidirectional | |
self.dropout = dropout | |
self.concat_layers = concat_layers | |
self.pooling = pooling | |
self.freeze_bert = freeze_bert | |
self.freeze_n_layers = freeze_n_layers | |
self.freeze_from_start = freeze_from_start |