ai-center
2020.10
false
UiPath logo, featuring letters U and I in white

AI Center

Automation CloudAutomation SuiteStandalone
Última actualización 6 de jun. de 2024

Procesos de evaluación

Un proceso de evaluación se utiliza para evaluar un modelo de aprendizaje automático entrenado. Para utilizar este proceso, el paquete debe contener código para evaluar un modelo (la función evaluate() en el archivo train.py). Este código, junto con un conjunto de datos o una subcarpeta dentro de un conjunto de datos, produce una puntuación (el resultado de la función evaluate()) y cualquier output arbitrario que al usuario le gustaría mantener además de la puntuación.

Crear procesos de evaluación

Crea un nuevo proceso de evaluación como se describe aquí. Asegúrate de proporcionar la siguiente información específica del proceso de evaluación:

  • En el campo Tipo de proceso, selecciona Ejecución de evaluación.
  • En el campo Elegir conjunto de datos de evaluación, selecciona un conjunto de datos o una carpeta desde la que quieres importar datos para la evaluación. Todos los archivos en este conjunto de datos/carpeta deben estar disponibles localmente durante el tiempo de ejecución del proceso, siendo transmitidos al argumento a tu función evaluate().
  • En la sección Introducir parámetros, escribe las variables de entorno definidas y utilizadas por tu proceso, si las hubiera. Las variables de entorno son:
    • artifacts_directory, con artefactos de valor predeterminado: define la ruta a un directorio que será persistente como datos auxiliares relacionados con este proceso. La mayoría, si no todos los usuarios, nunca tendrá la necesidad de anular esto a través de la IU. Todo lo que puede guardarse durante la ejecución del proceso, incluidas imágenes, pdfs y subcarpetas. En concreto, cualquier dato que tu código escriba en el directorio especificado por la ruta os.environ['artifacts_directory'] se cargará al final de la ejecución del proceso y se podrá ver desde la página Detalles del proceso.
    • save_test_data, con el valor predeterminado false: si se establece en true, la carpeta data_directory se cargará al final de la ejecución del proceso como un output del proceso en el directorio data_directory.
      Mira el siguiente vídeo para obtener más información sobre cómo crear un proceso de evaluación con la versión 1.1 del paquete recién entrenada:


Resultados de una ejecución de un proceso de evaluación

Aviso: La ejecución del proceso puede tardar algún tiempo. Échale un vistazo después de un tiempo para ver su estado.
Después de ejecutarse el proceso, en la página Procesos, el estado del proceso cambia a Con éxito. La página Detalles del proceso muestra los archivos y carpetas arbitrarios relacionados con la ejecución del proceso. En nuestro ejemplo, la ejecución creó un archivo llamado my-evaluate-artifact.txt.


Analogía conceptual para crear tus propios procesos de evaluación

Aquí se muestra una ejecución conceptualmente analógica de un proceso de evaluación en un paquete, por ejemplo, la versión 1.1, el output de un proceso de entrenamiento llevado a cabo en la versión 1.0.

Importante: Este es un ejemplo simplificado. Su propósito es ilustrar cómo los conjuntos de datos y los paquetes interactúan en un proceso de evaluación. Los pasos son meramente conceptuales y no representan cómo funciona la plataforma.
  1. Copia la versión 1.1 del paquete en ~/mlpackage.
  2. Copia el conjunto de datos de evaluación o la subcarpeta del conjunto de datos seleccionada desde la IU a ~/mlpackage/evaluation_data.
  3. Ejecuta el siguiente código python:
    from train import Main 
    m = Main() 
    score = m.evaluate('./evaluation_data')from train import Main 
    m = Main() 
    score = m.evaluate('./evaluation_data')
    La puntuación mostrada emerge en la cuadrícula que muestra los procesos y el archivo results.json.
  4. Mantén los artefactos si se escriben, haz una instantánea de los datos si save_test_data está establecido en true.

Outputs de un proceso

El archivo _results.json contiene un resumen de la ejecución del proceso y expone todas los inputs/outputs y los tiempos de ejecución para un proceso de evaluación.
{
    "parameters": {
        "pipeline": "< Pipeline_name >",
        "inputs": {
            "package": "<Package_name>",
            "version": "<version_number>",
            "evaluation_data": "<storage_directory>",
            "gpu": "True/False"
        },
        "env": {
            "key": "value",
            ...
        }
    },
    "run_summary": {
     "execution_time": <time>, #in seconds 
     "start_at": <timestamp>, #in seconds 
     "end_at": <timestamp>, #in seconds 
     "outputs": {
        "score": <score>, #float
        "train_data": "<test_storage_directory>", 
        "evaluation_data": "<test_storage_directory>/None", 
        "artifacts_data": "<artifacts_storage_directory>",
         }
    }
}{
    "parameters": {
        "pipeline": "< Pipeline_name >",
        "inputs": {
            "package": "<Package_name>",
            "version": "<version_number>",
            "evaluation_data": "<storage_directory>",
            "gpu": "True/False"
        },
        "env": {
            "key": "value",
            ...
        }
    },
    "run_summary": {
     "execution_time": <time>, #in seconds 
     "start_at": <timestamp>, #in seconds 
     "end_at": <timestamp>, #in seconds 
     "outputs": {
        "score": <score>, #float
        "train_data": "<test_storage_directory>", 
        "evaluation_data": "<test_storage_directory>/None", 
        "artifacts_data": "<artifacts_storage_directory>",
         }
    }
}
La carpeta Artefactos, visible solo si no está vacía, es una carpeta que reagrupa todos los artefactos generados por el proceso y se guardan en la carpeta artifacts_directory.
La carpeta Conjunto de datos, existente solo si save_data se estableció en el valor true predeterminado, es una copia de la carpeta del conjunto de datos de la evaluación.

Control del modelo

Como en los procesos de entrenamiento, un usuario puede establecer el parámetro save_test_data = true en datos de instantánea que se transmiten para la evaluación.

¿Te ha resultado útil esta página?

Obtén la ayuda que necesitas
RPA para el aprendizaje - Cursos de automatización
Foro de la comunidad UiPath
Uipath Logo White
Confianza y seguridad
© 2005-2024 UiPath. Todos los derechos reservados.