Unsupervised multi Task feature learning on point clouds

Posted by Packy on January 16, 2020

2019_ICCV_Unsupervised Multi-Task Feature Learning on Point Clouds

unsupervised multi-task model to jointly learn point and shape features on point clouds. We define three unsupervised tasks including clustering, reconstruction, and self-supervised classification to train a multi-scale graph-based encoder

问题: 如何对点云进行无监督学习,即没有标签的点云数据如何进行分类、分割任务、重建等多种任务。

难点: 现有的一些工作因为无法获得监督信息,所以只能完成一项任务。

方法: 通过自监督学习和多任务学习来解决。 自监督学习仅使用数据中存在的信息来定义前置任务,以提供替代监督信号,而多任务学习通过联合学习跨任务使用共同性[95]。

所以本文提出了一种多任务模型,该模型利用无监督学习的三种机制(包括自我监督,自动编码和聚类)作为目标任务,共同学习点和形状特征。 受[9,22]的启发,我们表明,利用联合聚类和自我监督分类以及强制重建,可以实现令人鼓舞的结果,同时又可以避免琐碎的解决方案。

•我们为点云引入了基于多尺度图的编码器,并在无人监督的多任务学习环境中对其进行了训练。

自监督学习在未标记的数据上定义了代理任务,并使用该任务的伪标签为模型提供监督信号。

The main challenge in self-supervised learning is to define tasks that relate most to the down-stream tasks that use the learned features [33]. 自监督学习的主要挑战是定义与使用所学习特征的下游任务最相关的任务[33]。

多任务学习利用相关任务之间的共性来增强这些任务的性能[95,18]。 它学习具有足够表达能力的共享功能,以捕获跨任务的有用信息。 多任务学习已成功用于机器视觉应用中。我们的方法与这些模型相关,除了我们使用自我监督任务之外,还使用其他非监督任务,例如聚类和自动编码。

Methodology

定义了三个函数:

Clustering function 此函数鼓励编码器通过将特征空间中的相似样本推近并推开不相似的样本来生成易于聚类的特征。它还通过硬集群分配为模型提供了伪标签,用于自我监督学习。

Classifier function: 将潜变量映射到K个预测类别,利用聚类函数的伪标签,来进行监督训练。

Decoder function:解码函数,即将点云从特征空间恢复到坐标空间。我们使用倒角距离来测量原始点云与其重构之间的差异。 倒角距离可以相对于点进行微分,并且计算效率高。 它是通过在重建空间中找到原始空间每个点的最近邻居(反之亦然)并将它们的欧几里得距离相加得出的。

整个思路可以分为:选择K个点云,将点云映射到隐含特征空间dz, 然后在特征空间之中初始化质心,为这K点云的Shape feature特征。然后对分类函数进行训练,重建函数也进行训练,得到chamfer loss.

一个epoch进行kmeans, 得到新的质心。

Note that all these tasks are defined on the shape features. Because a shape feature is an aggregation of its corresponding point features, learning a good shape feature pushes the model to learn good point features too. 三个任务 都是建立在 点云全局shape feature上的。

Shared Multi-scale Graph-Based Encoder  K=IS  Co  Point Feature  Shape Feature  000  (1024, 512)  Reconstruction Task  MLP  Task  Multi-Tuk  Prediction Task  C tmpy  Figure l. Proposed Architecture for unsupervised multi-task feature learning on point clouds. It consists of a multi-scale graph-based  encoder that generates point and shape features for an input point cloud and three task decoders that jointly provide the architecture with a  multi-task loss.

对于点云的部件分割

Part segmentation is a fine-grained point-wise classification task where the goal is to predict the part category label of each point in a given shape.

文章做的是semi-supervised ShapeNetPart segmentation task.

抽取1%-5%的训练集,然后还是用预训练的网络抽取点云的特征 point feature。 后面怎么实现的没太看懂

未来的工作:

我们计划:(i)引入功能更强大的解码器,以提高学习到的特征的质量;(ii)研究其他特征(例如法线和测地距离)的影响;以及(iii)调整模型以执行语义细分任务。