Expand description
Synthetic Data Evaluation Framework
This crate provides comprehensive evaluation capabilities for validating the quality and correctness of generated synthetic financial data.
§Features
- Statistical Quality: Benford’s Law, amount distributions, line item patterns
- Semantic Coherence: Balance sheet validation, subledger reconciliation
- Data Quality: Uniqueness, completeness, format consistency
- ML-Readiness: Feature distributions, label quality, graph structure
- Reporting: HTML and JSON reports with pass/fail thresholds
§Example
ⓘ
use datasynth_eval::{Evaluator, EvaluationConfig};
let config = EvaluationConfig::default();
let evaluator = Evaluator::new(config);
// Evaluate generated data
let result = evaluator.evaluate(&generation_result)?;
// Generate report
result.generate_html_report("evaluation_report.html")?;Re-exports§
pub use config::EvaluationConfig;pub use config::EvaluationThresholds;pub use config::PrivacyEvaluationConfig;pub use error::EvalError;pub use error::EvalResult;pub use statistical::AmountDistributionAnalysis;pub use statistical::AmountDistributionAnalyzer;pub use statistical::AnomalyRealismEvaluation;pub use statistical::AnomalyRealismEvaluator;pub use statistical::BenfordAnalysis;pub use statistical::BenfordAnalyzer;pub use statistical::BenfordConformity;pub use statistical::DetectionDifficulty;pub use statistical::DriftDetectionAnalysis;pub use statistical::DriftDetectionAnalyzer;pub use statistical::DriftDetectionEntry;pub use statistical::DriftDetectionMetrics;pub use statistical::DriftEventCategory;pub use statistical::LabeledDriftEvent;pub use statistical::LabeledEventAnalysis;pub use statistical::LineItemAnalysis;pub use statistical::LineItemAnalyzer;pub use statistical::LineItemEntry;pub use statistical::StatisticalEvaluation;pub use statistical::TemporalAnalysis;pub use statistical::TemporalAnalyzer;pub use statistical::TemporalEntry;pub use coherence::AccountType;pub use coherence::ApprovalLevelData;pub use coherence::AuditEvaluation;pub use coherence::AuditEvaluator;pub use coherence::AuditFindingData;pub use coherence::AuditRiskData;pub use coherence::AuditTrailEvaluation;pub use coherence::AuditTrailGap;pub use coherence::BalanceSheetEvaluation;pub use coherence::BalanceSheetEvaluator;pub use coherence::BalanceSnapshot;pub use coherence::BankReconciliationEvaluation;pub use coherence::BankReconciliationEvaluator;pub use coherence::BidEvaluationData;pub use coherence::BudgetVarianceData;pub use coherence::CashPositionData;pub use coherence::CoherenceEvaluation;pub use coherence::ConcentrationMetrics;pub use coherence::CountryPackData;pub use coherence::CountryPackEvaluation;pub use coherence::CountryPackEvaluator;pub use coherence::CountryPackThresholds;pub use coherence::CovenantData;pub use coherence::CrossProcessEvaluation;pub use coherence::CrossProcessEvaluator;pub use coherence::CycleCountData;pub use coherence::DocumentChainEvaluation;pub use coherence::DocumentChainEvaluator;pub use coherence::DocumentReferenceData;pub use coherence::EarnedValueData;pub use coherence::EntityReferenceData;pub use coherence::EsgEvaluation;pub use coherence::EsgEvaluator;pub use coherence::EsgThresholds;pub use coherence::ExpenseReportData;pub use coherence::FairValueEvaluation;pub use coherence::FinancialReportingEvaluation;pub use coherence::FinancialReportingEvaluator;pub use coherence::FinancialStatementData;pub use coherence::FrameworkViolation;pub use coherence::GovernanceData;pub use coherence::HedgeEffectivenessData;pub use coherence::HolidayData;pub use coherence::HrPayrollEvaluation;pub use coherence::HrPayrollEvaluator;pub use coherence::ICMatchingData;pub use coherence::ICMatchingEvaluation;pub use coherence::ICMatchingEvaluator;pub use coherence::ImpairmentEvaluation;pub use coherence::IsaComplianceEvaluation;pub use coherence::KpiData;pub use coherence::LeaseAccountingEvaluation;pub use coherence::LeaseAccountingEvaluator;pub use coherence::LeaseEvaluation;pub use coherence::ManufacturingEvaluation;pub use coherence::ManufacturingEvaluator;pub use coherence::MaterialityData;pub use coherence::NettingData;pub use coherence::NetworkEdge;pub use coherence::NetworkEvaluation;pub use coherence::NetworkEvaluator;pub use coherence::NetworkNode;pub use coherence::NetworkThresholds;pub use coherence::O2CChainData;pub use coherence::P2PChainData;pub use coherence::PayrollHoursData;pub use coherence::PayrollLineItemData;pub use coherence::PayrollRunData;pub use coherence::PcaobComplianceEvaluation;pub use coherence::PerformanceObligation;pub use coherence::ProductionOrderData;pub use coherence::ProjectAccountingEvaluation;pub use coherence::ProjectAccountingEvaluator;pub use coherence::ProjectAccountingThresholds;pub use coherence::ProjectRevenueData;pub use coherence::QualityInspectionData;pub use coherence::QuoteLineData;pub use coherence::ReconciliationData;pub use coherence::ReferentialData;pub use coherence::ReferentialIntegrityEvaluation;pub use coherence::ReferentialIntegrityEvaluator;pub use coherence::RetainageData;pub use coherence::RevenueContract;pub use coherence::RevenueRecognitionEvaluation;pub use coherence::RevenueRecognitionEvaluator;pub use coherence::RoutingOperationData;pub use coherence::SafetyMetricData;pub use coherence::SalesQuoteData;pub use coherence::SalesQuoteEvaluation;pub use coherence::SalesQuoteEvaluator;pub use coherence::SalesQuoteThresholds;pub use coherence::ScorecardCoverageData;pub use coherence::SourcingEvaluation;pub use coherence::SourcingEvaluator;pub use coherence::SourcingProjectData;pub use coherence::SoxComplianceEvaluation;pub use coherence::SpendAnalysisData;pub use coherence::StandardsComplianceEvaluation;pub use coherence::StandardsThresholds;pub use coherence::StrengthStats;pub use coherence::SubledgerEvaluator;pub use coherence::SubledgerReconciliationEvaluation;pub use coherence::SupplierEsgData;pub use coherence::TaxEvaluation;pub use coherence::TaxEvaluator;pub use coherence::TaxLineData;pub use coherence::TaxRateData;pub use coherence::TaxReturnData;pub use coherence::TaxThresholds;pub use coherence::TimeEntryData;pub use coherence::TreasuryEvaluation;pub use coherence::TreasuryEvaluator;pub use coherence::TreasuryThresholds;pub use coherence::VariableConsideration;pub use coherence::ViolationSeverity;pub use coherence::WaterUsageData;pub use coherence::WithholdingData;pub use coherence::WorkpaperData;pub use quality::CompletenessAnalysis;pub use quality::CompletenessAnalyzer;pub use quality::ConsistencyAnalysis;pub use quality::ConsistencyAnalyzer;pub use quality::ConsistencyRule;pub use quality::DuplicateInfo;pub use quality::FieldCompleteness;pub use quality::FieldDefinition;pub use quality::FieldValue;pub use quality::FormatAnalysis;pub use quality::FormatAnalyzer;pub use quality::FormatVariation;pub use quality::QualityEvaluation;pub use quality::UniqueRecord;pub use quality::UniquenessAnalysis;pub use quality::UniquenessAnalyzer;pub use ml::AnomalyScoringAnalysis;pub use ml::AnomalyScoringAnalyzer;pub use ml::CrossModalAnalysis;pub use ml::CrossModalAnalyzer;pub use ml::DomainGapAnalysis;pub use ml::DomainGapAnalyzer;pub use ml::EmbeddingReadinessAnalysis;pub use ml::EmbeddingReadinessAnalyzer;pub use ml::FeatureAnalysis;pub use ml::FeatureAnalyzer;pub use ml::FeatureQualityAnalysis;pub use ml::FeatureQualityAnalyzer;pub use ml::FeatureStats;pub use ml::GnnReadinessAnalysis;pub use ml::GnnReadinessAnalyzer;pub use ml::GraphAnalysis;pub use ml::GraphAnalyzer;pub use ml::GraphMetrics;pub use ml::LabelAnalysis;pub use ml::LabelAnalyzer;pub use ml::LabelDistribution;pub use ml::MLReadinessEvaluation;pub use ml::SchemeDetectabilityAnalysis;pub use ml::SchemeDetectabilityAnalyzer;pub use ml::SplitAnalysis;pub use ml::SplitAnalyzer;pub use ml::SplitMetrics;pub use ml::TemporalFidelityAnalysis;pub use ml::TemporalFidelityAnalyzer;pub use report::BaselineComparison;pub use report::ComparisonResult;pub use report::EvaluationReport;pub use report::HtmlReportGenerator;pub use report::JsonReportGenerator;pub use report::MetricChange;pub use report::ReportMetadata;pub use report::ThresholdChecker;pub use report::ThresholdResult;pub use tuning::ConfigSuggestion;pub use tuning::ConfigSuggestionGenerator;pub use tuning::TuningAnalyzer;pub use tuning::TuningCategory;pub use tuning::TuningOpportunity;pub use enhancement::AutoTuneResult;pub use enhancement::AutoTuner;pub use enhancement::ConfigPatch;pub use enhancement::EnhancementReport;pub use enhancement::Recommendation;pub use enhancement::RecommendationCategory;pub use enhancement::RecommendationEngine;pub use enhancement::RecommendationPriority;pub use enhancement::RootCause;pub use enhancement::SuggestedAction;pub use privacy::LinkageAttack;pub use privacy::LinkageConfig;pub use privacy::LinkageResults;pub use privacy::MembershipInferenceAttack;pub use privacy::MiaConfig;pub use privacy::MiaResults;pub use privacy::NistAlignmentReport;pub use privacy::NistCriterion;pub use privacy::PrivacyEvaluation;pub use privacy::SynQPMatrix;pub use privacy::SynQPQuadrant;pub use benchmarks::acfe_calibrated_1k;pub use benchmarks::acfe_collusion_5k;pub use benchmarks::acfe_management_override_2k;pub use benchmarks::all_acfe_benchmarks;pub use benchmarks::all_benchmarks;pub use benchmarks::all_industry_benchmarks;pub use benchmarks::anomaly_bench_1k;pub use benchmarks::data_quality_100k;pub use benchmarks::entity_match_5k;pub use benchmarks::financial_services_fraud_5k;pub use benchmarks::fraud_detect_10k;pub use benchmarks::get_benchmark;pub use benchmarks::get_industry_benchmark;pub use benchmarks::graph_fraud_10k;pub use benchmarks::healthcare_fraud_5k;pub use benchmarks::manufacturing_fraud_5k;pub use benchmarks::retail_fraud_10k;pub use benchmarks::technology_fraud_3k;pub use benchmarks::AcfeAlignment;pub use benchmarks::AcfeCalibration;pub use benchmarks::AcfeCategoryDistribution;pub use benchmarks::BaselineModelType;pub use benchmarks::BaselineResult;pub use benchmarks::BenchmarkBuilder;pub use benchmarks::BenchmarkSuite;pub use benchmarks::BenchmarkTaskType;pub use benchmarks::CostMatrix;pub use benchmarks::DatasetSpec;pub use benchmarks::EvaluationSpec;pub use benchmarks::FeatureSet;pub use benchmarks::IndustryBenchmarkAnalysis;pub use benchmarks::LeaderboardEntry;pub use benchmarks::MetricType;pub use benchmarks::SplitRatios;pub use banking::AmlDetectabilityAnalysis;pub use banking::AmlDetectabilityAnalyzer;pub use banking::AmlTransactionData;pub use banking::BankingEvaluation;pub use banking::KycCompletenessAnalysis;pub use banking::KycCompletenessAnalyzer;pub use banking::KycProfileData;pub use banking::TypologyData;pub use process_mining::EventSequenceAnalysis;pub use process_mining::EventSequenceAnalyzer;pub use process_mining::ProcessEventData;pub use process_mining::ProcessMiningEvaluation;pub use process_mining::VariantAnalysis;pub use process_mining::VariantAnalyzer;pub use process_mining::VariantData;pub use causal::CausalModelEvaluation;pub use causal::CausalModelEvaluator;pub use enrichment::EnrichmentQualityEvaluation;pub use enrichment::EnrichmentQualityEvaluator;
Modules§
- banking
- Banking/KYC/AML evaluation module.
- benchmarks
- Benchmark suite definitions for ML evaluation.
- causal
- Causal model evaluator.
- coherence
- Semantic coherence evaluation module.
- config
- Configuration for the evaluation framework.
- enhancement
- Enhancement derivation module for automatic configuration optimization.
- enrichment
- LLM enrichment quality evaluator.
- error
- Error types for the evaluation framework.
- gates
- Quality gate engine for pass/fail criteria on generation runs.
- ml
- ML-readiness evaluation module.
- privacy
- Privacy evaluation module.
- process_
mining - OCEL 2.0 process mining evaluation module.
- quality
- Data quality evaluation module.
- report
- Report generation module.
- statistical
- Statistical quality evaluation module.
- tuning
- Configuration tuning and optimization suggestions.
Structs§
- Comprehensive
Evaluation - Comprehensive evaluation result combining all evaluation modules.
- Evaluator
- Main evaluator that coordinates all evaluation modules.