X-LANCE/text2sql-lgesql

How about your training time per epoch ?

DHms2020 opened this issue · 1 comments

I reproduce the data preprocess ,and then train the model with electra-large-discriminator plm / msde local_and_nonlocal strategy.
I found it takes me around 50 min per epoch on a Tesla V100 32G with the same hyper-parameters on paper
Besides, I do some modify to use the DDP with 4 GPU, but the time only reduce to 40 min per epoch
Is the same for your training time ?
I want to do some experiment with the LGESQL basemodel, but the time counsuming is .....[SAD]

Sorry for the late reply. I just checked my experiment logs. It takes roughly 1200 seconds for training with large-series PLM per epoch, with running script in run/run_train_lgesql_plm.sh. Sadly, it is a little slow in your experiment. But, 200 epochs is not a necessity. Actually, 100 epochs is enough for comparable performances. We trained the large-series PLM for more epochs just for more stable performances according to this work.

If you just want to verify your ideas, why not experiment with Glove embeddings or base-series PLM? It can be much faster. We did not spend too much time on hyper-parameter tuning with large-series PLM and most ablation studies are conducted with Glove embeddings. As for how to set the grad_accumulate hyper-parameter (the actual mini-batch size for each forward process is batch_size/grad_accumulate), you can run and check the usage of CUDA memory based on your GPU device.

Attention: there is a mistake about learning rate in the original paper. Learning rate should be 1e-4 for large-series PLM and 2e-4 for base-series PLM (not e-5).