cfzd / Ultra-Fast-Lane-Detection

Ultra Fast Structure-aware Deep Lane Detection (ECCV 2020)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Add lane classification feature

zillur-av opened this issue · comments

I have a dataset in tusimple format but with lane class labels like white-dashed, white-solid, yellow-solid. Do you have any suggestions on how to modify the network heads and loss function?

commented

@zillur-av
simpley add a 2-way classification head for every lane should be ok. Or you can directly flatten the CNN feature, and feed it to an MLP to achieve this. For loss function, cross-entropy should be ok.

@zillur-av simpley add a 2-way classification head for every lane should be ok. Or you can directly flatten the CNN feature, and feed it to an MLP to achieve this. For loss function, cross-entropy should be ok.

Appreciate your reply. I went through the entire paper which you made easy to follow. I am interested in that 2-way classification head, which means I want to add a new head along with your detection head. Your current network is backbone - conv2D(8 channel) - FC1+relu (2048) - FC2(4*101*56) where the last FC is transformed into (4*101*56) tensor for lane detection.

If I add 4 heads for a maximum of 4 lanes, the total would be 5 heads. Each classification head will give lane classes or the background. Is that the idea? You converted each image label to a 4*56 matrix where matrix element=100 means it is the background. If I understand correctly, it means it is dealing with just lane or background, it does not care for lane category. I guess I can not use these kinds of labels for classification.

commented

@zillur-av
Sorry, the 2-way classification is a mistake. If you have white-dashed, white-solid, and yellow-solid, it should be a 3-way classification.

For network structure:
If you have 4 lanes, you can use 4*3 (suppose there are 3 lane categories) digits to represent the lane classficition results. In this way, you can have two ways:

  1. add the lane classification head to the conv features, it would be like:
    backbone - conv2D(8 channel) |- FC1+relu (2048) - FC2(4*101*56)
                                 |- FC1+relu (2048) - FC2(4*3)
    
  2. or share the first FC layer, it would be like:
    backbone - conv2D(8 channel) - FC1+relu (2048) |- FC2(4*101*56)
                                                   |- FC2(4*3)
    

I don't know which one is better, but I think both should work.

For the lane category label:
Yes, the 4*56 matrix where matrix element=100 is only used for localization and background. You need extra label to finish the lane category prediction.

Thanks. I followed your first method. The classification head output is (batch size, num_lanes, num_classes) which is (4, 4, 3). The target shape is (batch size, num_lanes) where each lane index could be 0 to 2 like

tensor([[0, 0, 2, 1],
        [0, 1, 1, 1],
        [0, 2, 2, 1],
        [1, 1, 2, 1]])

It throws an error for torch.nn.CrossEntropyLoss() for shape mismatch. So, I changed classification head output to (4,3,4) and it is working. But after training for around 40 epochs, I see loss is not decreasing. I added the new classification loss with the existing detection loss and send the total loss for optimization.

commented

@zillur-av
First, (4,3,4) is the correct format for CEloss.

What's the loss coefficient? Could you please post the value of lane category loss and other losses?

Here is a log file after deleting a few intemediate rows: det_loss is your model loss which is decreasing just fine and cat_loss is the new head loss. I added both of them and then send them to loss.backward(). I am suspecting underfitting problem.

2023-04-18 11:17:20,042 - lanedet.utils.recorder - INFO - Build train loader...
2023-04-18 11:17:20,043 - lanedet.datasets.base_dataset - INFO - Loading TuSimple annotations...
2023-04-18 11:17:20,473 - lanedet.utils.recorder - INFO - Start training...
2023-04-18 11:17:22,177 - lanedet.utils.recorder - INFO - epoch: 0  step: 1  lr: 0.0000  det_loss: 4.5392  cat_loss: 2.0801  data: 0.9427  batch: 1.6959  eta: 11:22:34
2023-04-18 11:17:29,473 - lanedet.utils.recorder - INFO - epoch: 0  step: 101  lr: 0.0005  det_loss: 4.4104  cat_loss: 2.0304  data: 0.0291  batch: 0.0722  eta: 0:35:37
2023-04-18 11:17:37,006 - lanedet.utils.recorder - INFO - epoch: 0  step: 201  lr: 0.0010  det_loss: 1.8694  cat_loss: 1.6869  data: 0.0295  batch: 0.0770  eta: 0:32:47
2023-04-18 11:17:44,332 - lanedet.utils.recorder - INFO - epoch: 0  step: 301  lr: 0.0015  det_loss: 1.7411  cat_loss: 1.6847  data: 0.0271  batch: 0.0684  eta: 0:31:29
2023-04-18 11:17:52,153 - lanedet.utils.recorder - INFO - epoch: 0  step: 401  lr: 0.0020  det_loss: 1.6074  cat_loss: 1.6819  data: 0.0359  batch: 0.0814  eta: 0:31:14
2023-04-18 11:17:59,485 - lanedet.utils.recorder - INFO - epoch: 0  step: 501  lr: 0.0025  det_loss: 1.5437  cat_loss: 1.6841  data: 0.0304  batch: 0.0716  eta: 0:30:40
2023-04-18 11:18:06,697 - lanedet.utils.recorder - INFO - epoch: 0  step: 601  lr: 0.0029  det_loss: 1.4303  cat_loss: 1.7120  data: 0.0306  batch: 0.0721  eta: 0:30:10
2023-04-18 11:18:13,765 - lanedet.utils.recorder - INFO - epoch: 0  step: 701  lr: 0.0034  det_loss: 1.4222  cat_loss: 1.6864  data: 0.0312  batch: 0.0791  eta: 0:29:41
2023-04-18 11:18:20,882 - lanedet.utils.recorder - INFO - epoch: 0  step: 801  lr: 0.0039  det_loss: 1.3905  cat_loss: 1.6656  data: 0.0272  batch: 0.0667  eta: 0:29:20
2023-04-18 11:18:21,075 - lanedet.utils.recorder - INFO - epoch: 0  step: 804  lr: 0.0039  det_loss: 1.4081  cat_loss: 1.6694  data: 0.0269  batch: 0.0650  eta: 0:29:19
2023-04-18 11:18:21,229 - lanedet.datasets.base_dataset - INFO - Loading TuSimple annotations...

2023-04-18 11:18:31,161 - lanedet.utils.recorder - INFO - Detection: 0.4071101916376303  classification accuracy: 0.3313106796116506
2023-04-18 11:18:33,548 - lanedet.utils.recorder - INFO - Best detection metric: 0.4071101916376303  Best classification metric: 0.3313106796116506
2023-04-18 11:18:34,530 - lanedet.utils.recorder - INFO - epoch: 1  step: 805  lr: 0.0039  det_loss: 1.4011  cat_loss: 1.6820  data: 0.0698  batch: 0.1097  eta: 0:29:44
2023-04-18 11:18:41,829 - lanedet.utils.recorder - INFO - epoch: 1  step: 905  lr: 0.0044  det_loss: 1.3765  cat_loss: 1.6756  data: 0.0293  batch: 0.0699  eta: 0:29:27
2023-04-18 11:18:48,979 - lanedet.utils.recorder - INFO - epoch: 1  step: 1005  lr: 0.0048  det_loss: 1.3803  cat_loss: 1.6696  data: 0.0280  batch: 0.0699  eta: 0:29:09
2023-04-18 11:18:56,069 - lanedet.utils.recorder - INFO - epoch: 1  step: 1105  lr: 0.0053  det_loss: 1.3570  cat_loss: 1.6635  data: 0.0284  batch: 0.0712  eta: 0:28:52
2023-04-18 11:19:03,257 - lanedet.utils.recorder - INFO - epoch: 1  step: 1205  lr: 0.0058  det_loss: 1.2873  cat_loss: 1.6567  data: 0.0290  batch: 0.0719  eta: 0:28:38
2023-04-18 11:19:10,378 - lanedet.utils.recorder - INFO - epoch: 1  step: 1305  lr: 0.0062  det_loss: 1.3041  cat_loss: 1.5790  data: 0.0282  batch: 0.0714  eta: 0:28:24
2023-04-18 11:19:17,622 - lanedet.utils.recorder - INFO - epoch: 1  step: 1405  lr: 0.0067  det_loss: 1.2667  cat_loss: 1.5938  data: 0.0328  batch: 0.0773  eta: 0:28:13
2023-04-18 11:19:24,978 - lanedet.utils.recorder - INFO - epoch: 1  step: 1505  lr: 0.0071  det_loss: 1.2208  cat_loss: 1.5343  data: 0.0266  batch: 0.0706  eta: 0:28:04
2023-04-18 11:19:31,933 - lanedet.utils.recorder - INFO - epoch: 1  step: 1605  lr: 0.0075  det_loss: 1.1481  cat_loss: 1.5654  data: 0.0274  batch: 0.0666  eta: 0:27:50
2023-04-18 11:19:32,121 - lanedet.utils.recorder - INFO - epoch: 1  step: 1608  lr: 0.0076  det_loss: 1.1637  cat_loss: 1.5714  data: 0.0268  batch: 0.0649  eta: 0:27:49

2023-04-18 11:19:41,694 - lanedet.utils.recorder - INFO - Detection: 0.674608013937282  classification accuracy: 0.5841423948220068
2023-04-18 11:19:45,870 - lanedet.utils.recorder - INFO - Best detection metric: 0.674608013937282  Best classification metric: 0.5841423948220068
2023-04-18 11:19:46,857 - lanedet.utils.recorder - INFO - epoch: 2  step: 1609  lr: 0.0076  det_loss: 1.1644  cat_loss: 1.5613  data: 0.0708  batch: 0.1097  eta: 0:28:02
2023-04-18 11:19:54,097 - lanedet.utils.recorder - INFO - epoch: 2  step: 1709  lr: 0.0080  det_loss: 1.1395  cat_loss: 1.5304  data: 0.0316  batch: 0.0691  eta: 0:27:51
2023-04-18 11:20:01,111 - lanedet.utils.recorder - INFO - epoch: 2  step: 1809  lr: 0.0084  det_loss: 1.1515  cat_loss: 1.5235  data: 0.0312  batch: 0.0698  eta: 0:27:38
2023-04-18 11:20:08,107 - lanedet.utils.recorder - INFO - epoch: 2  step: 1909  lr: 0.0089  det_loss: 1.1339  cat_loss: 1.5149  data: 0.0304  batch: 0.0698  eta: 0:27:26
2023-04-18 11:20:15,090 - lanedet.utils.recorder - INFO - epoch: 2  step: 2009  lr: 0.0093  det_loss: 1.1102  cat_loss: 1.5424  data: 0.0278  batch: 0.0701  eta: 0:27:14
2023-04-18 11:20:22,131 - lanedet.utils.recorder - INFO - epoch: 2  step: 2109  lr: 0.0097  det_loss: 1.0651  cat_loss: 1.5117  data: 0.0296  batch: 0.0724  eta: 0:27:03
2023-04-18 11:20:29,156 - lanedet.utils.recorder - INFO - epoch: 2  step: 2209  lr: 0.0101  det_loss: 1.0416  cat_loss: 1.4851  data: 0.0284  batch: 0.0702  eta: 0:26:52
2023-04-18 11:20:36,150 - lanedet.utils.recorder - INFO - epoch: 2  step: 2309  lr: 0.0106  det_loss: 1.0762  cat_loss: 1.4834  data: 0.0297  batch: 0.0709  eta: 0:26:42
2023-04-18 11:20:42,997 - lanedet.utils.recorder - INFO - epoch: 2  step: 2409  lr: 0.0110  det_loss: 1.0327  cat_loss: 1.4152  data: 0.0266  batch: 0.0657  eta: 0:26:30
2023-04-18 11:20:43,189 - lanedet.utils.recorder - INFO - epoch: 2  step: 2412  lr: 0.0110  det_loss: 1.0460  cat_loss: 1.4174  data: 0.0273  batch: 0.0660  eta: 0:26:29

2023-04-18 11:20:53,235 - lanedet.utils.recorder - INFO - Detection: 0.812594367015098  classification accuracy: 0.7176375404530744
2023-04-18 11:20:57,354 - lanedet.utils.recorder - INFO - Best detection metric: 0.812594367015098  Best classification metric: 0.7176375404530744
2023-04-18 11:20:58,405 - lanedet.utils.recorder - INFO - epoch: 3  step: 2413  lr: 0.0110  det_loss: 1.0359  cat_loss: 1.4163  data: 0.0728  batch: 0.1143  eta: 0:26:38
2023-04-18 11:21:05,628 - lanedet.utils.recorder - INFO - epoch: 3  step: 2513  lr: 0.0114  det_loss: 1.0276  cat_loss: 1.4162  data: 0.0296  batch: 0.0685  eta: 0:26:29
2023-04-18 11:21:12,808 - lanedet.utils.recorder - INFO - epoch: 3  step: 2613  lr: 0.0118  det_loss: 1.0263  cat_loss: 1.5376  data: 0.0270  batch: 0.0712  eta: 0:26:21
2023-04-18 11:21:19,903 - lanedet.utils.recorder - INFO - epoch: 3  step: 2713  lr: 0.0122  det_loss: 0.9982  cat_loss: 1.4510  data: 0.0312  batch: 0.0699  eta: 0:26:11
2023-04-18 11:21:27,045 - lanedet.utils.recorder - INFO - epoch: 3  step: 2813  lr: 0.0126  det_loss: 0.9795  cat_loss: 1.4290  data: 0.0291  batch: 0.0727  eta: 0:26:03
2023-04-18 11:21:34,234 - lanedet.utils.recorder - INFO - epoch: 3  step: 2913  lr: 0.0130  det_loss: 0.9795  cat_loss: 1.4036  data: 0.0313  batch: 0.0737  eta: 0:25:54
2023-04-18 11:21:41,463 - lanedet.utils.recorder - INFO - epoch: 3  step: 3013  lr: 0.0134  det_loss: 0.9330  cat_loss: 1.3765  data: 0.0304  batch: 0.0729  eta: 0:25:46


2023-04-18 11:22:06,095 - lanedet.utils.recorder - INFO - Detection: 0.8233231707317069  classification accuracy: 0.7419093851132684
2023-04-18 11:22:10,276 - lanedet.utils.recorder - INFO - Best detection metric: 0.8233231707317069  Best classification metric: 0.7419093851132684
2023-04-18 11:22:11,294 - lanedet.utils.recorder - INFO - epoch: 4  step: 3217  lr: 0.0141  det_loss: 0.9166  cat_loss: 1.4365  data: 0.0718  batch: 0.1105  eta: 0:25:34
2023-04-18 11:22:19,077 - lanedet.utils.recorder - INFO - epoch: 4  step: 3317  lr: 0.0145  det_loss: 0.9526  cat_loss: 1.4885  data: 0.0288  batch: 0.0745  eta: 0:25:29
2023-04-18 11:22:26,290 - lanedet.utils.recorder - INFO - epoch: 4  step: 3417  lr: 0.0149  det_loss: 0.9538  cat_loss: 1.4566  data: 0.0280  batch: 0.0712  eta: 0:25:21
2023-04-18 11:22:33,857 - lanedet.utils.recorder - INFO - epoch: 4  step: 3517  lr: 0.0153  det_loss: 0.9202  cat_loss: 1.4404  data: 0.0327  batch: 0.0850  eta: 0:25:15
2023-04-18 11:22:41,187 - lanedet.utils.recorder - INFO - epoch: 4  step: 3617  lr: 0.0156  det_loss: 0.9457  cat_loss: 1.4739  data: 0.0285  batch: 0.0747  eta: 0:25:08
2023-04-18 11:22:48,578 - lanedet.utils.recorder - INFO - epoch: 4  step: 3717  lr: 0.0160  det_loss: 0.8939  cat_loss: 1.3964  data: 0.0297  batch: 0.0780  eta: 0:25:01


2023-04-18 11:23:21,911 - lanedet.utils.recorder - INFO - Detection: 0.8709240708478517  classification accuracy: 0.7463592233009712
2023-04-18 11:23:26,146 - lanedet.utils.recorder - INFO - Best detection metric: 0.8709240708478517  Best classification metric: 0.7463592233009712
2023-04-18 11:23:27,317 - lanedet.utils.recorder - INFO - epoch: 5  step: 4021  lr: 0.0171  det_loss: 0.8586  cat_loss: 1.4136  data: 0.0798  batch: 0.1207  eta: 0:24:44
2023-04-18 11:23:35,092 - lanedet.utils.recorder - INFO - epoch: 5  step: 4121  lr: 0.0174  det_loss: 0.8674  cat_loss: 1.3714  data: 0.0287  batch: 0.0737  eta: 0:24:38
2023-04-18 11:23:42,829 - lanedet.utils.recorder - INFO - epoch: 5  step: 4221  lr: 0.0178  det_loss: 0.8170  cat_loss: 1.4132  data: 0.0294  batch: 0.0744  eta: 0:24:33
2023-04-18 11:23:50,305 - lanedet.utils.recorder - INFO - epoch: 5  step: 4321  lr: 0.0181  det_loss: 0.8060  cat_loss: 1.3951  data: 0.0278  batch: 0.0703  eta: 0:24:26
2023-04-18 11:23:57,530 - lanedet.utils.recorder - INFO - epoch: 5  step: 4421  lr: 0.0184  det_loss: 0.8374  cat_loss: 1.5034  data: 0.0288  batch: 0.0730  eta: 0:24:18
2023-04-18 11:24:04,944 - lanedet.utils.recorder - INFO - epoch: 5  step: 4521  lr: 0.0188  det_loss: 0.8961  cat_loss: 1.5188  data: 0.0299  batch: 0.0760  eta: 0:24:10


2023-04-18 11:24:37,735 - lanedet.utils.recorder - INFO - Detection: 0.8464975319396056  classification accuracy: 0.6427993527508089
2023-04-18 11:24:37,735 - lanedet.utils.recorder - INFO - Best detection metric: 0.8709240708478517  Best classification metric: 0.7463592233009712
2023-04-18 11:24:38,943 - lanedet.utils.recorder - INFO - epoch: 6  step: 4825  lr: 0.0197  det_loss: 0.8527  cat_loss: 1.4535  data: 0.0824  batch: 0.1246  eta: 0:23:52
2023-04-18 11:24:46,625 - lanedet.utils.recorder - INFO - epoch: 6  step: 4925  lr: 0.0201  det_loss: 0.8356  cat_loss: 1.4509  data: 0.0276  batch: 0.0727  eta: 0:23:46
2023-04-18 11:24:54,401 - lanedet.utils.recorder - INFO - epoch: 6  step: 5025  lr: 0.0203  det_loss: 0.8907  cat_loss: 1.5206  data: 0.0278  batch: 0.0735  eta: 0:23:40
2023-04-18 11:25:01,444 - lanedet.utils.recorder - INFO - epoch: 6  step: 5125  lr: 0.0202  det_loss: 0.8552  cat_loss: 1.4906  data: 0.0267  batch: 0.0698  eta: 0:23:31
2023-04-18 11:25:08,701 - lanedet.utils.recorder - INFO - epoch: 6  step: 5225  lr: 0.0201  det_loss: 0.8129  cat_loss: 1.4638  data: 0.0299  batch: 0.0727  eta: 0:23:23
2023-04-18 11:25:15,864 - lanedet.utils.recorder - INFO - epoch: 6  step: 5325  lr: 0.0200  det_loss: 0.7955  cat_loss: 1.4348  data: 0.0254  batch: 0.0729  eta: 0:23:15


2023-04-18 11:25:47,598 - lanedet.utils.recorder - INFO - Detection: 0.8619446864111502  classification accuracy: 0.6917475728155341
2023-04-18 11:25:47,598 - lanedet.utils.recorder - INFO - Best detection metric: 0.8709240708478517  Best classification metric: 0.7463592233009712
2023-04-18 11:25:48,793 - lanedet.utils.recorder - INFO - epoch: 7  step: 5629  lr: 0.0197  det_loss: 0.8069  cat_loss: 1.5202  data: 0.0797  batch: 0.1232  eta: 0:22:53
2023-04-18 11:25:56,512 - lanedet.utils.recorder - INFO - epoch: 7  step: 5729  lr: 0.0196  det_loss: 0.7902  cat_loss: 1.4698  data: 0.0301  batch: 0.0749  eta: 0:22:46
2023-04-18 11:26:03,668 - lanedet.utils.recorder - INFO - epoch: 7  step: 5829  lr: 0.0195  det_loss: 0.8076  cat_loss: 1.4892  data: 0.0270  batch: 0.0697  eta: 0:22:38
2023-04-18 11:26:10,839 - lanedet.utils.recorder - INFO - epoch: 7  step: 5929  lr: 0.0194  det_loss: 0.7473  cat_loss: 1.4581  data: 0.0312  batch: 0.0736  eta: 0:22:30
2023-04-18 11:26:18,142 - lanedet.utils.recorder - INFO - epoch: 7  step: 6029  lr: 0.0193  det_loss: 0.7266  cat_loss: 1.4094  data: 0.0283  batch: 0.0700  eta: 0:22:22
2023-04-18 11:26:25,168 - lanedet.utils.recorder - INFO - epoch: 7  step: 6129  lr: 0.0192  det_loss: 0.7156  cat_loss: 1.3987  data: 0.0296  batch: 0.0715  eta: 0:22:13


2023-04-18 11:26:56,646 - lanedet.utils.recorder - INFO - Detection: 0.8931257259001162  classification accuracy: 0.669498381877023
2023-04-18 11:27:00,747 - lanedet.utils.recorder - INFO - Best detection metric: 0.8931257259001162  Best classification metric: 0.7463592233009712
2023-04-18 11:27:01,875 - lanedet.utils.recorder - INFO - epoch: 8  step: 6433  lr: 0.0189  det_loss: 0.6961  cat_loss: 1.4728  data: 0.0743  batch: 0.1163  eta: 0:21:50
2023-04-18 11:27:09,257 - lanedet.utils.recorder - INFO - epoch: 8  step: 6533  lr: 0.0188  det_loss: 0.7284  cat_loss: 1.4751  data: 0.0300  batch: 0.0714  eta: 0:21:43
2023-04-18 11:27:16,406 - lanedet.utils.recorder - INFO - epoch: 8  step: 6633  lr: 0.0187  det_loss: 0.8478  cat_loss: 1.5592  data: 0.0290  batch: 0.0708  eta: 0:21:35
2023-04-18 11:27:23,712 - lanedet.utils.recorder - INFO - epoch: 8  step: 6733  lr: 0.0186  det_loss: 0.7283  cat_loss: 1.5008  data: 0.0278  batch: 0.0708  eta: 0:21:27
2023-04-18 11:27:30,915 - lanedet.utils.recorder - INFO - epoch: 8  step: 6833  lr: 0.0185  det_loss: 0.7426  cat_loss: 1.4399  data: 0.0275  batch: 0.0717  eta: 0:21:19
2023-04-18 11:27:38,205 - lanedet.utils.recorder - INFO - epoch: 8  step: 6933  lr: 0.0184  det_loss: 0.7632  cat_loss: 1.4697  data: 0.0279  batch: 0.0792  eta: 0:21:12


2023-04-18 11:28:10,450 - lanedet.utils.recorder - INFO - Detection: 0.8673562717770037  classification accuracy: 0.6605987055016183
2023-04-18 11:28:10,450 - lanedet.utils.recorder - INFO - Best detection metric: 0.8931257259001162  Best classification metric: 0.7463592233009712
2023-04-18 11:28:11,731 - lanedet.utils.recorder - INFO - epoch: 9  step: 7237  lr: 0.0181  det_loss: 0.6763  cat_loss: 1.4755  data: 0.0844  batch: 0.1280  eta: 0:20:50
2023-04-18 11:28:19,209 - lanedet.utils.recorder - INFO - epoch: 9  step: 7337  lr: 0.0180  det_loss: 0.6609  cat_loss: 1.4502  data: 0.0287  batch: 0.0744  eta: 0:20:43
2023-04-18 11:28:26,748 - lanedet.utils.recorder - INFO - epoch: 9  step: 7437  lr: 0.0179  det_loss: 0.7027  cat_loss: 1.5152  data: 0.0268  batch: 0.0707  eta: 0:20:36
2023-04-18 11:28:34,057 - lanedet.utils.recorder - INFO - epoch: 9  step: 7537  lr: 0.0179  det_loss: 0.7075  cat_loss: 1.4915  data: 0.0281  batch: 0.0700  eta: 0:20:28
2023-04-18 11:28:41,490 - lanedet.utils.recorder - INFO - epoch: 9  step: 7637  lr: 0.0178  det_loss: 0.6720  cat_loss: 1.4494  data: 0.0336  batch: 0.0800  eta: 0:20:21


2023-04-18 11:29:22,235 - lanedet.utils.recorder - INFO - Detection: 0.907324332171893  classification accuracy: 0.6808252427184467
2023-04-18 11:29:26,414 - lanedet.utils.recorder - INFO - Best detection metric: 0.907324332171893  Best classification metric: 0.7463592233009712
2023-04-18 11:29:27,399 - lanedet.utils.recorder - INFO - epoch: 10  step: 8041  lr: 0.0174  det_loss: 0.6273  cat_loss: 1.4672  data: 0.0688  batch: 0.1121  eta: 0:19:53
2023-04-18 11:29:35,385 - lanedet.utils.recorder - INFO - epoch: 10  step: 8141  lr: 0.0173  det_loss: 0.6380  cat_loss: 1.4524  data: 0.0305  batch: 0.0764  eta: 0:19:47
2023-04-18 11:29:42,864 - lanedet.utils.recorder - INFO - epoch: 10  step: 8241  lr: 0.0172  det_loss: 0.6332  cat_loss: 1.4301  data: 0.0270  batch: 0.0741  eta: 0:19:40
2023-04-18 11:29:50,275 - lanedet.utils.recorder - INFO - epoch: 10  step: 8341  lr: 0.0171  det_loss: 0.6841  cat_loss: 1.4801  data: 0.0301  batch: 0.0763  eta: 0:19:32
2023-04-18 11:29:57,926 - lanedet.utils.recorder - INFO - epoch: 10  step: 8441  lr: 0.0170  det_loss: 0.6377  cat_loss: 1.4413  data: 0.0314  batch: 0.0787  eta: 0:19:25
2023-04-18 11:30:05,304 - lanedet.utils.recorder - INFO - epoch: 10  step: 8541  lr: 0.0169  det_loss: 0.6567  cat_loss: 1.4444  data: 0.0285  batch: 0.0737  eta: 0:19:18


2023-04-18 11:30:38,394 - lanedet.utils.recorder - INFO - Detection: 0.9092806329849008  classification accuracy: 0.7148058252427182
2023-04-18 11:30:42,609 - lanedet.utils.recorder - INFO - Best detection metric: 0.9092806329849008  Best classification metric: 0.7463592233009712
2023-04-18 11:30:43,678 - lanedet.utils.recorder - INFO - epoch: 11  step: 8845  lr: 0.0166  det_loss: 0.6206  cat_loss: 1.4078  data: 0.0699  batch: 0.1138  eta: 0:18:57
2023-04-18 11:30:51,407 - lanedet.utils.recorder - INFO - epoch: 11  step: 8945  lr: 0.0165  det_loss: 0.6316  cat_loss: 1.4667  data: 0.0268  batch: 0.0745  eta: 0:18:50
2023-04-18 11:30:59,643 - lanedet.utils.recorder - INFO - epoch: 11  step: 9045  lr: 0.0164  det_loss: 0.6456  cat_loss: 1.4425  data: 0.0303  batch: 0.0761  eta: 0:18:44
2023-04-18 11:31:07,454 - lanedet.utils.recorder - INFO - epoch: 11  step: 9145  lr: 0.0163  det_loss: 0.6501  cat_loss: 1.4470  data: 0.0317  batch: 0.0797  eta: 0:18:37
2023-04-18 11:31:16,234 - lanedet.utils.recorder - INFO - epoch: 11  step: 9245  lr: 0.0162  det_loss: 0.5828  cat_loss: 1.4223  data: 0.0332  batch: 0.0783  eta: 0:18:32


2023-04-18 11:31:57,556 - lanedet.utils.recorder - INFO - Detection: 0.9217116724738679  classification accuracy: 0.682847896440129
2023-04-18 11:32:01,637 - lanedet.utils.recorder - INFO - Best detection metric: 0.9217116724738679  Best classification metric: 0.7463592233009712
2023-04-18 11:32:02,553 - lanedet.utils.recorder - INFO - epoch: 12  step: 9649  lr: 0.0158  det_loss: 0.6029  cat_loss: 1.4384  data: 0.0718  batch: 0.1109  eta: 0:18:04
2023-04-18 11:32:10,298 - lanedet.utils.recorder - INFO - epoch: 12  step: 9749  lr: 0.0157  det_loss: 0.6138  cat_loss: 1.4492  data: 0.0288  batch: 0.0727  eta: 0:17:57
2023-04-18 11:32:17,791 - lanedet.utils.recorder - INFO - epoch: 12  step: 9849  lr: 0.0156  det_loss: 0.6052  cat_loss: 1.4156  data: 0.0327  batch: 0.0751  eta: 0:17:50
2023-04-18 11:32:25,362 - lanedet.utils.recorder - INFO - epoch: 12  step: 9949  lr: 0.0155  det_loss: 0.6100  cat_loss: 1.4157  data: 0.0304  batch: 0.0759  eta: 0:17:42
2023-04-18 11:32:32,969 - lanedet.utils.recorder - INFO - epoch: 12  step: 10049  lr: 0.0154  det_loss: 0.6324  cat_loss: 1.4528  data: 0.0301  batch: 0.0741  eta: 0:17:35


2023-04-18 11:33:13,235 - lanedet.utils.recorder - INFO - Detection: 0.8888138792102206  classification accuracy: 0.738673139158576
2023-04-18 11:33:13,235 - lanedet.utils.recorder - INFO - Best detection metric: 0.9217116724738679  Best classification metric: 0.7463592233009712
2023-04-18 11:33:14,228 - lanedet.utils.recorder - INFO - epoch: 13  step: 10453  lr: 0.0150  det_loss: 0.6152  cat_loss: 1.4634  data: 0.0706  batch: 0.1094  eta: 0:17:05
2023-04-18 11:33:21,736 - lanedet.utils.recorder - INFO - epoch: 13  step: 10553  lr: 0.0149  det_loss: 0.5752  cat_loss: 1.4417  data: 0.0285  batch: 0.0708  eta: 0:16:58
2023-04-18 11:33:29,319 - lanedet.utils.recorder - INFO - epoch: 13  step: 10653  lr: 0.0148  det_loss: 0.6782  cat_loss: 1.4597  data: 0.0305  batch: 0.0769  eta: 0:16:50
2023-04-18 11:33:36,505 - lanedet.utils.recorder - INFO - epoch: 13  step: 10753  lr: 0.0147  det_loss: 0.6082  cat_loss: 1.4522  data: 0.0318  batch: 0.0746  eta: 0:16:43
2023-04-18 11:33:43,896 - lanedet.utils.recorder - INFO - epoch: 13  step: 10853  lr: 0.0146  det_loss: 0.6123  cat_loss: 1.4184  data: 0.0302  batch: 0.0721  eta: 0:16:35
2023-04-18 11:33:51,537 - lanedet.utils.recorder - INFO - epoch: 13  step: 10953  lr: 0.0145  det_loss: 0.5849  cat_loss: 1.4232  data: 0.0338  batch: 0.0878  eta: 0:16:28


2023-04-18 11:34:24,622 - lanedet.utils.recorder - INFO - Best detection metric: 0.9217116724738679  Best classification metric: 0.7463592233009712
2023-04-18 11:34:25,840 - lanedet.utils.recorder - INFO - epoch: 14  step: 11257  lr: 0.0142  det_loss: 0.5693  cat_loss: 1.4208  data: 0.0804  batch: 0.1213  eta: 0:16:06
2023-04-18 11:34:33,459 - lanedet.utils.recorder - INFO - epoch: 14  step: 11357  lr: 0.0141  det_loss: 0.5667  cat_loss: 1.4291  data: 0.0293  batch: 0.0720  eta: 0:15:59
2023-04-18 11:34:42,462 - lanedet.utils.recorder - INFO - epoch: 14  step: 11457  lr: 0.0140  det_loss: 0.5431  cat_loss: 1.3885  data: 0.0367  batch: 0.0870  eta: 0:15:53
2023-04-18 11:34:50,487 - lanedet.utils.recorder - INFO - epoch: 14  step: 11557  lr: 0.0139  det_loss: 0.6052  cat_loss: 1.4469  data: 0.0293  batch: 0.0760  eta: 0:15:46
2023-04-18 11:34:58,318 - lanedet.utils.recorder - INFO - epoch: 14  step: 11657  lr: 0.0138  det_loss: 0.5528  cat_loss: 1.4199  data: 0.0306  batch: 0.0768  eta: 0:15:39
2023-04-18 11:35:06,700 - lanedet.utils.recorder - INFO - epoch: 14  step: 11757  lr: 0.0137  det_loss: 0.5996  cat_loss: 1.4357  data: 0.0304  batch: 0.0833  eta: 0:15:32


2023-04-18 11:35:40,826 - lanedet.utils.recorder - INFO - Detection: 0.9268546747967479  classification accuracy: 0.7257281553398057
2023-04-18 11:35:45,011 - lanedet.utils.recorder - INFO - Best detection metric: 0.9268546747967479  Best classification metric: 0.7463592233009712
2023-04-18 11:35:46,326 - lanedet.utils.recorder - INFO - epoch: 15  step: 12061  lr: 0.0134  det_loss: 0.5159  cat_loss: 1.4343  data: 0.0849  batch: 0.1282  eta: 0:15:12
2023-04-18 11:35:54,383 - lanedet.utils.recorder - INFO - epoch: 15  step: 12161  lr: 0.0133  det_loss: 0.5514  cat_loss: 1.4319  data: 0.0293  batch: 0.0737  eta: 0:15:05
2023-04-18 11:36:01,919 - lanedet.utils.recorder - INFO - epoch: 15  step: 12261  lr: 0.0132  det_loss: 0.5877  cat_loss: 1.4399  data: 0.0295  batch: 0.0757  eta: 0:14:57
2023-04-18 11:36:09,847 - lanedet.utils.recorder - INFO - epoch: 15  step: 12361  lr: 0.0131  det_loss: 0.5653  cat_loss: 1.4393  data: 0.0317  batch: 0.0738  eta: 0:14:50
2023-04-18 11:36:17,608 - lanedet.utils.recorder - INFO - epoch: 15  step: 12461  lr: 0.0130  det_loss: 0.5644  cat_loss: 1.3930  data: 0.0321  batch: 0.0767  eta: 0:14:43
2023-04-18 11:36:24,579 - lanedet.utils.recorder - INFO - epoch: 15  step: 12561  lr: 0.0129  det_loss: 0.5434  cat_loss: 1.3969  data: 0.0294  batch: 0.0698  eta: 0:14:35
2023-04-18 11:36:32,792 - lanedet.utils.recorder - INFO - epoch: 15  step: 12661  lr: 0.0128  det_loss: 0.5062  cat_loss: 1.3934  data: 0.0366  batch: 0.0928  eta: 0:14:28


2023-04-18 11:36:58,539 - lanedet.utils.recorder - INFO - Detection: 0.917149390243903  classification accuracy: 0.7508090614886728
2023-04-18 11:36:58,540 - lanedet.utils.recorder - INFO - Best detection metric: 0.9268546747967479  Best classification metric: 0.7508090614886728
2023-04-18 11:36:59,538 - lanedet.utils.recorder - INFO - epoch: 16  step: 12865  lr: 0.0126  det_loss: 0.5385  cat_loss: 1.4601  data: 0.0695  batch: 0.1089  eta: 0:14:13
2023-04-18 11:37:07,314 - lanedet.utils.recorder - INFO - epoch: 16  step: 12965  lr: 0.0125  det_loss: 0.5085  cat_loss: 1.4059  data: 0.0321  batch: 0.0745  eta: 0:14:05
2023-04-18 11:37:14,619 - lanedet.utils.recorder - INFO - epoch: 16  step: 13065  lr: 0.0124  det_loss: 0.5469  cat_loss: 1.4058  data: 0.0279  batch: 0.0713  eta: 0:13:58
2023-04-18 11:37:21,736 - lanedet.utils.recorder - INFO - epoch: 16  step: 13165  lr: 0.0123  det_loss: 0.5553  cat_loss: 1.4365  data: 0.0279  batch: 0.0717  eta: 0:13:50
2023-04-18 11:37:28,735 - lanedet.utils.recorder - INFO - epoch: 16  step: 13265  lr: 0.0122  det_loss: 0.5658  cat_loss: 1.4275  data: 0.0295  batch: 0.0705  eta: 0:13:42
2023-04-18 11:37:35,874 - lanedet.utils.recorder - INFO - epoch: 16  step: 13365  lr: 0.0121  det_loss: 0.5435  cat_loss: 1.4073  data: 0.0306  batch: 0.0722  eta: 0:13:34
2023-04-18 11:37:43,113 - lanedet.utils.recorder - INFO - epoch: 16  step: 13465  lr: 0.0120  det_loss: 0.4869  cat_loss: 1.4348  data: 0.0283  batch: 0.0750  eta: 0:13:26
2023-04-18 11:37:50,586 - lanedet.utils.recorder - INFO - epoch: 16  step: 13565  lr: 0.0119  det_loss: 0.5318  cat_loss: 1.3971  data: 0.0280  batch: 0.0734  eta: 0:13:18
2023-04-18 11:37:57,578 - lanedet.utils.recorder - INFO - epoch: 16  step: 13665  lr: 0.0118  det_loss: 0.5818  cat_loss: 1.4634  data: 0.0287  batch: 0.0672  eta: 0:13:10
2023-04-18 11:37:57,772 - lanedet.utils.recorder - INFO - epoch: 16  step: 13668  lr: 0.0118  det_loss: 0.5797  cat_loss: 1.4549  data: 0.0292  batch: 0.0670  eta: 0:13:10

2023-04-18 11:38:08,032 - lanedet.utils.recorder - INFO - Detection: 0.9268111207897795  classification accuracy: 0.6759708737864079
2023-04-18 11:38:08,032 - lanedet.utils.recorder - INFO - Best detection metric: 0.9268546747967479  Best classification metric: 0.7508090614886728
2023-04-18 11:38:09,179 - lanedet.utils.recorder - INFO - epoch: 17  step: 13669  lr: 0.0118  det_loss: 0.5791  cat_loss: 1.4549  data: 0.0800  batch: 0.1184  eta: 0:13:11
2023-04-18 11:38:16,469 - lanedet.utils.recorder - INFO - epoch: 17  step: 13769  lr: 0.0117  det_loss: 0.5340  cat_loss: 1.4260  data: 0.0283  batch: 0.0692  eta: 0:13:03
2023-04-18 11:38:23,671 - lanedet.utils.recorder - INFO - epoch: 17  step: 13869  lr: 0.0116  det_loss: 0.5553  cat_loss: 1.3909  data: 0.0287  batch: 0.0717  eta: 0:12:55
2023-04-18 11:38:30,841 - lanedet.utils.recorder - INFO - epoch: 17  step: 13969  lr: 0.0115  det_loss: 0.5521  cat_loss: 1.4158  data: 0.0273  batch: 0.0728  eta: 0:12:48
2023-04-18 11:38:38,003 - lanedet.utils.recorder - INFO - epoch: 17  step: 14069  lr: 0.0114  det_loss: 0.5446  cat_loss: 1.4215  data: 0.0302  batch: 0.0710  eta: 0:12:40
2023-04-18 11:38:45,152 - lanedet.utils.recorder - INFO - epoch: 17  step: 14169  lr: 0.0113  det_loss: 0.5502  cat_loss: 1.4219  data: 0.0297  batch: 0.0721  eta: 0:12:32
2023-04-18 11:38:52,173 - lanedet.utils.recorder - INFO - epoch: 17  step: 14269  lr: 0.0112  det_loss: 0.5025  cat_loss: 1.4323  data: 0.0274  batch: 0.0693  eta: 0:12:24

2023-04-18 11:39:17,124 - lanedet.utils.recorder - INFO - Detection: 0.9215737514517993  classification accuracy: 0.7637540453074433
2023-04-18 11:39:17,124 - lanedet.utils.recorder - INFO - Best detection metric: 0.9268546747967479  Best classification metric: 0.7637540453074433
2023-04-18 11:39:18,182 - lanedet.utils.recorder - INFO - epoch: 18  step: 14473  lr: 0.0110  det_loss: 0.5010  cat_loss: 1.3739  data: 0.0739  batch: 0.1146  eta: 0:12:09
2023-04-18 11:39:25,899 - lanedet.utils.recorder - INFO - epoch: 18  step: 14573  lr: 0.0109  det_loss: 0.5126  cat_loss: 1.3879  data: 0.0281  batch: 0.0722  eta: 0:12:01
2023-04-18 11:39:33,384 - lanedet.utils.recorder - INFO - epoch: 18  step: 14673  lr: 0.0108  det_loss: 0.5243  cat_loss: 1.4218  data: 0.0276  batch: 0.0723  eta: 0:11:54
2023-04-18 11:39:40,698 - lanedet.utils.recorder - INFO - epoch: 18  step: 14773  lr: 0.0107  det_loss: 0.4700  cat_loss: 1.4006  data: 0.0287  batch: 0.0736  eta: 0:11:46
2023-04-18 11:39:47,937 - lanedet.utils.recorder - INFO - epoch: 18  step: 14873  lr: 0.0106  det_loss: 0.5152  cat_loss: 1.4023  data: 0.0306  batch: 0.0748  eta: 0:11:38
2023-04-18 11:39:55,316 - lanedet.utils.recorder - INFO - epoch: 18  step: 14973  lr: 0.0105  det_loss: 0.5356  cat_loss: 1.4177  data: 0.0285  batch: 0.0733  eta: 0:11:31

2023-04-18 11:40:27,818 - lanedet.utils.recorder - INFO - Detection: 0.9308471254355404  classification accuracy: 0.7544498381877021
2023-04-18 11:40:31,042 - lanedet.utils.recorder - INFO - Best detection metric: 0.9308471254355404  Best classification metric: 0.7637540453074433
2023-04-18 11:40:32,156 - lanedet.utils.recorder - INFO - epoch: 19  step: 15277  lr: 0.0102  det_loss: 0.5017  cat_loss: 1.4279  data: 0.0767  batch: 0.1183  eta: 0:11:08
2023-04-18 11:40:39,720 - lanedet.utils.recorder - INFO - epoch: 19  step: 15377  lr: 0.0100  det_loss: 0.4798  cat_loss: 1.4199  data: 0.0273  batch: 0.0714  eta: 0:11:00
2023-04-18 11:40:47,189 - lanedet.utils.recorder - INFO - epoch: 19  step: 15477  lr: 0.0099  det_loss: 0.5343  cat_loss: 1.4220  data: 0.0272  batch: 0.0702  eta: 0:10:53
2023-04-18 11:40:55,037 - lanedet.utils.recorder - INFO - epoch: 19  step: 15577  lr: 0.0098  det_loss: 0.5089  cat_loss: 1.3726  data: 0.0303  batch: 0.0728  eta: 0:10:45
2023-04-18 11:41:02,533 - lanedet.utils.recorder - INFO - epoch: 19  step: 15677  lr: 0.0097  det_loss: 0.5185  cat_loss: 1.3924  data: 0.0285  batch: 0.0703  eta: 0:10:38
2023-04-18 11:41:10,020 - lanedet.utils.recorder - INFO - epoch: 19  step: 15777  lr: 0.0096  det_loss: 0.5155  cat_loss: 1.4094  data: 0.0306  batch: 0.0772  eta: 0:10:30

2023-04-18 11:41:42,546 - lanedet.utils.recorder - INFO - Detection: 0.930730981416957  classification accuracy: 0.7637540453074434
2023-04-18 11:41:42,546 - lanedet.utils.recorder - INFO - Best detection metric: 0.9308471254355404  Best classification metric: 0.7637540453074434
2023-04-18 11:41:43,710 - lanedet.utils.recorder - INFO - epoch: 20  step: 16081  lr: 0.0093  det_loss: 0.4823  cat_loss: 1.4049  data: 0.0787  batch: 0.1198  eta: 0:10:08
2023-04-18 11:41:51,135 - lanedet.utils.recorder - INFO - epoch: 20  step: 16181  lr: 0.0092  det_loss: 0.4930  cat_loss: 1.3649  data: 0.0305  batch: 0.0707  eta: 0:10:00
2023-04-18 11:41:58,350 - lanedet.utils.recorder - INFO - epoch: 20  step: 16281  lr: 0.0091  det_loss: 0.4993  cat_loss: 1.4094  data: 0.0280  batch: 0.0701  eta: 0:09:52
2023-04-18 11:42:05,714 - lanedet.utils.recorder - INFO - epoch: 20  step: 16381  lr: 0.0090  det_loss: 0.4871  cat_loss: 1.4220  data: 0.0283  batch: 0.0739  eta: 0:09:45
2023-04-18 11:42:13,827 - lanedet.utils.recorder - INFO - epoch: 20  step: 16481  lr: 0.0089  det_loss: 0.5218  cat_loss: 1.4053  data: 0.0319  batch: 0.0790  eta: 0:09:37
2023-04-18 11:42:21,237 - lanedet.utils.recorder - INFO - epoch: 20  step: 16581  lr: 0.0088  det_loss: 0.4788  cat_loss: 1.4137  data: 0.0287  batch: 0.0742  eta: 0:09:30

2023-04-18 11:42:53,732 - lanedet.utils.recorder - INFO - Detection: 0.9323315911730545  classification accuracy: 0.7839805825242713
2023-04-18 11:42:57,975 - lanedet.utils.recorder - INFO - Best detection metric: 0.9323315911730545  Best classification metric: 0.7839805825242713
2023-04-18 11:42:59,019 - lanedet.utils.recorder - INFO - epoch: 21  step: 16885  lr: 0.0085  det_loss: 0.4869  cat_loss: 1.4116  data: 0.0740  batch: 0.1137  eta: 0:09:07
2023-04-18 11:43:06,430 - lanedet.utils.recorder - INFO - epoch: 21  step: 16985  lr: 0.0084  det_loss: 0.4595  cat_loss: 1.4322  data: 0.0275  batch: 0.0712  eta: 0:09:00
2023-04-18 11:43:13,648 - lanedet.utils.recorder - INFO - epoch: 21  step: 17085  lr: 0.0083  det_loss: 0.5099  cat_loss: 1.4181  data: 0.0269  batch: 0.0713  eta: 0:08:52
2023-04-18 11:43:20,863 - lanedet.utils.recorder - INFO - epoch: 21  step: 17185  lr: 0.0082  det_loss: 0.4936  cat_loss: 1.3990  data: 0.0267  batch: 0.0716  eta: 0:08:44
2023-04-18 11:43:27,948 - lanedet.utils.recorder - INFO - epoch: 21  step: 17285  lr: 0.0081  det_loss: 0.4980  cat_loss: 1.3822  data: 0.0282  batch: 0.0712  eta: 0:08:36
2023-04-18 11:43:35,083 - lanedet.utils.recorder - INFO - epoch: 21  step: 17385  lr: 0.0080  det_loss: 0.4600  cat_loss: 1.3719  data: 0.0282  batch: 0.0722  eta: 0:08:29
2023-04-18 11:43:42,328 - lanedet.utils.recorder - INFO - epoch: 21  step: 17485  lr: 0.0078  det_loss: 0.4974  cat_loss: 1.4011  data: 0.0276  batch: 0.0710  eta: 0:08:21

2023-04-18 11:44:08,227 - lanedet.utils.recorder - INFO - Detection: 0.9276204994192799  classification accuracy: 0.7661812297734628
2023-04-18 11:44:08,227 - lanedet.utils.recorder - INFO - Best detection metric: 0.9323315911730545  Best classification metric: 0.7839805825242713
2023-04-18 11:44:09,166 - lanedet.utils.recorder - INFO - epoch: 22  step: 17689  lr: 0.0076  det_loss: 0.4974  cat_loss: 1.4130  data: 0.0683  batch: 0.1081  eta: 0:08:06
2023-04-18 11:44:16,986 - lanedet.utils.recorder - INFO - epoch: 22  step: 17789  lr: 0.0075  det_loss: 0.4522  cat_loss: 1.3719  data: 0.0271  batch: 0.0715  eta: 0:07:58
2023-04-18 11:44:24,334 - lanedet.utils.recorder - INFO - epoch: 22  step: 17889  lr: 0.0074  det_loss: 0.4804  cat_loss: 1.3907  data: 0.0259  batch: 0.0722  eta: 0:07:51
2023-04-18 11:44:31,589 - lanedet.utils.recorder - INFO - epoch: 22  step: 17989  lr: 0.0073  det_loss: 0.4419  cat_loss: 1.3897  data: 0.0290  batch: 0.0717  eta: 0:07:43
2023-04-18 11:44:38,985 - lanedet.utils.recorder - INFO - epoch: 22  step: 18089  lr: 0.0072  det_loss: 0.4434  cat_loss: 1.4034  data: 0.0300  batch: 0.0733  eta: 0:07:36
2023-04-18 11:44:46,230 - lanedet.utils.recorder - INFO - epoch: 22  step: 18189  lr: 0.0071  det_loss: 0.4224  cat_loss: 1.3719  data: 0.0318  batch: 0.0784  eta: 0:07:28

2023-04-18 11:45:19,029 - lanedet.utils.recorder - INFO - Detection: 0.9373221544715442  classification accuracy: 0.7791262135922329
2023-04-18 11:45:23,100 - lanedet.utils.recorder - INFO - Best detection metric: 0.9373221544715442  Best classification metric: 0.7839805825242713
2023-04-18 11:45:24,142 - lanedet.utils.recorder - INFO - epoch: 23  step: 18493  lr: 0.0068  det_loss: 0.4221  cat_loss: 1.3867  data: 0.0713  batch: 0.1129  eta: 0:07:05
2023-04-18 11:45:31,561 - lanedet.utils.recorder - INFO - epoch: 23  step: 18593  lr: 0.0067  det_loss: 0.4381  cat_loss: 1.3969  data: 0.0298  batch: 0.0719  eta: 0:06:58
2023-04-18 11:45:38,844 - lanedet.utils.recorder - INFO - epoch: 23  step: 18693  lr: 0.0066  det_loss: 0.4735  cat_loss: 1.3817  data: 0.0296  batch: 0.0715  eta: 0:06:50
2023-04-18 11:45:46,487 - lanedet.utils.recorder - INFO - epoch: 23  step: 18793  lr: 0.0064  det_loss: 0.4676  cat_loss: 1.3832  data: 0.0309  batch: 0.0732  eta: 0:06:43
2023-04-18 11:45:54,154 - lanedet.utils.recorder - INFO - epoch: 23  step: 18893  lr: 0.0063  det_loss: 0.4218  cat_loss: 1.3858  data: 0.0316  batch: 0.0793  eta: 0:06:35
2023-04-18 11:46:01,501 - lanedet.utils.recorder - INFO - epoch: 23  step: 18993  lr: 0.0062  det_loss: 0.4343  cat_loss: 1.4069  data: 0.0299  batch: 0.0712  eta: 0:06:28
2023-04-18 11:46:09,075 - lanedet.utils.recorder - INFO - epoch: 23  step: 19093  lr: 0.0061  det_loss: 0.4326  cat_loss: 1.4303  data: 0.0297  batch: 0.0742  eta: 0:06:20

2023-04-18 11:46:35,003 - lanedet.utils.recorder - INFO - Detection: 0.929990563298491  classification accuracy: 0.7657766990291265
2023-04-18 11:46:35,004 - lanedet.utils.recorder - INFO - Best detection metric: 0.9373221544715442  Best classification metric: 0.7839805825242713
2023-04-18 11:46:36,046 - lanedet.utils.recorder - INFO - epoch: 24  step: 19297  lr: 0.0059  det_loss: 0.4546  cat_loss: 1.3965  data: 0.0707  batch: 0.1142  eta: 0:06:05
2023-04-18 11:46:43,898 - lanedet.utils.recorder - INFO - epoch: 24  step: 19397  lr: 0.0058  det_loss: 0.4502  cat_loss: 1.3925  data: 0.0334  batch: 0.0772  eta: 0:05:58
2023-04-18 11:46:51,761 - lanedet.utils.recorder - INFO - epoch: 24  step: 19497  lr: 0.0057  det_loss: 0.4399  cat_loss: 1.3887  data: 0.0306  batch: 0.0766  eta: 0:05:50
2023-04-18 11:46:59,126 - lanedet.utils.recorder - INFO - epoch: 24  step: 19597  lr: 0.0056  det_loss: 0.4867  cat_loss: 1.4003  data: 0.0300  batch: 0.0737  eta: 0:05:42
2023-04-18 11:47:06,858 - lanedet.utils.recorder - INFO - epoch: 24  step: 19697  lr: 0.0055  det_loss: 0.4650  cat_loss: 1.4157  data: 0.0302  batch: 0.0750  eta: 0:05:35
2023-04-18 11:47:14,568 - lanedet.utils.recorder - INFO - epoch: 24  step: 19797  lr: 0.0053  det_loss: 0.4477  cat_loss: 1.3809  data: 0.0311  batch: 0.0864  eta: 0:05:27
2023-04-18 11:47:22,004 - lanedet.utils.recorder - INFO - epoch: 24  step: 19897  lr: 0.0052  det_loss: 0.4415  cat_loss: 1.4048  data: 0.0309  batch: 0.0759  eta: 0:05:20

2023-04-18 11:47:48,053 - lanedet.utils.recorder - INFO - Detection: 0.9381133855981414  classification accuracy: 0.7815533980582525
2023-04-18 11:47:52,149 - lanedet.utils.recorder - INFO - Best detection metric: 0.9381133855981414  Best classification metric: 0.7839805825242713
2023-04-18 11:47:53,202 - lanedet.utils.recorder - INFO - epoch: 25  step: 20101  lr: 0.0050  det_loss: 0.4367  cat_loss: 1.4197  data: 0.0722  batch: 0.1148  eta: 0:05:05
2023-04-18 11:48:01,196 - lanedet.utils.recorder - INFO - epoch: 25  step: 20201  lr: 0.0049  det_loss: 0.4675  cat_loss: 1.3990  data: 0.0276  batch: 0.0691  eta: 0:04:57
2023-04-18 11:48:08,718 - lanedet.utils.recorder - INFO - epoch: 25  step: 20301  lr: 0.0048  det_loss: 0.4272  cat_loss: 1.4119  data: 0.0322  batch: 0.0819  eta: 0:04:50
2023-04-18 11:48:16,101 - lanedet.utils.recorder - INFO - epoch: 25  step: 20401  lr: 0.0047  det_loss: 0.4557  cat_loss: 1.3944  data: 0.0269  batch: 0.0691  eta: 0:04:42
2023-04-18 11:48:23,749 - lanedet.utils.recorder - INFO - epoch: 25  step: 20501  lr: 0.0046  det_loss: 0.4084  cat_loss: 1.3760  data: 0.0311  batch: 0.0845  eta: 0:04:35
2023-04-18 11:48:31,637 - lanedet.utils.recorder - INFO - epoch: 25  step: 20601  lr: 0.0045  det_loss: 0.4639  cat_loss: 1.3774  data: 0.0293  batch: 0.0861  eta: 0:04:27

2023-04-18 11:49:05,599 - lanedet.utils.recorder - INFO - Detection: 0.9368394308943088  classification accuracy: 0.7807443365695793
2023-04-18 11:49:05,599 - lanedet.utils.recorder - INFO - Best detection metric: 0.9381133855981414  Best classification metric: 0.7839805825242713
2023-04-18 11:49:06,886 - lanedet.utils.recorder - INFO - epoch: 26  step: 20905  lr: 0.0041  det_loss: 0.4256  cat_loss: 1.4017  data: 0.0831  batch: 0.1252  eta: 0:04:05
2023-04-18 11:49:14,268 - lanedet.utils.recorder - INFO - epoch: 26  step: 21005  lr: 0.0040  det_loss: 0.4540  cat_loss: 1.3823  data: 0.0297  batch: 0.0695  eta: 0:03:57
2023-04-18 11:49:21,609 - lanedet.utils.recorder - INFO - epoch: 26  step: 21105  lr: 0.0039  det_loss: 0.4311  cat_loss: 1.3996  data: 0.0313  batch: 0.0702  eta: 0:03:49
2023-04-18 11:49:29,354 - lanedet.utils.recorder - INFO - epoch: 26  step: 21205  lr: 0.0038  det_loss: 0.4150  cat_loss: 1.4074  data: 0.0337  batch: 0.0790  eta: 0:03:42
2023-04-18 11:49:37,528 - lanedet.utils.recorder - INFO - epoch: 26  step: 21305  lr: 0.0036  det_loss: 0.4322  cat_loss: 1.3782  data: 0.0332  batch: 0.0762  eta: 0:03:34
2023-04-18 11:49:44,981 - lanedet.utils.recorder - INFO - epoch: 26  step: 21405  lr: 0.0035  det_loss: 0.4116  cat_loss: 1.3594  data: 0.0281  batch: 0.0752  eta: 0:03:27
2023-04-18 11:49:52,673 - lanedet.utils.recorder - INFO - epoch: 26  step: 21505  lr: 0.0034  det_loss: 0.4281  cat_loss: 1.3823  data: 0.0335  batch: 0.0822  eta: 0:03:19

2023-04-18 11:50:18,524 - lanedet.utils.recorder - INFO - Detection: 0.9392385307781648  classification accuracy: 0.7815533980582523
2023-04-18 11:50:22,666 - lanedet.utils.recorder - INFO - Best detection metric: 0.9392385307781648  Best classification metric: 0.7839805825242713
2023-04-18 11:50:23,791 - lanedet.utils.recorder - INFO - epoch: 27  step: 21709  lr: 0.0032  det_loss: 0.4164  cat_loss: 1.4111  data: 0.0767  batch: 0.1173  eta: 0:03:04
2023-04-18 11:50:31,331 - lanedet.utils.recorder - INFO - epoch: 27  step: 21809  lr: 0.0031  det_loss: 0.4191  cat_loss: 1.3990  data: 0.0297  batch: 0.0707  eta: 0:02:56
2023-04-18 11:50:38,900 - lanedet.utils.recorder - INFO - epoch: 27  step: 21909  lr: 0.0029  det_loss: 0.4184  cat_loss: 1.4031  data: 0.0300  batch: 0.0679  eta: 0:02:49
2023-04-18 11:50:45,950 - lanedet.utils.recorder - INFO - epoch: 27  step: 22009  lr: 0.0028  det_loss: 0.4584  cat_loss: 1.3657  data: 0.0326  batch: 0.0753  eta: 0:02:41
2023-04-18 11:50:53,480 - lanedet.utils.recorder - INFO - epoch: 27  step: 22109  lr: 0.0027  det_loss: 0.4163  cat_loss: 1.3718  data: 0.0275  batch: 0.0716  eta: 0:02:34
2023-04-18 11:51:00,649 - lanedet.utils.recorder - INFO - epoch: 27  step: 22209  lr: 0.0026  det_loss: 0.4165  cat_loss: 1.3740  data: 0.0279  batch: 0.0716  eta: 0:02:26
2023-04-18 11:51:07,686 - lanedet.utils.recorder - INFO - epoch: 27  step: 22309  lr: 0.0025  det_loss: 0.4092  cat_loss: 1.4031  data: 0.0283  batch: 0.0714  eta: 0:02:19

2023-04-18 11:51:33,141 - lanedet.utils.recorder - INFO - Detection: 0.9382730836236924  classification accuracy: 0.7771035598705499
2023-04-18 11:51:33,141 - lanedet.utils.recorder - INFO - Best detection metric: 0.9392385307781648  Best classification metric: 0.7839805825242713
2023-04-18 11:51:34,343 - lanedet.utils.recorder - INFO - epoch: 28  step: 22513  lr: 0.0022  det_loss: 0.4327  cat_loss: 1.3928  data: 0.0809  batch: 0.1231  eta: 0:02:03
2023-04-18 11:51:41,741 - lanedet.utils.recorder - INFO - epoch: 28  step: 22613  lr: 0.0021  det_loss: 0.4171  cat_loss: 1.3873  data: 0.0265  batch: 0.0720  eta: 0:01:56
2023-04-18 11:51:48,961 - lanedet.utils.recorder - INFO - epoch: 28  step: 22713  lr: 0.0020  det_loss: 0.4192  cat_loss: 1.3963  data: 0.0265  batch: 0.0710  eta: 0:01:48
2023-04-18 11:51:56,338 - lanedet.utils.recorder - INFO - epoch: 28  step: 22813  lr: 0.0018  det_loss: 0.4211  cat_loss: 1.3945  data: 0.0284  batch: 0.0708  eta: 0:01:40
2023-04-18 11:52:03,481 - lanedet.utils.recorder - INFO - epoch: 28  step: 22913  lr: 0.0017  det_loss: 0.4208  cat_loss: 1.3511  data: 0.0282  batch: 0.0702  eta: 0:01:33
2023-04-18 11:52:10,614 - lanedet.utils.recorder - INFO - epoch: 28  step: 23013  lr: 0.0016  det_loss: 0.3902  cat_loss: 1.3948  data: 0.0269  batch: 0.0713  eta: 0:01:25
2023-04-18 11:52:17,713 - lanedet.utils.recorder - INFO - epoch: 28  step: 23113  lr: 0.0015  det_loss: 0.3755  cat_loss: 1.3824  data: 0.0283  batch: 0.0718  eta: 0:01:18

2023-04-18 11:52:42,452 - lanedet.utils.recorder - INFO - Detection: 0.9387158826945403  classification accuracy: 0.792071197411003
2023-04-18 11:52:42,452 - lanedet.utils.recorder - INFO - Best detection metric: 0.9392385307781648  Best classification metric: 0.792071197411003
2023-04-18 11:52:43,391 - lanedet.utils.recorder - INFO - epoch: 29  step: 23317  lr: 0.0012  det_loss: 0.3697  cat_loss: 1.3406  data: 0.0659  batch: 0.1072  eta: 0:01:02
2023-04-18 11:52:50,891 - lanedet.utils.recorder - INFO - epoch: 29  step: 23417  lr: 0.0011  det_loss: 0.3762  cat_loss: 1.3761  data: 0.0301  batch: 0.0711  eta: 0:00:55
2023-04-18 11:52:58,044 - lanedet.utils.recorder - INFO - epoch: 29  step: 23517  lr: 0.0009  det_loss: 0.4473  cat_loss: 1.3907  data: 0.0289  batch: 0.0710  eta: 0:00:47
2023-04-18 11:53:05,091 - lanedet.utils.recorder - INFO - epoch: 29  step: 23617  lr: 0.0008  det_loss: 0.4759  cat_loss: 1.4219  data: 0.0301  batch: 0.0701  eta: 0:00:40
2023-04-18 11:53:12,238 - lanedet.utils.recorder - INFO - epoch: 29  step: 23717  lr: 0.0007  det_loss: 0.3696  cat_loss: 1.3660  data: 0.0266  batch: 0.0706  eta: 0:00:32
2023-04-18 11:53:19,721 - lanedet.utils.recorder - INFO - epoch: 29  step: 23817  lr: 0.0005  det_loss: 0.4078  cat_loss: 1.3990  data: 0.0303  batch: 0.0817  eta: 0:00:25
2023-04-18 11:53:26,860 - lanedet.utils.recorder - INFO - epoch: 29  step: 23917  lr: 0.0004  det_loss: 0.3779  cat_loss: 1.3843  data: 0.0305  batch: 0.0712  eta: 0:00:17

2023-04-18 11:53:57,028 - lanedet.utils.recorder - INFO - Detection: 0.9408209930313587  classification accuracy: 0.7896440129449837
2023-04-18 11:54:01,258 - lanedet.utils.recorder - INFO - Best detection metric: 0.9408209930313587  Best classification metric: 0.792071197411003

This is the loss function:

    def loss(self, output, batch):
        criterion = SoftmaxFocalLoss(2)
        total_loss = 0
        loss_stats = {}
        det_loss = criterion(output['cls'], batch['cls_label'])
        
        loss_fn = torch.nn.CrossEntropyLoss()
        score = F.softmax(output['category'], dim=1)
        cat_loss = loss_fn(score, batch['category'])

        loss_stats.update({'det_loss': det_loss, 'cat_loss': cat_loss})

        total_loss = det_loss + cat_loss
        ret = {'loss': total_loss , 'loss_stats': loss_stats}

        return ret
commented

@zillur-av
I think there might be two problems:

  1. remove the line of score = F.softmax(output['category'], dim=1)
  2. check if the order of lane categories correspond to the order of lanes

@zillur-av I think there might be two problems:

  1. remove the line of score = F.softmax(output['category'], dim=1)
  2. check if the order of lane categories correspond to the order of lanes
  1. IF I remove softmax function, the summation of all the class probabilities of each label will not be equal to 1. Then how can I compute loss?
  2. I believe order is ok.
commented

@zillur-av
If I'm correct, torch.nn.CrossEntropyLoss handles the input without softmax. You only need softmax when you are in post-processing, like something when you want to get the probablity of each category during inference.

@zillur-av How about the classification accuracy?

@zillur-av How about the classification accuracy?

Please check this repo https://github.com/zillur-av/LVLane