Struct google_api_proto::google::cloud::aiplatform::v1::study_spec::StudyStoppingConfig
source · pub struct StudyStoppingConfig {
pub should_stop_asap: Option<bool>,
pub minimum_runtime_constraint: Option<StudyTimeConstraint>,
pub maximum_runtime_constraint: Option<StudyTimeConstraint>,
pub min_num_trials: Option<i32>,
pub max_num_trials: Option<i32>,
pub max_num_trials_no_progress: Option<i32>,
pub max_duration_no_progress: Option<Duration>,
}
Expand description
The configuration (stopping conditions) for automated stopping of a Study. Conditions include trial budgets, time budgets, and convergence detection.
Fields§
§should_stop_asap: Option<bool>
If true, a Study enters STOPPING_ASAP whenever it would normally enters STOPPING state.
The bottom line is: set to true if you want to interrupt on-going evaluations of Trials as soon as the study stopping condition is met. (Please see Study.State documentation for the source of truth).
minimum_runtime_constraint: Option<StudyTimeConstraint>
Each “stopping rule” in this proto specifies an “if” condition. Before
Vizier would generate a new suggestion, it first checks each specified
stopping rule, from top to bottom in this list.
Note that the first few rules (e.g. minimum_runtime_constraint,
min_num_trials) will prevent other stopping rules from being evaluated
until they are met. For example, setting min_num_trials=5
and
always_stop_after= 1 hour
means that the Study will ONLY stop after it
has 5 COMPLETED trials, even if more than an hour has passed since its
creation. It follows the first applicable rule (whose “if” condition is
satisfied) to make a stopping decision. If none of the specified rules
are applicable, then Vizier decides that the study should not stop.
If Vizier decides that the study should stop, the study enters
STOPPING state (or STOPPING_ASAP if should_stop_asap = true).
IMPORTANT: The automatic study state transition happens precisely as
described above; that is, deleting trials or updating StudyConfig NEVER
automatically moves the study state back to ACTIVE. If you want to
resume a Study that was stopped, 1) change the stopping conditions if
necessary, 2) activate the study, and then 3) ask for suggestions.
If the specified time or duration has not passed, do not stop the
study.
maximum_runtime_constraint: Option<StudyTimeConstraint>
If the specified time or duration has passed, stop the study.
min_num_trials: Option<i32>
If there are fewer than this many COMPLETED trials, do not stop the study.
max_num_trials: Option<i32>
If there are more than this many trials, stop the study.
max_num_trials_no_progress: Option<i32>
If the objective value has not improved for this many consecutive trials, stop the study.
WARNING: Effective only for single-objective studies.
max_duration_no_progress: Option<Duration>
If the objective value has not improved for this much time, stop the study.
WARNING: Effective only for single-objective studies.
Trait Implementations§
source§impl Clone for StudyStoppingConfig
impl Clone for StudyStoppingConfig
source§fn clone(&self) -> StudyStoppingConfig
fn clone(&self) -> StudyStoppingConfig
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for StudyStoppingConfig
impl Debug for StudyStoppingConfig
source§impl Default for StudyStoppingConfig
impl Default for StudyStoppingConfig
source§impl Message for StudyStoppingConfig
impl Message for StudyStoppingConfig
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.source§impl PartialEq for StudyStoppingConfig
impl PartialEq for StudyStoppingConfig
source§fn eq(&self, other: &StudyStoppingConfig) -> bool
fn eq(&self, other: &StudyStoppingConfig) -> bool
self
and other
values to be equal, and is used
by ==
.impl Copy for StudyStoppingConfig
impl StructuralPartialEq for StudyStoppingConfig
Auto Trait Implementations§
impl Freeze for StudyStoppingConfig
impl RefUnwindSafe for StudyStoppingConfig
impl Send for StudyStoppingConfig
impl Sync for StudyStoppingConfig
impl Unpin for StudyStoppingConfig
impl UnwindSafe for StudyStoppingConfig
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request