Não pode escolher mais do que 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 
 

39 linhas
1.3 KiB

from math import ceil
from typing import Optional
import logging
from argparse import ArgumentParser
import sys
import os
class Config:
def __init__(self):
self.__logger: Optional[logging.Logger] = None
self.set_defaults()
def set_defaults(self):
self.NUM_TRAIN_EPOCHS = 100
self.SAVE_EVERY_EPOCHS = 5
self.TRAIN_BATCH_SIZE = 64
# model hyper-params
self.categories = 10
# self.learning_rate=0.001
# self.decay_rate=0.9
self.path_vocab_size = 27500
self.token_vocab_size = 1500
self.MAX_CONTEXTS = 200
self.MAX_TOKEN_VOCAB_SIZE = 1301136
self.MAX_PATH_VOCAB_SIZE = 911417
self.DEFAULT_EMBEDDINGS_SIZE = 64
self.TOKEN_EMBEDDINGS_SIZE = self.DEFAULT_EMBEDDINGS_SIZE
self.PATH_EMBEDDINGS_SIZE = self.DEFAULT_EMBEDDINGS_SIZE
self.CODE_VECTOR_SIZE = self.context_vector_size
self.TARGET_EMBEDDINGS_SIZE = self.CODE_VECTOR_SIZE
self.DROPOUT_KEEP_RATE = 0.5
@property
def context_vector_size(self) -> int:
# The context vector is actually a concatenation of the embedded
# source & target vectors and the embedded path vector.
return self.PATH_EMBEDDINGS_SIZE + 2 * self.TOKEN_EMBEDDINGS_SIZE