Closed plyplyply closed 1 year ago
Hi, thank you for your interest,
"n_train" represents the number of repetitions or runs of the training/testing procedure. So, we can get the best/average performance over all runs. In our final experiments (after all parameters are defined), we set the number of repetitions (n_train) to 10 in both subject-dependent and subject-independent (LOSO). For LOSO, the training time will be much more than the subject-dependent because the training data is much larger. You can set "n_train" to any value depending on the performance of your GPU. "n_train" = 3 or 5 is also fine. The important thing is to use the same "n_train" value for all the other models you're comparing to. We have a GTX 2070 GPU and the experiment time for "n_train" = 10 was acceptable. Also, in your early experiments (while developing the model), you can reduce the number of repetitions (n_train) and in the final experiments, you can increase them.
Hope this answers your question
Many thanks to your detailed replies and great advices! I’m also curious about the time cost for subject-independent training conducted on your GTX 2070 GPU. When LOSO is turned on and n_train is set as 1, it takes me about 7 hours to complete the training procedure with a single 1080ti.
I don't remember how long it took. However, I just run LOSO experiment with (n_train = 1) using a single 1080 ti 12G GPU and the time was 2.4h.
Thanks for your excellent work! I've got a question about the setting of n_train when LOSO is used. In your code, you set n_train as 10 when the model is trained using subject-dependent approach, which is, the default setting. Is n_train still be set as 10 when subject-independent approach is adopted(i.e. LOSO==True)??? As long as LOSO is adopted, it will be much more time consuming if n_train is 10 comparing to its subject-dependent counterpart. Looking forward for your reply!