generated from daniil-berg/boilerplate-py
34 lines
1.1 KiB
Python
34 lines
1.1 KiB
Python
from pathlib import Path
|
|
|
|
|
|
class CONFIG(object):
|
|
__slots__ = ()
|
|
PROGRAM_NAME = 'ccaptchas'
|
|
|
|
EXT_PNG, EXT_JPG = '.png', '.jpg'
|
|
DEFAULT_IMG_FILE_EXT = (EXT_PNG, EXT_JPG)
|
|
|
|
# StringLookup parameters:
|
|
DEFAULT_NUM_OOV_INDICES = 0 # assuming no out-of-vocabulary (OOV) characters will be encountered
|
|
DEFAULT_MASK_TOKEN = None # assuming there will never be a value missing
|
|
|
|
# Data splitting:
|
|
DEFAULT_VALIDATION_RATIO = 1 / 8
|
|
DEFAULT_SHUFFLE_DATA = True
|
|
|
|
# Image processing:
|
|
DEFAULT_IMG_WIDTH, DEFAULT_IMG_HEIGHT = 250, 50 # Desired image dimensions
|
|
|
|
# Training hyper-parameters:
|
|
DEFAULT_BATCH_SIZE = 16
|
|
DEFAULT_NUM_EPOCHS = 100
|
|
DEFAULT_EARLY_STOPPING_PATIENCE = 10
|
|
|
|
DEFAULT_SAVE_DIR = Path('.', 'saved_models')
|
|
MODEL_NAME = f'{PROGRAM_NAME}_model'
|
|
LAYER_NAME_INPUT_IMAGE, LAYER_NAME_INPUT_LABEL = 'image', 'label'
|
|
LAYER_NAME_OUTPUT = 'encoded_output'
|
|
MAX_STRING_LENGTH = 6 # Maximum number of character in any captcha image in the dataset
|
|
VOCABULARY_FILE_NAME = '.vocabulary'
|
|
HISTORY_FILE_NAME = '.history.json'
|