Advertisement

【论文笔记】3D Model classification based on few-shot learning

阅读量:

【Title】3D Model classification based on few-shot learning

【Link】https://doi.org/10.1016/j.neucom.2019.03.105

【Key-words】FSL、PointCloud、3D model classification、LSTM

Problem&Motivate

为了在的3D model分类的场景中,使用少量的数据,实现模型的训练,在本文中,提出了一个基于LSTM的双元学习器模型,来学习用于训练另两个神经网络分类器的优化算法。本质是通过meta-learning学习一个优化的算法来指导分类网络在few-shot应用中更快收敛,性能更好。

基于梯度下降的算法,例如momentum、Adagrad、Adadelta、ADAM并不是为了特定的数量样本下设计的,不同few-shot中的KN个样本,他们更多是应用在样本数量较大的情况,需要很多部的迭代才能收敛。并且在特定的情况下,需要重新初始化参数,这样在数据更新后,就会限制算法收敛能力。

迁移学习是一种缓解的方案,但是会导致fine-turning后的网络,会偏离原来的已训练的网络。

文章提出的是基于优化函数的角度来实现3D model的few-shot classification 问题。

Method

论文提出了一种基于lstm的双元学习器优化器,用于优化学习神经网络分类器。元学习者在单任务中获取短期知识,在所有任务中获取长期知识。该meta-learning 模型通过直接捕获优化算法为目标,在只进行一定数量的更新的情况下,具有良好的泛化性能,从而快速地将classifier聚合到每个任务中。另外,论文得元学习模型允许它学习分类器的任务来共同初始化,从而获取所有任务之间共享的基本知识。

计算的前向传播图,也就是通过借鉴LSTM的结构,实现每个task和所有task的knowledge的联系,使meta-learning 不仅能学到当前任务的task,还可以从保留全局task的总体特征,使得模型更加泛化。

具体为:训练一个meta-learner LSTM模型,来学习用于训练神经网络的更新规则。利用LSTM的cell作为学习器的参数,从而给出关于梯度的有价值的信息

对于学习率的更新,则有如下的式子,可以控制学习率从而调制模型的收敛速率。

对于遗忘门参数的设定:

对于遗忘门的参设定,是考虑到,当meta-learner当前处于一个糟糕的局部最优状态时,需要一个大的改变才能逃脱,那么缩小学习者的参数和遗忘部分先前的值是一种思路,所以也可将遗忘门的参数设置成一个函数,来控制遗忘门的状态。

此外,还可以学习LSTM的cell初始状态c0,并将其作为元学习器的一个参数。这相当于classifier的初始权值。学习这个初始值可以让元学习者确定学习者的最优初始权重,从而使训练从一个有利的起点开始,从而使优化能够快速进行。

最后是LOSS函数的定义:

Experiment

实验在ShapenetCore 和 ModelNet40上进行的测试。主要测试模型的泛化性,数据集是是从ShapenetCore和ModelNet40各采集一部分,融合成base class,然后剩下的作为novel class 来检验模型的泛化性能。

Thoughts

论文描述了一个基于Dual-LSTM的元学习模型,该模型的灵感来自于梯度下降优化算法提出的参数更新策略。通过Dual-LSTM元学习器的状态更新,来表示分类器参数的学习更新。这样的方法可以获得一个较优的初始参数,并且对few-shot分类任务的参数更新提供一个较优的机制。论文的一大创新点是,针对小样本中数据少的情况,作者借鉴LSTM的结构,来学习不同meta-task中的关联性,从而将优化过程参数化、模型化,这使得在网络的设计上可以更加轻便,因为后期的优化策略,可以使网络结构更加的泛化。

全部评论 (0)

还没有任何评论哟~