Global-Local Bidirectional Reasoning for Unsupervised Representation Learning of 3D Point Clouds
本文介绍一篇cvpr2020里面关于点云无监督识别的文章。
论文
代码
1. 问题
以无监督的方式来学习点云,而且在modelnet和scannetobject 数据集上达到了和有监督方式的一样的精度。
2. 思想
这篇文章认为,由于3D物体自身的集合特性,应该可以根据局部推断出整体的类别,并且更好的区分类内的差别。反过来,整体的特征应该也可以推断出各个局部的细节。
显而易见,本文包含两个步骤。Local to Global Reasoning 和 Global to Local Reasoning
3. 算法
3.1 Local to Global Reasoning
思想就是,从提取到的局部特征,映射得一个全局特征,然后衡量由局部特征得到的全局特征与直接的全局特征之间差异,进行反复学习。
所以,首先需要一个预测网络。
- Prediction Networks:
将局部特征和全局特征映射到一个共享的特征空间内
接下来,就是需要衡量二者的差异
- Self-Supervised Metric Learning:
本文没有选取常规的二范数,而是将其看作是unsupervised metric learning task,并如此建模(我不太了解metric learning)还使用multi-class N-pair loss 来监督预测任务
仿照人脸识别的metric learning将特征放在一个超球上。
3.2 Global to Local Reasoning
进行Global to Local Reasoning 的原因是为了保证直接提取的global feature质量,如果直接提取的global feature质量比较差,那么Local to Global Reasoning 模块提取的local feature 就会像一个错误的方向移动,导致模型无法学习到有用的知识。
这个模块通过两个子任务来保证全局特征的有效性
- Self-Reconstruction
- Normal Estimation
注意,因为法向量估计是一个很难的任务,所以本文在modelnet数据集上,把此子任务变成了一个有监督的任务。这里其实有点小疑问,个人觉得法向量ground truth含有的信息可能还要多于classification label。
得到最终的loss
4 实验结果
分类精度很棒,大大超越了所有的无监督方法,甚至可以和有监督的分类方法相比拟。
从对比实验中可以看出,每个部分都起到了比较大的作用。不是很了解metric learning的建模方式对这篇文章的贡献有多大。也就是说为什么要使用metric learning 对loss进行约束呢?猜想一下,二范数约束loss的效果应该不好。
总结
文章做的很棒,以无监督方式甚至超过了一些有监督的模型。作者的知识面很广,佩服!