pub struct ExtendedAnomalyLabel {Show 14 fields
pub base: LabeledAnomaly,
pub category: AnomalyCategory,
pub severity: AnomalySeverity,
pub detection_difficulty: AnomalyDetectionDifficulty,
pub recommended_methods: Vec<DetectionMethod>,
pub key_indicators: Vec<String>,
pub ground_truth_certainty: GroundTruthCertainty,
pub contributing_factors: Vec<ContributingFactor>,
pub related_entity_ids: Vec<String>,
pub secondary_categories: Vec<AnomalyCategory>,
pub scheme_id: Option<String>,
pub scheme_stage: Option<u32>,
pub is_near_miss: bool,
pub near_miss_explanation: Option<String>,
}Expand description
Extended anomaly label with comprehensive multi-dimensional classification.
This extends the base EnhancedAnomalyLabel with additional fields for
severity scoring, detection difficulty, recommended methods, and ground truth.
Fields§
§base: LabeledAnomalyBase labeled anomaly.
category: AnomalyCategoryEnhanced category classification.
severity: AnomalySeverityStructured severity assessment.
detection_difficulty: AnomalyDetectionDifficultyDetection difficulty classification.
recommended_methods: Vec<DetectionMethod>Recommended detection methods for this anomaly.
key_indicators: Vec<String>Key indicators that should trigger detection.
ground_truth_certainty: GroundTruthCertaintyGround truth certainty level.
contributing_factors: Vec<ContributingFactor>Contributing factors to confidence/severity.
Related entity IDs (vendors, customers, employees, etc.).
secondary_categories: Vec<AnomalyCategory>Secondary categories for multi-label classification.
scheme_id: Option<String>Scheme ID if part of a multi-stage fraud scheme.
scheme_stage: Option<u32>Stage number within a scheme (1-indexed).
is_near_miss: boolWhether this is a near-miss (suspicious but legitimate).
near_miss_explanation: Option<String>Explanation if this is a near-miss.
Implementations§
Source§impl ExtendedAnomalyLabel
impl ExtendedAnomalyLabel
Sourcepub fn from_base(base: LabeledAnomaly) -> Self
pub fn from_base(base: LabeledAnomaly) -> Self
Creates an extended label from a base labeled anomaly.
Sourcepub fn with_severity(self, severity: AnomalySeverity) -> Self
pub fn with_severity(self, severity: AnomalySeverity) -> Self
Sets the severity assessment.
Sourcepub fn with_difficulty(self, difficulty: AnomalyDetectionDifficulty) -> Self
pub fn with_difficulty(self, difficulty: AnomalyDetectionDifficulty) -> Self
Sets the detection difficulty.
Sourcepub fn with_method(self, method: DetectionMethod) -> Self
pub fn with_method(self, method: DetectionMethod) -> Self
Adds a recommended detection method.
Sourcepub fn with_methods(self, methods: Vec<DetectionMethod>) -> Self
pub fn with_methods(self, methods: Vec<DetectionMethod>) -> Self
Sets the recommended detection methods.
Sourcepub fn with_indicator(self, indicator: impl Into<String>) -> Self
pub fn with_indicator(self, indicator: impl Into<String>) -> Self
Adds a key indicator.
Sourcepub fn with_certainty(self, certainty: GroundTruthCertainty) -> Self
pub fn with_certainty(self, certainty: GroundTruthCertainty) -> Self
Sets the ground truth certainty.
Sourcepub fn with_factor(self, factor: ContributingFactor) -> Self
pub fn with_factor(self, factor: ContributingFactor) -> Self
Adds a contributing factor.
Sourcepub fn with_entity(self, entity_id: impl Into<String>) -> Self
pub fn with_entity(self, entity_id: impl Into<String>) -> Self
Adds a related entity ID.
Sourcepub fn with_secondary_category(self, category: AnomalyCategory) -> Self
pub fn with_secondary_category(self, category: AnomalyCategory) -> Self
Adds a secondary category.
Sourcepub fn with_scheme(self, scheme_id: impl Into<String>, stage: u32) -> Self
pub fn with_scheme(self, scheme_id: impl Into<String>, stage: u32) -> Self
Sets scheme information.
Sourcepub fn as_near_miss(self, explanation: impl Into<String>) -> Self
pub fn as_near_miss(self, explanation: impl Into<String>) -> Self
Marks this as a near-miss with explanation.
Sourcepub fn to_features(&self) -> Vec<f64>
pub fn to_features(&self) -> Vec<f64>
Converts to an extended feature vector for ML.
Returns base features (15) + extended features (15) = 30 features.
Sourcepub fn feature_count() -> usize
pub fn feature_count() -> usize
Returns the number of features in the extended feature vector.
Sourcepub fn feature_names() -> Vec<&'static str>
pub fn feature_names() -> Vec<&'static str>
Returns feature names for the extended feature vector.
Trait Implementations§
Source§impl Clone for ExtendedAnomalyLabel
impl Clone for ExtendedAnomalyLabel
Source§fn clone(&self) -> ExtendedAnomalyLabel
fn clone(&self) -> ExtendedAnomalyLabel
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more