evaluate_interactor_significance_lassocv¶
LassoCV-based interactor significance testing for tfbpmodeling.
tfbpmodeling.evaluate_interactor_significance_lassocv ¶
evaluate_interactor_significance_lassocv ¶
evaluate_interactor_significance_lassocv(
input_data,
stratification_classes,
model_variables,
estimator=LassoCV(
fit_intercept=True,
max_iter=10000,
selection="random",
random_state=42,
n_jobs=4,
),
)
Evaluate which interaction terms survive LassoCV when main effects are included.
| Returns: |
|
|---|
Source code in tfbpmodeling/evaluate_interactor_significance_lassocv.py
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 | |
Overview¶
The evaluate_interactor_significance_lassocv module provides functions for evaluating the significance of interaction terms using LassoCV regularization. This approach uses regularized regression to compare models with and without interaction terms, providing a conservative approach to interaction significance testing.
Key Features¶
- Regularized Comparison: Uses LassoCV to compare interaction vs main effect models
- Cross-Validation: Built-in CV for robust model comparison
- Conservative Testing: Regularization reduces false positive interactions
- Scalable Analysis: Handles high-dimensional feature spaces efficiently
Usage Examples¶
Basic Significance Testing¶
from tfbpmodeling.evaluate_interactor_significance_lassocv import (
evaluate_interactor_significance_lassocv
)
# Run LassoCV-based significance testing
results = evaluate_interactor_significance_lassocv(
X_main=main_effects_data,
X_interaction=interaction_data,
y=response_data,
cv_folds=5,
alpha_range=np.logspace(-4, 1, 50)
)
# Extract significant interactions
significant_interactions = results['significant_features']
p_values = results['p_values']
Advanced Configuration¶
# Custom LassoCV parameters
results = evaluate_interactor_significance_lassocv(
X_main=main_effects_data,
X_interaction=interaction_data,
y=response_data,
cv_folds=10,
alpha_range=np.logspace(-5, 2, 100),
max_iter=10000,
tol=1e-6
)
Method Details¶
Statistical Approach¶
- Main Effect Model: Fit LassoCV with only main effects
- Interaction Model: Fit LassoCV with main effects + interactions
- Model Comparison: Compare CV scores and coefficient stability
- Significance Assessment: Determine if interactions improve model performance
Advantages¶
- Regularization: Reduces overfitting in high-dimensional settings
- Feature Selection: Automatically selects relevant interactions
- Robust: Less sensitive to noise compared to standard linear regression
- Scalable: Efficient for large feature sets
Considerations¶
- Conservative: May miss weak but real interactions
- Hyperparameter Sensitive: Alpha range affects results
- Interpretation: Regularized coefficients may be shrunk
Related Modules¶
- evaluate_interactor_significance_linear: Linear regression alternative
- interactor_significance_results: Results handling
- interface: Workflow integration