-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSConstruct
More file actions
122 lines (109 loc) · 7.1 KB
/
SConstruct
File metadata and controls
122 lines (109 loc) · 7.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
import os
def PhonyTargets(env = None, **kw):
if not env: env = DefaultEnvironment()
for target,action in kw.items():
env.AlwaysBuild(env.Alias(target, [], action))
env = Environment(ENV = os.environ)
# output_dir = 'results/Revenue_MF_1.5pre_wo_outliers_all'
# output_dir = 'results/Revenue_CC_1.5pre_wo_outliers_all'
# output_dir = 'results/Revenue_CL_1.5pre_wo_outliers_all'
# output_dir = 'results/Multiclass_XGBoost_1.6pre_wo_outliers_all'
# output_dir = 'results/Multiclass_XGBoost_1.6pre_wo_outliers_all_v1'
# output_dir = 'results/Multiclass_zoom_XGBoost_1.6pre_wo_outliers_all'
# output_dir = 'results/Multiclass_XGBoost_Binarized_1.6pre_wo_outliers_all'
# output_dir = 'results/Multiclass_RF_1.6pre_wo_outliers_all'
# output_dir = 'results/Multiclass_RF_1.6pre_wo_outliers_all_v1'
# output_dir = 'results/Multiclass_RF_1.6pre_wo_outliers_all_v3'
# output_dir = 'results/Multiclass_RF_OvR_1.7pre_wo_outliers_all_v1'
# output_dir = 'results/Multiclass_RF_OvR_1.7pre_wo_outliers_all_v2'
# output_dir = 'results/Multiclass_RF_OvR_1.7pre_wo_outliers_all_v3'
# output_dir = 'results/Multiclass_RF_OvR_1.7pre_wo_outliers_all_v4'
# output_dir = 'results/Multiclass_RF_OvR_1.7pre_wo_outliers_all_v5'
# output_dir = 'results/Multiclass_RF_OvR_1.7pre_wo_outliers_all_v6'
# output_dir = 'results/Multiclass_RF_OvR_1.7pre_wo_outliers_all_v7'
# output_dir = 'results/Multiclass_RF_Binarized_1.6pre_wo_outliers_all'
# output_dir = 'results/Multiclass_SVC_1.6pre_wo_outliers_all'
# output_dir = 'results/Multiclass_MLP_1.6pre_wo_outliers_all'
# output_dir = 'results/Multiclass_MLP_1.6pre_wo_outliers_all_v1'
# output_dir = 'results/Multiclass_MLP_1.6pre_wo_outliers_all_v2'
output_dir = 'results/IntegralPlots'
ref_config = 'configs/conf_baseline_noOutliers_Multiclass_RF_cff.py'
# dev_config = 'configs/conf_baseline_Revenue_MF_cff.py'
# dev_config = 'configs/conf_baseline_Revenue_CC_cff.py'
# dev_config = 'configs/conf_baseline_Revenue_CL_cff.py'
# dev_config = 'configs/conf_baseline_noOutliers_Revenue_MF_cff.py'
# dev_config = 'configs/conf_baseline_noOutliers_Revenue_CC_cff.py'
# dev_config = 'configs/conf_baseline_noOutliers_Revenue_CL_cff.py'
# dev_config = 'configs/conf_baseline_noOutliersAll_Revenue_MF_cff.py'
# dev_config = 'configs/conf_baseline_noOutliersAll_Revenue_CC_cff.py'
# dev_config = 'configs/conf_baseline_noOutliersAll_Revenue_CL_cff.py'
# dev_config = 'configs/conf_baseline_noOutliers_Multiclass_XGBoost_cff.py'
# dev_config = 'configs/conf_baseline_noOutliers_Multiclass_XGBoost_Age_Tenure_ActBalCA_ActBalSA_cff.py'
# dev_config = 'configs/conf_baseline_noOutliers_Multiclass_XGBoost_Binarized_cff.py'
# dev_config = 'configs/conf_baseline_noOutliers_Multiclass_RF_cff.py'
# dev_config = 'configs/conf_baseline_noOutliers_Multiclass5_RF_cff.py'
# dev_config = 'configs/conf_baseline_noOutliers_Multiclass_OvR_7_RF_cff.py'
# dev_config = 'configs/conf_baseline_noOutliers_Multiclass_RF_Age_Tenure_ActBalCA_ActBalSA_cff.py'
# dev_config = 'configs/conf_baseline_noOutliers_Multiclass_RF_Binarized_cff.py'
# dev_config = 'configs/conf_baseline_noOutliers_Multiclass_SVC_cff.py'
# dev_config = 'configs/conf_baseline_noOutliers_Multiclass_MLP_cff.py'
# dev_config = 'configs/conf_baseline_noOutliers_Multiclass_MLP_v1_cff.py'
# dev_config = 'configs/conf_baseline_plots_Rej_CL_cff.py'
# dev_config = 'configs/conf_baseline_zoom_plots_Rej_MF_cff.py'
dev_config = 'configs/conf_baseline_plots_IntegralOverClasses_cff.py'
configs_compare = ['configs/conf_cff.py','configs/conf_baseline_vanilla_cff.py']
configs_revenue_targets = [
'configs/conf_baseline_noOutliersAll_Revenue_CC_cff.py',
'configs/conf_baseline_noOutliersAll_Revenue_CL_cff.py',
'configs/conf_baseline_noOutliersAll_Revenue_MF_cff.py'
]
configs_plots = ['configs/conf_baseline_plots_Rej_MF_cff.py',
'configs/conf_baseline_plots_Rej_CC_cff.py',
'configs/conf_baseline_plots_Rej_CL_cff.py',
# 'configs/conf_baseline_plots_CC_CL_cff.py',
# 'configs/conf_baseline_plots_CC_MF_cff.py',
# 'configs/conf_baseline_plots_MF_CL_cff.py',
]
configs_zoom_plots = ['configs/conf_baseline_zoom_plots_Rej_MF_cff.py',
'configs/conf_baseline_zoom_plots_Rej_CC_cff.py',
'configs/conf_baseline_zoom_plots_Rej_CL_cff.py',
'configs/conf_baseline_zoom_plots_CC_CL_cff.py',
'configs/conf_baseline_zoom_plots_CC_MF_cff.py',
'configs/conf_baseline_zoom_plots_MF_CL_cff.py',
]
configs = [dev_config]
configs = configs_plots
# configs = configs_zoom_plots
# configs = configs_plots + configs_zoom_plots + [dev_config]
# configs = configs_revenue_targets
# kbc_compare = env.Command([output_dir+'features_1d_Inflow_Outflow_p1.png',
# output_dir+'features_1d_Inflow_Outflow_p2.png',
# output_dir+'features_1d_Products_ActBalance_p1.png',
# output_dir+'features_1d_Products_ActBalance_p2.png',
# output_dir+'features_1d_Soc_Dem_p1.png',
# output_dir+'features_1d_Targets_p1.png',
# output_dir+'features_2d_Targets_correlations_p1.png'],
# configs_compare,
# "python3 bin/kbc_direct_marketing_mock.py -b -c $SOURCES --dir={0}".format(output_dir))
kbc = env.Command([output_dir+'Xfeatures_1d_Inflow_Outflow_p1.png',
output_dir+'Xfeatures_1d_Inflow_Outflow_p2.png',
output_dir+'Xfeatures_1d_Products_ActBalance_p1.png',
output_dir+'Xfeatures_1d_Products_ActBalance_p2.png',
output_dir+'Xfeatures_1d_Soc_Dem_p1.png',
output_dir+'Xfeatures_1d_Targets_p1.png',
output_dir+'Xfeatures_2d_Targets_correlations_p1.png'],
configs,
"python3 bin/kbc_direct_marketing_mock.py -c $SOURCES --dir={0}".format(output_dir))
config_predictions = 'configs/conf_baseline_predictions_cff.py'
prediction = env.Command([output_dir+'clients_rank.csv'],
config_predictions,
"python3 bin/kbc_direct_marketing_mock.py -c $SOURCES --dir={0}".format(output_dir))
PhonyTargets(env, make_output_folder = '-[ ! -d {0} ] && mkdir {0}'.format(output_dir))
PhonyTargets(env, trash_plots = '-rm {0}/features_* {0}/*learning_curve* {0}/*lasso_lars_ic_criterion* {0}/multiclass_classifier_distribution*'.format(output_dir))
PhonyTargets(env, train_test_tables = 'python3 source/train_test_preparation/train_test_datasets.py -c configs/train_test_csv_cff.py')
PhonyTargets(env, train_test_tables_Products_ActBalance_default = 'python source/train_test_preparation/train_test_datasets.py -c configs/train_test_csv_Products_ActBalance_default0_cff.py')
env.Alias('kbc',['make_output_folder',kbc])
env.Alias('runall', ['trash_plots',kbc])
env.Alias('pred',[prediction])
# env.Alias('runcompareall', ['trash_plots',kbc_compare])
PhonyTargets(env, latex_report_clean = '-rm {0}/main.aux {0}/main.fdb_latexmk {0}/main.fls {0}/main.log {0}/main.pdf {0}/main.synctex.gz'.format('report'))