fanglaosi/Point-In-Context

Question about the evaluation

XLechter opened this issue · 2 comments

Hi authors, I have a question about the eval process. In eval_cd.py , line 256-259:

_, rebuild_points, loss = base_model(pointset1_pc, pointset2_pc, target1, target2)
rebuild_points, _ = sample_farthest_points(rebuild_points, K=target2.shape[1])
loss = base_model.loss_func(rebuild_points, target2)
loss = loss.mean()

I don't really understand this part. As in the tesing, target2 should be invisible. If I understand right, in this codes, it seems like that it just masks some of the points of target2, but the target2 is still partly visible.

Looking for your reply, thanks!

During testing, target2 is not visible to the model. target2 will be masked during testing, as described in line 288 of the models/PIC_Sep.py. If you have the pre-trained checkpoint of the PIC model, when you run eval_cd.py, you can try to change target2 on line 256 of eval_cd.py to a random tensor, and the evaluation results will not be changed.

Well received. Thanks a lot for resolving my question.