-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathrun_experiments.sh
68 lines (55 loc) · 11.3 KB
/
run_experiments.sh
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
#!/bin/bash
# Quick experiments to reproduce some results:
python main.py main.mode="full" model="TCN" models.TCN.run_name="1d_regression" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.TCN.input_size=1 models.TCN.output_size=1
#python main.py main.mode="full" model="TCN" models.TCN.run_name="1d_classification" preprocessing.multi_dim=False preprocessing.mode="binary classification" models.TCN.input_size=1 models.TCN.output_size=2
#python main.py main.mode="full" model="TCN" models.TCN.run_name="65d_classification" preprocessing.multi_dim=True preprocessing.use_magnitude=False preprocessing.mode="binary classification" models.TCN.input_size=65 models.TCN.output_size=2
#python main.py main.mode="full" model="TCN" models.TCN.run_name="65d_regression" preprocessing.multi_dim=True preprocessing.use_magnitude=False preprocessing.mode="sawtooth" models.TCN.input_size=65 models.TCN.output_size=1
#python main.py main.mode="full" model="TCN" models.TCN.run_name="130d_regression" preprocessing.multi_dim=True preprocessing.mode="sawtooth" models.TCN.input_size=130 models.TCN.output_size=1
#python main.py main.mode="full" model="TCN" models.TCN.run_name="130d_classification" preprocessing.multi_dim=True preprocessing.mode="binary classification" models.TCN.input_size=130 models.TCN.output_size=2
# Main experiments done in the thesis
# Main model: TCN
#python main.py main.mode="leave_one_out" model="TCN" models.TCN.run_name="1d_regression" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.TCN.input_size=1 models.TCN.output_size=1
#python main.py main.mode="leave_one_out" model="TCN" models.TCN.run_name="1d_classification" preprocessing.multi_dim=False preprocessing.mode="binary classification" models.TCN.input_size=1 models.TCN.output_size=2
#python main.py main.mode="leave_one_out" model="TCN" models.TCN.run_name="65d_classification" preprocessing.multi_dim=True preprocessing.use_magnitude=False preprocessing.mode="binary classification" models.TCN.input_size=65 models.TCN.output_size=2
#python main.py main.mode="leave_one_out" model="TCN" models.TCN.run_name="65d_regression" preprocessing.multi_dim=True preprocessing.use_magnitude=False preprocessing.mode="sawtooth" models.TCN.input_size=65 models.TCN.output_size=1
#python main.py main.mode="leave_one_out" model="TCN" models.TCN.run_name="130d_regression" preprocessing.multi_dim=True preprocessing.mode="sawtooth" models.TCN.input_size=130 models.TCN.output_size=1
#python main.py main.mode="leave_one_out" model="TCN" models.TCN.run_name="130d_classification" preprocessing.multi_dim=True preprocessing.mode="binary classification" models.TCN.input_size=130 models.TCN.output_size=2
# Secondary model: GRU
#python main.py main.mode="leave_one_out" model="GRU" models.GRU.run_name="1d_regression" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.GRU.input_size=1 models.GRU.output_size=1 preprocessing.slice_duration=30
#python main.py main.mode="leave_one_out" model="GRU" models.GRU.run_name="130d_regression" preprocessing.multi_dim=True preprocessing.mode="sawtooth" models.GRU.input_size=130 models.GRU.output_size=1 preprocessing.slice_duration=30
#python main.py main.mode="leave_one_out" model="GRU" models.GRU.run_name="1d_classification" preprocessing.multi_dim=False preprocessing.mode="binary classification" models.GRU.input_size=1 models.GRU.output_size=2 preprocessing.slice_duration=30
#python main.py main.mode="leave_one_out" model="GRU" models.GRU.run_name="130d_classification" preprocessing.multi_dim=True preprocessing.mode="binary classification" models.GRU.input_size=130 models.GRU.output_size=2 preprocessing.slice_duration=30
# Additional experiments done in the thesis:
# TCN with 5s receptive field
#python main.py model="TCN" models.TCN.run_name="130d_regression_5s_receptive_field" preprocessing.multi_dim=True preprocessing.mode="sawtooth" models.TCN.input_size=130 models.TCN.output_size=1 models.TCN.no_dilation_layers=3
#python main.py model="TCN" models.TCN.run_name="130d_classification_5s_receptive_field" preprocessing.multi_dim=True preprocessing.mode="binary classification" models.TCN.input_size=130 models.TCN.output_size=2 models.TCN.no_dilation_layers=3
#python main.py main.mode="full" models.TCN.run_name="1d_classification_5s_receptive_field" preprocessing.multi_dim=False preprocessing.mode="binary classification" models.TCN.input_size=1 models.TCN.output_size=2 models.TCN.no_dilation_layers=3
#python main.py models.TCN.run_name="1d_regression_5s_receptive_field" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.TCN.input_size=1 models.TCN.output_size=1 models.TCN.no_dilation_layers=3
#python main.py main.left_out_subject=22 model="TCN" models.TCN.run_name="130d_regression_5s_receptive_field" preprocessing.multi_dim=True preprocessing.mode="sawtooth" models.TCN.input_size=130 models.TCN.output_size=1 models.TCN.no_dilation_layers=3
#python main.py main.left_out_subject=22 model="TCN" models.TCN.run_name="130d_classification_5s_receptive_field" preprocessing.multi_dim=True preprocessing.mode="binary classification" models.TCN.input_size=130 models.TCN.output_size=2 models.TCN.no_dilation_layers=3
#python main.py main.left_out_subject=22 main.mode="full" models.TCN.run_name="1d_classification_5s_receptive_field" preprocessing.multi_dim=False preprocessing.mode="binary classification" models.TCN.input_size=1 models.TCN.output_size=2 models.TCN.no_dilation_layers=3
#python main.py main.left_out_subject=22 models.TCN.run_name="1d_regression_5s_receptive_field" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.TCN.input_size=1 models.TCN.output_size=1 models.TCN.no_dilation_layers=3
# TCN without preprocessing(raw radar data as input)
#python main.py main.mode="full" model="TCN" models.TCN.run_name="1d_classification_without_preprocessing" preprocessing.multi_dim=False preprocessing.use_magnitude=False preprocessing.apply_peak_envelopes=False preprocessing.apply_butterworth=False preprocessing.mode="binary classification" models.TCN.input_size=1 models.TCN.output_size=2
#python main.py main.left_out_subject=22 main.mode="full" model="TCN" models.TCN.run_name="1d_classification_without_preprocessing" preprocessing.multi_dim=False preprocessing.use_magnitude=False preprocessing.apply_peak_envelopes=False preprocessing.apply_butterworth=False preprocessing.mode="binary classification" models.TCN.input_size=1 models.TCN.output_size=2
# TCN without butterworth filter
#python main.py main.mode="full" model="TCN" models.TCN.run_name="1d_classification_without_butterworth" preprocessing.multi_dim=False preprocessing.use_magnitude=False preprocessing.apply_peak_envelopes=True preprocessing.apply_butterworth=False preprocessing.mode="binary classification" models.TCN.input_size=1 models.TCN.output_size=2
#python main.py main.left_out_subject=22 main.mode="full" model="TCN" models.TCN.run_name="1d_classification_without_butterworth" preprocessing.multi_dim=False preprocessing.use_magnitude=False preprocessing.apply_peak_envelopes=True preprocessing.apply_butterworth=False preprocessing.mode="binary classification" models.TCN.input_size=1 models.TCN.output_size=2
# Other recurrent models
#python main.py main.mode="full" model="LSTM" models.LSTM.run_name="1d_regression" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.LSTM.input_size=1 models.LSTM.output_size=1 preprocessing.slice_duration=30
#python main.py main.mode="full" model="RNN" models.RNN.run_name="1d_regression_reshape" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.RNN.input_size=1 models.RNN.output_size=1 preprocessing.slice_duration=30
#python main.py main.mode="full" model="LSTM" models.LSTM.run_name="1d_regression" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.LSTM.input_size=1 models.LSTM.output_size=1 preprocessing.slice_duration=30
#python main.py main.mode="full" model="RNN" models.RNN.run_name="1d_regression_reshape" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.RNN.input_size=1 models.RNN.output_size=1 preprocessing.slice_duration=30
#python main.py main.left_out_subject=22 main.mode="full" model="LSTM" models.LSTM.run_name="1d_regression" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.LSTM.input_size=1 models.LSTM.output_size=1 preprocessing.slice_duration=30
#python main.py main.left_out_subject=22 main.mode="full" model="RNN" models.RNN.run_name="1d_regression_reshape" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.RNN.input_size=1 models.RNN.output_size=1 preprocessing.slice_duration=30
#python main.py main.left_out_subject=22 main.mode="full" model="LSTM" models.LSTM.run_name="1d_regression" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.LSTM.input_size=1 models.LSTM.output_size=1 preprocessing.slice_duration=30
#python main.py main.left_out_subject=22 main.mode="full" model="RNN" models.RNN.run_name="1d_regression_reshape" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.RNN.input_size=1 models.RNN.output_size=1 preprocessing.slice_duration=30
# Different custom loss functions
#python main.py main.mode="full" model="TCN" models.TCN.run_name="1d_regression_peak_detection_loss" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.TCN.input_size=1 models.TCN.output_size=1 training.loss_component_weights="{mse: 1.0, peak_detection: 0.1}"
#python main.py main.mode="full" model="TCN" models.TCN.run_name="1d_classification_peak_detection_loss" preprocessing.multi_dim=False preprocessing.mode="binary classification" models.TCN.input_size=1 models.TCN.output_size=2 training.loss_component_weights="{cross_entropy: 1.0, peak_detection_binary: 0.1}"
#python main.py main.mode="full" model="TCN" models.TCN.run_name="1d_regression_derivative_loss" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.TCN.input_size=1 models.TCN.output_size=1 training.loss_component_weights="{mse: 1.0, derivative: 0.1}"
#python main.py main.mode="full" model="TCN" models.TCN.run_name="1d_regression_second_derivative_loss" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.TCN.input_size=1 models.TCN.output_size=1 training.loss_component_weights="{mse: 1.0, second_derivative: 0.1}"
#python main.py main.left_out_subject=22 main.mode="full" model="TCN" models.TCN.run_name="1d_regression_peak_detection_loss" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.TCN.input_size=1 models.TCN.output_size=1 training.loss_component_weights="{mse: 1.0, peak_detection: 0.1}"
#python main.py main.left_out_subject=22 main.mode="full" model="TCN" models.TCN.run_name="1d_classification_peak_detection_loss" preprocessing.multi_dim=False preprocessing.mode="binary classification" models.TCN.input_size=1 models.TCN.output_size=2 training.loss_component_weights="{cross_entropy: 1.0, peak_detection_binary: 0.1}"
#python main.py main.left_out_subject=22 main.mode="full" model="TCN" models.TCN.run_name="1d_regression_derivative_loss" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.TCN.input_size=1 models.TCN.output_size=1 training.loss_component_weights="{mse: 1.0, derivative: 0.1}"
#python main.py main.left_out_subject=22 main.mode="full" model="TCN" models.TCN.run_name="1d_regression_second_derivative_loss" preprocessing.multi_dim=False preprocessing.mode="sawtooth" models.TCN.input_size=1 models.TCN.output_size=1 training.loss_component_weights="{mse: 1.0, second_derivative: 0.1}"