[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-09-04。"],[],[],null,["# Choose a custom training method\n\nIf you're writing your own training code instead of using AutoML},\nthere are\nseveral ways of doing custom training to consider. This document provides a\nbrief overview and comparison of the different ways you can run custom training.\n\nCustom training resources on Vertex AI\n--------------------------------------\n\nThere are three types of Vertex AI resources you can create to\ntrain custom models on Vertex AI:\n\n- [Custom jobs](/vertex-ai/docs/training/create-custom-job)\n- [Hyperparameter tuning jobs](/vertex-ai/docs/training/using-hyperparameter-tuning)\n- [Training pipelines](/vertex-ai/docs/training/create-training-pipeline)\n\nWhen you create a *custom job*, you specify settings that Vertex AI\nneeds to run your training code, including:\n\n- One for single-node training ([`WorkerPoolSpec`](/vertex-ai/docs/reference/rest/v1/CustomJobSpec#workerpoolspec)), or multiple worker pools for distributed training\n- Optional settings for configuring job scheduling ([`Scheduling`](/vertex-ai/docs/reference/rest/v1/CustomJobSpec#scheduling)), [setting\n certain environment variables for your training\n code](/vertex-ai/docs/training/code-requirements#environment-variables), [using a custom\n service account](/vertex-ai/docs/general/custom-service-account), and [using VPC Network\n Peering](/vertex-ai/docs/general/vpc-peering)\n\nWithin the worker pool(s), you can specify the following settings:\n\n- [Machine types and accelerators](/vertex-ai/docs/training/configure-compute)\n- [Configuration of what type of training code the worker pool\n runs](/vertex-ai/docs/training/configure-container-settings): either a Python training application ([`PythonPackageSpec`](/vertex-ai/docs/reference/rest/v1/CustomJobSpec#pythonpackagespec)) or a custom container ([`ContainerSpec`](/vertex-ai/docs/reference/rest/v1/CustomJobSpec#containerspec))\n\n[Hyperparameter tuning jobs](/vertex-ai/docs/training/using-hyperparameter-tuning) have additional settings to configure, such as the\nmetric. Learn more about\n[hyperparameter tuning](/vertex-ai/docs/training/hyperparameter-tuning-overview).\n\nA *training pipeline* orchestrates custom training jobs or hyperparameter tuning\njobs with additional steps, such as loading a dataset or uploading the model to\nVertex AI after the training job is successfully completed.\n\n### Custom training resources\n\nTo view existing training pipelines in your project, go to the **Training\nPipelines** page in the **Vertex AI** section of the\nGoogle Cloud console.\n\n[Go to Training pipelines](https://console.cloud.google.com/vertex-ai/training/training-pipelines)\n| **Note:** The **Training pipelines** page shows AutoML training pipelines, in addition to custom training pipelines. You can use the **Model type** column to distinguish between the two.\n\nTo view existing custom jobs in your project, go to the **Custom jobs** page.\n\n[Go to Custom jobs](https://console.cloud.google.com/vertex-ai/training/custom-jobs)\n\nTo view existing hyperparameter tuning jobs in your project, go to the\n**Hyperparameter tuning** page.\n\n[Go to Hyperparameter tuning](https://console.cloud.google.com/vertex-ai/training/hyperparameter-tuning-jobs)\n\nPrebuilt and custom containers\n------------------------------\n\nBefore you submit a custom training job, hyperparameter tuning job, or a\ntraining pipeline to Vertex AI, you need to create a [Python\ntraining application](/vertex-ai/docs/training/create-python-pre-built-container) or a [custom container](/vertex-ai/docs/training/create-custom-container) to define the training code and\ndependencies you want to run on Vertex AI. If you create a Python\ntraining application using TensorFlow, PyTorch, scikit-learn, or XGBoost, you\ncan use our prebuilt containers to run your code. If you're not sure which of\nthese options to choose, refer to the\n[training code requirements](/vertex-ai/docs/training/code-requirements) to learn more.\n\nDistributed training\n--------------------\n\nYou can configure a custom training job, hyperparameter tuning job, or a\ntraining pipeline for distributed training by specifying multiple\nworker pools:\n\n- Use your first worker pool to configure your primary replica, and set the replica count to 1.\n- Add more worker pools to configure worker replicas, parameter server replicas, or evaluator replicas, if your machine learning framework supports these additional cluster tasks for distributed training.\n\nLearn more about\n[using distributed training](/vertex-ai/docs/training/distributed-training).\n\nWhat's next\n-----------\n\n- Learn how to [create a persistent resource](/vertex-ai/docs/training/persistent-resource-create) to run custom training jobs.\n- See [Create custom training jobs](/vertex-ai/docs/training/create-custom-job) to learn how to create custom training jobs to run your custom training applications on Vertex AI.\n- See [Create training pipelines](/vertex-ai/docs/training/create-training-pipeline) to learn how to create training pipelines to run custom training applications on Vertex AI.\n- See [Use hyperparameter tuning](/vertex-ai/docs/training/using-hyperparameter-tuning) to learn about Hyperparameter tuning searches."]]