mercurial.utils.synthetic_data module
Generate synthetic pattern data for overfitting tests.
- class mercurial.utils.synthetic_data.OverfittingTest(dim: int = 10)[source]
Bases:
objectTest for overfitting using synthetic data.
Methods
compute_pattern_complexity(pattern)Compute complexity using our measure (simplified).
evaluate_prediction(pattern, ...)Accuracy: 1 if predicted complexity within 0.1 of true, else 0.
run_cross_validation(patterns[, n_folds])Perform k-fold cross-validation on synthetic data.
train_test_split(patterns[, train_ratio])Split patterns into training and test sets.
- compute_pattern_complexity(pattern: Pattern) float[source]
Compute complexity using our measure (simplified).
- evaluate_prediction(pattern: Pattern, predicted_complexity: float) float[source]
Accuracy: 1 if predicted complexity within 0.1 of true, else 0.
- class mercurial.utils.synthetic_data.SyntheticDataGenerator(dim: int = 10, seed: int = 42)[source]
Bases:
objectGenerate synthetic patterns with known ground truth parameters.
Methods
generate_dataset([n_patterns, ...])Generate a dataset of patterns with varying complexity.
generate_pattern([complexity, noise_level])Generate a pattern with specified complexity and noise.