pub struct TrainingStats {
pub total_loss: f64,
pub policy_loss: f64,
pub value_loss: f64,
pub entropy: f64,
pub kl_divergence: f64,
pub step: usize,
pub avg_reward: Option<f64>,
}Expand description
Training statistics from a policy update.
Mirrors crate::train::ppo::TrainingStats field-for-field for the
quantities a simulator typically needs to log. Stays a separate
struct so the multi-agent message surface does not pull in the
per-update aggregator.
Fields§
§total_loss: f64Total loss (weighted sum of policy / value / entropy / aux).
policy_loss: f64Policy loss component.
value_loss: f64Value loss component.
entropy: f64Entropy bonus.
kl_divergence: f64KL divergence (for monitoring).
step: usizeNumber of gradient updates completed.
avg_reward: Option<f64>Average episode reward (if available).
Trait Implementations§
Source§impl Clone for TrainingStats
impl Clone for TrainingStats
Source§fn clone(&self) -> TrainingStats
fn clone(&self) -> TrainingStats
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for TrainingStats
impl Debug for TrainingStats
Auto Trait Implementations§
impl Freeze for TrainingStats
impl RefUnwindSafe for TrainingStats
impl Send for TrainingStats
impl Sync for TrainingStats
impl Unpin for TrainingStats
impl UnsafeUnpin for TrainingStats
impl UnwindSafe for TrainingStats
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more