In the same model, why should these four data sets be trained together?
wpumain opened this issue · comments
https://github.com/AggMan96/RK-Net/blob/14356dae2bfa81c154fcb5c14ea1cf0a75a61ff9/train.py#L199
for data,data2,data3,data4 in zip(dataloaders['satellite'], dataloaders['street'], dataloaders['drone'], dataloaders['google']) :
In this model, it also extracts the image features of these four data sets separately. Why should we train them together?
Hi @wpumain
Yes. We want to get positive samples by sampling the images of the same class/location together.
https://github.com/AggMan96/RK-Net/blob/14356dae2bfa81c154fcb5c14ea1cf0a75a61ff9/train.py#L243
However, the loss value of each data set is calculated separately from its own truth value, which does not guarantee that the images of the four data sets are of the same class.
` loss = criterion(outputs, labels) + criterion(outputs2, labels2) + criterion(outputs3, labels3)`
Sorry. You are right. I forgot it. We do not guarentee the positive pairs.
Actually, we want to use two/three platform data to update the model simultaneously.
It can prevent overfitting on certain platform, and generate better backward gradient.
I read the train.py source code of RK-Net.It is a great work.The idea of USAM is fantastic.
Can you provide the model that RK-Net has trained?
Didn't the test.py of the Rk-Net model use USAM? I understood train.py, but did not understand test.py.
Thank you for your interest in our work.
For the trained model, we had uploaded to GoogleDrive, you can find it at https://github.com/AggMan96/RK-Net#trained-model.
In the testing phase, we use the same model which is trained in the training phase. You can refer to the links
https://github.com/AggMan96/RK-Net/blob/14356dae2bfa81c154fcb5c14ea1cf0a75a61ff9/test.py#L208-L210 and https://github.com/AggMan96/RK-Net/blob/14356dae2bfa81c154fcb5c14ea1cf0a75a61ff9/utils.py#L88-L103.
Thank you again. Hope this reply can help you.
Think you for your help!