ai-center
latest
false
重要 :
请注意此内容已使用机器翻译进行了部分本地化。
UiPath logo, featuring letters U and I in white
AI Center
Automation CloudAutomation SuiteStandalone
Last updated 2024年11月19日

完整管道

完整管道用于一次性训练新的机器学习模型并评估此新模型的性能。此外,在训练之前运行预处理步骤,从而允许对经过训练的机器学习模型进行数据操作/训练。

要使用此管道,包必须包含用于处理数据以及训练、评估和保存模型的代码(train.py 文件中的 process_data()train ()evaluate()save() 函数)。此代码与数据集或数据集中的子文件夹以及评估数据集(可选)一起生成新的包版本、分数(evaluate() 函数为新版本的模型返回的内容)以及用户想要保留的任何其他输出。

创建完整管道

此处所述创建新的完整管道。确保提供以下特定于完整管道的信息:
  • 在“管道类型”字段中,选择“完整管道运行”
  • “选择输入数据集”字段中,选择要从中导入数据以进行完整训练的数据集或文件夹。在管道运行时,该数据集/文件夹中的所有文件应在 data_directory 变量中存储的路径上本地可用。
  • (可选)在“选择评估数据集”字段中,选择要从中导入数据以进行评估的数据集或文件夹。在管道运行时,该数据集/文件夹中的所有文件应在 test_data_directory 变量中存储的路径上本地可用。如果未选择任何文件夹,则预计您的管道会将某些内容写入到 process_data 函数的 test_data_directory 变量中存储的目录。如果您未选择文件夹,并且您的 process_data 未写入到 test_data_directory,则传递到评估函数的目录将为空。
  • “输入参数”部分中,输入管道定义和使用的环境变量(如果有)。环境变量包括:
    • training_data_directory,默认值为 dataset/training:定义管道可在本地访问训练数据的位置。此目录用作 train() 函数的输入。大多数用户将不必通过用户界面覆盖此参数,只需将数据写入到 process_data 函数的 os.environ['training_data_directory'] 中,并且预期可以使用 train(self, data_directory 来调用 os.environ['training_data_directory'] 中的参数 data_directory
    • test_data_directory,默认值为 dataset/test:定义管道可在本地访问测试数据的位置。此目录用作 evaluate() 函数的输入。大多数用户将不必通过用户界面覆盖此参数,只需将数据写入到 process_data 函数的 os.environ['test_data_directory'] 中,并且预期可以使用 evaluate(self, data_directory 来调用 os.environ['test_data_directory'] 中的参数 data_directory
    • artifacts_directory,默认值为 artifacts:这定义目录的路径,该目录将保留为与此管道相关的辅助数据。大多数用户(如果不是所有用户)都不必通过用户界面覆盖此参数。管道执行期间可以保存任何内容,包括图像、pdf 和子文件夹。具体而言,代码在路径 os.environ['artifacts_directory'] 指定的目录中写入的所有数据都会在管道运行结束时上传,并且可以从“管道详细信息”页面中查看。
    • save_training_data,默认值为 true:如果设置为 true,则 training_data_directory 文件夹将在管道运行结束时作为管道的输出上传到目录 training_data_directory 下。
    • save_test_data,默认值为 true:如果设置为 true,则 test_data_directory 文件夹将在管道运行结束时作为管道的输出上传到目录 test_data_directory 下。
根据是否选择评估数据集,您可以创建完整管道:
  • 显式选择评估数据

    观看以下视频,了解如何使用新训练的包版本 1.1 来创建完整管道。请务必选择与输入数据集和评估数据集相同的数据集(在本示例中为教程数据集)。

  • 不显式选择评估数据

    观看以下视频,了解如何使用新训练的包版本 1.1 来创建完整管道。选择输入数据集,但取消选择评估数据集。

完整管道运行执行的结果

注意:管道执行可能需要一些时间。稍后请返回以查看其状态。

执行管道后,在“管道”页面中,管道的状态将更改为“成功”“管道详细信息”页面会显示与管道运行相关的任意文件和文件夹。

  • train() 函数在 train.csv 上训练,而不在数据文件夹的未更改内容(example1.txtexample2.txt)上训练。process_data 可用于根据任何用户定义的参数动态拆分数据。
  • The first full pipeline runs evaluations on a directory with example1.txt,example2.txt, and test.csv. The second full pipeline runs evaluations on a directory with only test.csv. This is the difference in not selecting an evaluation set explicitly when creating the second full pipeline run. This way you can have evaluations on new data from UiPath® Robots, as well as dynamically split data already in your project.
  • 每个单独的组件都可以将任意工件(直方图、TensorBoard 日志和分布图等)写入到管道。
  • ML 包 zip 文件是由训练管道自动生成的新的包版本。
  • artifacts 文件夹(仅在不为空时可见)用于对管道生成的所有工件进行重新分组,并且保存在 artifacts_directory 文件夹下。
  • training 文件夹(仅在 save_training_data 设置为 true 时可见)是 training_data_directory 文件夹的副本。
  • test 文件夹(仅在 save_training_data 设置为 true 时可见)是 test_data_directory 文件夹的副本。

用于构建自己的完整管道的类推

以下是某个包(例如版本 1.1)上的完整管道执行的概念类推,以及版本 1.0 上训练管道的输出。

重要事项:这是一个简化的示例。其目的是说明数据集和包在完整管道中的交互方式。这些步骤仅是概念性步骤,并不代表平台的工作方式。
  1. 将包版本 1.1 复制到 ~/mlpackage
  2. 创建名为 ./dataset 的目录。
  3. 将输入数据集的内容复制到 ./dataset
  4. 如果用户在“选择评估数据集”字段中设置了某些内容,则复制该评估数据集并将其放在 ./dataset/test 中。
  5. 设置环境变量 training_data_directory=./dataset/trainingtest_data_directory=./dataset/test
  6. 执行以下 python 代码:
    from train import Main 
    m = Main() 
    m.process_data('./dataset') 
    m.evaluate(os.environ['test_data_directory']) 
    m.train(os.environ['training_data_directory']) 
    m.evaluate(os.environ['test_data_directory'])from train import Main 
    m = Main() 
    m.process_data('./dataset') 
    m.evaluate(os.environ['test_data_directory']) 
    m.train(os.environ['training_data_directory']) 
    m.evaluate(os.environ['test_data_directory'])
  7. ~/mlpackage 的内容保留为包版本 1.2。如果写入,则保留工件。如果 save_data 设置为 true,则生成数据的快照。
    注意:环境变量 training_data_directorytest_data_directory 的存在意味着 process_data 可以使用这些变量来动态拆分数据。

管道输出

_results.json 文件包含管道运行执行的摘要,并显示完整管道的所有输入/输出和执行时间。
{
    "parameters": {
        "pipeline": "< Pipeline_name >",
        "inputs": {
            "package": "<Package_name>",
            "version": "<version_number>",
      "input_data": "<storage_directory>",       
            "evaluation_data": "<storage_directory>/None",
            "gpu": "True/False"
        },
        "env": {
            "key": "value",
            ...
        }
    },
    "run_summary": {
     "execution_time": <time>, #in seconds 
     "start_at": <timestamp>, #in seconds 
     "end_at": <timestamp>, #in seconds 
     "outputs": {
        "previous_score": <previous_score>, #float
        "current_score": <current_score>, #float
        "training_data": "<training_storage_directory>/None", 
        "test_data": "<test_storage_directory>/None",
        "artifacts_data": "<artifacts_storage_directory>",
        "package": "<Package_name>",
        "version": "<new_version>"  
        }
    }
}{
    "parameters": {
        "pipeline": "< Pipeline_name >",
        "inputs": {
            "package": "<Package_name>",
            "version": "<version_number>",
      "input_data": "<storage_directory>",       
            "evaluation_data": "<storage_directory>/None",
            "gpu": "True/False"
        },
        "env": {
            "key": "value",
            ...
        }
    },
    "run_summary": {
     "execution_time": <time>, #in seconds 
     "start_at": <timestamp>, #in seconds 
     "end_at": <timestamp>, #in seconds 
     "outputs": {
        "previous_score": <previous_score>, #float
        "current_score": <current_score>, #float
        "training_data": "<training_storage_directory>/None", 
        "test_data": "<test_storage_directory>/None",
        "artifacts_data": "<artifacts_storage_directory>",
        "package": "<Package_name>",
        "version": "<new_version>"  
        }
    }
}

模型监管

与其他管道类型一样,如果将参数 save_training_data 设置为 true 并将参数 save_test_data 设置为 true,则可以在快照中保留训练数据和评估数据。
  • 创建完整管道
  • 完整管道运行执行的结果
  • 用于构建自己的完整管道的类推
  • 管道输出
  • 模型监管

此页面有帮助吗?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath Logo White
信任与安全
© 2005-2024 UiPath。保留所有权利。