hansen7 / OcCo

[ICCV '21] "Unsupervised Point Cloud Pre-training via Occlusion Completion"
https://hansen7.github.io/OcCo/
MIT License
228 stars 26 forks source link

Pre-training OcCo #16

Closed bachtx12 closed 3 years ago

bachtx12 commented 3 years ago

Hi @hansen7 Firstly, thank you for your code. Secondly, I have a question about your code pre-training OcCo. I read your code in the completion task (OcCo), these encoders have the same architecture as the encoder of DGCNN or Pointnet classification task. These pre-trained weights are suitable to initialize for the downstream task classification (because they have the same architecture). However, in other downstream tasks such as part segmentation or semantic segmentation, the encoder of these tasks is not the same as the pre-trained weight. Thus, there are some components of the encoder that will be randomly initialized?

Thank you!

hansen7 commented 3 years ago

Thanks for your notice!

..., the encoder of these tasks is not the same as the pre-trained weight. Thus, there are some components of the encoder that will be randomly initialized?

Yes, it is correct. Since the completion decoder is based on a vector representing each shape, for semseg and partseg encoders, there are certain parameters randomly initialised at the beginning of fine-tuning. https://github.com/hansen7/OcCo/blob/c218a2bb446f91702cf8fa6f56bb3a1da406009f/OcCo_Torch/utils/Torch_Utility.py#L17-L33

For the analysis, it is all based on the pre-trained classification encoder (PointNet).