Struct CrossEntropyLossConfig
pub struct CrossEntropyLossConfig {
pub pad_tokens: Option<Vec<usize>>,
pub weights: Option<Vec<f32>>,
pub smoothing: Option<f32>,
pub logits: bool,
}
Expand description
Configuration to create a Cross-entropy loss using the init function.
Fields§
§pad_tokens: Option<Vec<usize>>
Create padded cross entropy.
Prevents pad tokens from impacting loss calculation.
weights: Option<Vec<f32>>
Create weighted cross-entropy.
The loss of a specific sample will simply be given by: weight * log(p(x)) * 1,
§Pre-conditions
- The order of the weight vector should correspond to the label integer assignment.
- Targets assigned negative Int’s will not be allowed.
smoothing: Option<f32>
Create cross-entropy with label smoothing.
Hard labels {0, 1} will be changed to y_smoothed = y(1 - a) + a / nr_classes. Alpha = 0 would be the same as default.
logits: bool
Create cross-entropy with probabilities as input instead of logits.
Implementations§
§impl CrossEntropyLossConfig
impl CrossEntropyLossConfig
pub fn new() -> CrossEntropyLossConfig
pub fn new() -> CrossEntropyLossConfig
Create a new instance of the config.
§impl CrossEntropyLossConfig
impl CrossEntropyLossConfig
pub fn with_logits(self, logits: bool) -> CrossEntropyLossConfig
pub fn with_logits(self, logits: bool) -> CrossEntropyLossConfig
Create cross-entropy with probabilities as input instead of logits.
pub fn with_pad_tokens(
self,
pad_tokens: Option<Vec<usize>>,
) -> CrossEntropyLossConfig
pub fn with_pad_tokens( self, pad_tokens: Option<Vec<usize>>, ) -> CrossEntropyLossConfig
Set the default value for the field.
pub fn with_weights(self, weights: Option<Vec<f32>>) -> CrossEntropyLossConfig
pub fn with_weights(self, weights: Option<Vec<f32>>) -> CrossEntropyLossConfig
Set the default value for the field.
pub fn with_smoothing(self, smoothing: Option<f32>) -> CrossEntropyLossConfig
pub fn with_smoothing(self, smoothing: Option<f32>) -> CrossEntropyLossConfig
Set the default value for the field.
§impl CrossEntropyLossConfig
impl CrossEntropyLossConfig
pub fn init<B>(&self, device: &<B as Backend>::Device) -> CrossEntropyLoss<B>where
B: Backend,
pub fn init<B>(&self, device: &<B as Backend>::Device) -> CrossEntropyLoss<B>where
B: Backend,
Initialize Cross-entropy loss.
Trait Implementations§
§impl Clone for CrossEntropyLossConfig
impl Clone for CrossEntropyLossConfig
§fn clone(&self) -> CrossEntropyLossConfig
fn clone(&self) -> CrossEntropyLossConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more§impl Config for CrossEntropyLossConfig
impl Config for CrossEntropyLossConfig
§impl Debug for CrossEntropyLossConfig
impl Debug for CrossEntropyLossConfig
§impl<'de> Deserialize<'de> for CrossEntropyLossConfig
impl<'de> Deserialize<'de> for CrossEntropyLossConfig
§fn deserialize<D>(
deserializer: D,
) -> Result<CrossEntropyLossConfig, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D,
) -> Result<CrossEntropyLossConfig, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
§impl Display for CrossEntropyLossConfig
impl Display for CrossEntropyLossConfig
§impl Serialize for CrossEntropyLossConfig
impl Serialize for CrossEntropyLossConfig
§fn serialize<S>(
&self,
serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
fn serialize<S>(
&self,
serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
Auto Trait Implementations§
impl Freeze for CrossEntropyLossConfig
impl RefUnwindSafe for CrossEntropyLossConfig
impl Send for CrossEntropyLossConfig
impl Sync for CrossEntropyLossConfig
impl Unpin for CrossEntropyLossConfig
impl UnwindSafe for CrossEntropyLossConfig
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§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> 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>
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>
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§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> ToCompactString for Twhere
T: Display,
impl<T> ToCompactString for Twhere
T: Display,
§fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
ToCompactString::to_compact_string()
] Read more§fn to_compact_string(&self) -> CompactString
fn to_compact_string(&self) -> CompactString
CompactString
]. Read more§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string
, but without panic on OOM.