Class StudySpec (1.29.0)

StudySpec(mapping=None, *, ignore_unknown_fields=False, **kwargs)

Represents specification of a Study.

This message has oneof_ fields (mutually exclusive fields). For each oneof, at most one member field can be set at the same time. Setting any member of the oneof automatically clears all other members.

.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields

Attributes

NameDescription
decay_curve_stopping_spec google.cloud.aiplatform_v1beta1.types.StudySpec.DecayCurveAutomatedStoppingSpec
The automated early stopping spec using decay curve rule. This field is a member of oneof_ automated_stopping_spec.
median_automated_stopping_spec google.cloud.aiplatform_v1beta1.types.StudySpec.MedianAutomatedStoppingSpec
The automated early stopping spec using median rule. This field is a member of oneof_ automated_stopping_spec.
convex_stop_config google.cloud.aiplatform_v1beta1.types.StudySpec.ConvexStopConfig
Deprecated. The automated early stopping using convex stopping rule. This field is a member of oneof_ automated_stopping_spec.
convex_automated_stopping_spec google.cloud.aiplatform_v1beta1.types.StudySpec.ConvexAutomatedStoppingSpec
The automated early stopping spec using convex stopping rule. This field is a member of oneof_ automated_stopping_spec.
metrics MutableSequence[google.cloud.aiplatform_v1beta1.types.StudySpec.MetricSpec]
Required. Metric specs for the Study.
parameters MutableSequence[google.cloud.aiplatform_v1beta1.types.StudySpec.ParameterSpec]
Required. The set of parameters to tune.
algorithm google.cloud.aiplatform_v1beta1.types.StudySpec.Algorithm
The search algorithm specified for the Study.
observation_noise google.cloud.aiplatform_v1beta1.types.StudySpec.ObservationNoise
The observation noise level of the study. Currently only supported by the Vertex AI Vizier service. Not supported by HyperparameterTuningJob or TrainingPipeline.
measurement_selection_type google.cloud.aiplatform_v1beta1.types.StudySpec.MeasurementSelectionType
Describe which measurement selection type will be used
transfer_learning_config google.cloud.aiplatform_v1beta1.types.StudySpec.TransferLearningConfig
The configuration info/options for transfer learning. Currently supported for Vertex AI Vizier service, not HyperParameterTuningJob

Classes

Algorithm

Algorithm(value)

The available search algorithms for the Study.

Values: ALGORITHM_UNSPECIFIED (0): The default algorithm used by Vertex AI for hyperparameter tuning <https://cloud.google.com/vertex-ai/docs/training/hyperparameter-tuning-overview> and Vertex AI Vizier <https://cloud.google.com/vertex-ai/docs/vizier>. GRID_SEARCH (2): Simple grid search within the feasible space. To use grid search, all parameters must be INTEGER, CATEGORICAL, or DISCRETE. RANDOM_SEARCH (3): Simple random search within the feasible space.

ConvexAutomatedStoppingSpec

ConvexAutomatedStoppingSpec(mapping=None, *, ignore_unknown_fields=False, **kwargs)

Configuration for ConvexAutomatedStoppingSpec. When there are enough completed trials (configured by min_measurement_count), for pending trials with enough measurements and steps, the policy first computes an overestimate of the objective value at max_num_steps according to the slope of the incomplete objective value curve. No prediction can be made if the curve is completely flat. If the overestimation is worse than the best objective value of the completed trials, this pending trial will be early-stopped, but a last measurement will be added to the pending trial with max_num_steps and predicted objective value from the autoregression model.

.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields

ConvexStopConfig

ConvexStopConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)

Configuration for ConvexStopPolicy.

DecayCurveAutomatedStoppingSpec

DecayCurveAutomatedStoppingSpec(
    mapping=None, *, ignore_unknown_fields=False, **kwargs
)

The decay curve automated stopping rule builds a Gaussian Process Regressor to predict the final objective value of a Trial based on the already completed Trials and the intermediate measurements of the current Trial. Early stopping is requested for the current Trial if there is very low probability to exceed the optimal value found so far.

MeasurementSelectionType

MeasurementSelectionType(value)

This indicates which measurement to use if/when the service automatically selects the final measurement from previously reported intermediate measurements. Choose this based on two considerations: A) Do you expect your measurements to monotonically improve? If so, choose LAST_MEASUREMENT. On the other hand, if you're in a situation where your system can "over-train" and you expect the performance to get better for a while but then start declining, choose BEST_MEASUREMENT. B) Are your measurements significantly noisy and/or irreproducible? If so, BEST_MEASUREMENT will tend to be over-optimistic, and it may be better to choose LAST_MEASUREMENT. If both or neither of (A) and (B) apply, it doesn't matter which selection type is chosen.

Values: MEASUREMENT_SELECTION_TYPE_UNSPECIFIED (0): Will be treated as LAST_MEASUREMENT. LAST_MEASUREMENT (1): Use the last measurement reported. BEST_MEASUREMENT (2): Use the best measurement reported.

MedianAutomatedStoppingSpec

MedianAutomatedStoppingSpec(mapping=None, *, ignore_unknown_fields=False, **kwargs)

The median automated stopping rule stops a pending Trial if the Trial's best objective_value is strictly below the median 'performance' of all completed Trials reported up to the Trial's last measurement. Currently, 'performance' refers to the running average of the objective values reported by the Trial in each measurement.

MetricSpec

MetricSpec(mapping=None, *, ignore_unknown_fields=False, **kwargs)

ObservationNoise

ObservationNoise(value)

Describes the noise level of the repeated observations. "Noisy" means that the repeated observations with the same Trial parameters may lead to different metric evaluations.

Values: OBSERVATION_NOISE_UNSPECIFIED (0): The default noise level chosen by Vertex AI. LOW (1): Vertex AI assumes that the objective function is (nearly) perfectly reproducible, and will never repeat the same Trial parameters. HIGH (2): Vertex AI will estimate the amount of noise in metric evaluations, it may repeat the same Trial parameters more than once.

ParameterSpec

ParameterSpec(mapping=None, *, ignore_unknown_fields=False, **kwargs)

Represents a single parameter to optimize.

This message has oneof_ fields (mutually exclusive fields). For each oneof, at most one member field can be set at the same time. Setting any member of the oneof automatically clears all other members.

.. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields

TransferLearningConfig

TransferLearningConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)

This contains flag for manually disabling transfer learning for a study. The names of prior studies being used for transfer learning (if any) are also listed here.