It works prettt well until the 23rd epochs. not sure what is happening here
--training batch:  39%|███▉      | 999/2567 [03:57<08:04,  3.23it/s]epoch: 21, iteration: 1000, current mean loss: 0.17
--training batch:  78%|███████▊  | 1999/2567 [07:58<02:09,  4.38it/s]epoch: 21, iteration: 2000, current mean loss: 0.17
--training batch: 100%|██████████| 2567/2567 [10:12<00:00,  4.19it/s]Finish epoch: 21, loss: 426.59, mean loss: 0.17

--validation: 100%|██████████| 321/321 [00:43<00:00,  7.32it/s][Info] Acc.:71.52 
[Info] val Acc.:78.27 
--training batch:  39%|███▉      | 999/2567 [03:59<05:56,  4.39it/s]epoch: 22, iteration: 1000, current mean loss: 0.15
--training batch:  78%|███████▊  | 1999/2567 [07:52<02:03,  4.58it/s]epoch: 22, iteration: 2000, current mean loss: 0.14
--training batch: 100%|██████████| 2567/2567 [10:05<00:00,  4.24it/s]Finish epoch: 22, loss: 367.22, mean loss: 0.14

--validation: 100%|██████████| 321/321 [00:43<00:00,  7.35it/s][Info] Acc.:69.11 
[Info] val Acc.:74.63 

--training batch:  39%|███▉      | 999/2567 [04:01<06:07,  4.26it/s]epoch: 23, iteration: 1000, current mean loss: 0.13
--training batch:  78%|███████▊  | 1999/2567 [07:59<02:38,  3.58it/s]epoch: 23, iteration: 2000, current mean loss: 0.13
--training batch: 100%|█████████▉| 2566/2567 [10:13<00:00,  4.18it/s]
Traceback (most recent call last):
  File "universal_main.py", line 422, in <module>
    main()
  File "universal_main.py", line 398, in main
    constant_values=constant_values)
  File "universal_main.py", line 138, in train
    scaler.scale(loss).backward()
  File "/usr/local/lib/python3.7/dist-packages/torch/_tensor.py", line 255, in backward
    torch.autograd.backward(self, gradient, retain_graph, create_graph, inputs=inputs)
  File "/usr/local/lib/python3.7/dist-packages/torch/autograd/__init__.py", line 149, in backward
    allow_unreachable=True, accumulate_grad=True)  # allow_unreachable flag
IndexError: scatter_(): Expected dtype int64 for index.