Beispiel #1
0
def trainNetsForTestingRanking(num_nets):
    """
    Entrenamos un numero concreto de redes solo para testear que las diversas
    operaciones funcionan correctamente.
    """
    # Creamos una lista de redes
    train_list = createRandomNetPool(num_nets)

    # Entrenamos todas las redes
    trainNetPool(train_list)

    # Ordenamos el ranking
    train_list = sortNetPool(train_list)

    # Transformamos la lista a texto en json y viceversa
    new_list = []
    for net in train_list:
        json_data = info_handler.CL_trainer2json(net)
        new_obj = info_handler.json2CL_trainer(json_data)

        new_list.append(new_obj)

    # Mostramos el ranking
    printRanking(train_list)

    # Mostramos el ranking obtenido de hacer la transformacion a json y
    # viceversa. Deberia ser igual al ranking anterior
    printRanking(new_list)
Beispiel #2
0
def generateTasks(num_tasks):
    """
    Genera un numero dado de redes preparadas para iniciar su entrenamiento y
    las guarda como tareas en el gran json de tareas.
    """
    # Generamos un pool de redes
    nets_list = createRandomNetPool(num_tasks)

    # Las transformamos a formato json
    json_list = [info_handler.CL_trainer2json(x) for x in nets_list]

    # Cargamos el gran json de tareas
    big_task_json = info_handler.loadTheBigTaskJson()

    # Acumulamos las tareas
    for jsoned_task in json_list:
        net_name = jsoned_task["model_name"]
        big_task_json[net_name] = jsoned_task  # ¿hacemos copia antes?

    # Guardamos el gran json con las nuevas tareas acumuladas
    info_handler.saveTheBigTaskJson(big_task_json)

    # Enviamos mensaje de aviso
    if num_tasks == 1:
        sendMSG("Añadiendo 1 tarea al gran json")
    else:
        sendMSG("Añadiendo " + str(num_tasks) + " tareas al gran json")
Beispiel #3
0
def saveOneDoneTask(task):
    """
    Guarda una tarea completada en el gran json de entrenamientos realizados.

    Si el json no existe, lo crea y mete la tarea completada dentro.
    """
    # Cargamos el gran json de entrenamientos realizados
    big_trained_json = info_handler.loadTheBigTrainedJson()

    # Convertimos la tarea a formato json
    jsoned_task = info_handler.CL_trainer2json(task)

    # Acumulamos la tarea en el gran json de entrenamientos realizados
    net_name = jsoned_task["model_name"]
    big_trained_json[net_name] = jsoned_task

    # Guardamos el json
    info_handler.saveTheBigTrainedJson(big_trained_json)