while not os.getcwd().endswith("personality_prediction") and os.getcwd()!="/":
    os.chdir(os.path.dirname(os.getcwd()))
if os.getcwd()=="/":
    raise Exception("The project dir's name must be 'personality_prediction'. Rename it.")
sys.path.append(os.getcwd())

# ______
# IMPORT:
from utils import load_yaml_config, Config

# ______
# CONFIG:
config = Config()
config.ocean_traits = [0, 1, 2, 3, 4]
# OCEAN personality traits to which perform the coherence test: O:0, C:1, E:2, A:3, N:4.
config.distances = [0, 4]
# Distances to which perform the coherence test.
config.max_neigs = 12500
# Maximum number of unknown neighbors to return in the case of distance>0.
# Use None or 0 if you want to return all possible neighbors in the select distance.
config.batch_size = 32
# Training batch size of fnn models.
config.epochs = [50, 300]
config.epochs_train2 = 300
config.epochs_interval = 50
# Epochs is a list of len=2 containing the range of epochs after which stop training of M1 models and train a new model M2.
# M1's training will stop after epochs[0]+n*interval such that  n>0 and epochs[0]+n*interval<=epochs[1]
# M2's training will last epochs_train2 epochs.
config.epochs_interval_evaluation = 1
# M2's training will stop epochs_interval_evaluation epochs to evaluate performance
# M1's training will stop to evaluate performance only if test1=True