mininato's picture
Upload 34 files
2962055 verified
# Configuration file for the pipeline
config = {
# Paths for Import Data
"accel_path": "/Users/anhducduong/Documents/GitHub/EmotionRecognitionPipeline/EmotionRecognitionPipeline/AccelerometerMeasurements_backup.csv", # Path to the accelerometer data
"reports_path": "/Users/anhducduong/Documents/GitHub/EmotionRecognitionPipeline/EmotionRecognitionPipeline/UserTestingSelfReports.csv", # Path to the self-reports data
#"combined_data_path": "Path or Name of File of Combined Data File", # Path to the combined data
#"features_data_path": "Path or Name of File of Features Data File", # Path to the features data
#"model_path": "Path or Name of Trained Model File", # Path to the trained model
# Label Configuration
"label_columns": ["valence", "arousal"], # Here you should input the emotion-labels that you are using
"target_label": "arousal", # This is the target label that you want to predict (Only one label can be selected)
# Configuration for combined data
"time_window": 3, # Minutes before and after the self-report
# Configuration for feature extraction
"window_length": 60, # Window length in seconds / 60
"window_step_size": 20, # Step size in seconds / 10%-50% of window_length / 20
"data_frequency": 25, # Data frequency in Hz
"selected_domains": None, # Default: Every domain / 'time_domain', 'spatial', 'frequency', 'statistical', 'wavelet' / multiple domains: ["time_domain", "frequency"] / order is not important
"include_magnitude": True, # Include magnitude-based features or not
#Configuration for Low-pass filter
"cutoff_frequency": 10, # Cut-off frequency for the low-pass filter
"order": 4, # Order of the filter
# Configuration for Scaling
"scaler_type": "standard", # Possible Scaler: 'standard' or 'minmax'
# Configuration for PCA
"apply_pca": False, # Apply PCA or not
"pca_variance": 0.95, # PCA variance threshold
# Configuration for model training
"classifier": "xgboost", # Default classifier ('xgboost', 'svm', 'randomforest')
# Configuration for hyperparameter tuning
"n_splits": 5, # Number of splits for cross-validation
"n_iter": 30, # Number of iterations for hyperparameter tuning
"n_jobs": -1, # Number of jobs for parallel processing
"n_points": 1, # Number of points to sample in the hyperparameter space
# If users want to define custom param_space, they can specify it here
"param_space": {
"learning_rate": (0.05, 0.2),
"n_estimators": (200, 800),
"max_depth": (4, 8),
"min_child_weight": (1, 5),
"subsample": (0.6, 0.9),
"colsample_bytree": (0.6, 0.9),
"gamma": (0, 5),
"reg_alpha": (0, 5),
"reg_lambda": (0, 5)
}, # Set to {None} to use default inside the TrainModel class
}