本文主要是介绍【Meta-tracker(ECCV2018)】论文阅读,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Meta-Tracker: Fast and Robust Online Adaptation for Visual Object Trackers 论文地址 代码
写在前面
因为我自己对元学习没有太细致了解过,所以想要深刻理解这篇论文可能还是需要比较扎实的meta-learning基础,这篇文章将元学习引入目标跟踪中,对比了CREST和MDNet加了meta-learning之后的结果,在这两个tracker上都有用,作者表明对所有基于学习的tracker,meta-learning都管用。现在做跟踪还是多个领域融合才能出新东西了。
Motivation
- 目前很多的tracker在模型初始化上花了很多时间,这篇文章就希望找到一个高效的模型初始化方法;
- 在模型初始化的时候如果我们能知道后续目标是怎么变化的,就能更好的构建模型,指导模型的初始化。
Contribution
- 提出了Meta-tracker,将其应用在目前已有的tracker上,解释了如何在基于相关滤波和基于深度学习的tracker上嵌入元学习。
Algorithm
其实算法的话,文章花了很大的篇幅解释了Meta-tracker,这个Meta-training过程在论文里用一段简单的伪代码展示,还挺容易懂的:
主要就是想学习一个 θ 0 \theta_0 θ0 和 α \alpha α,这个 θ 0 \theta_0 θ0就是网络的参数,不过是比我们常见的权重和偏差参数不同,这是在Meta-learning中定义的,也就是整个网络的参数(具体要去参考Meta-learning的论文), α \alpha α是整个网络的学习率。以上这个算法其实就是在第一帧初始化的时候用了后续帧的信息,然后随机选择一帧,用当前的 θ \theta θ 去预测,提高 θ \theta θ 的泛化能力。文章也提到了这个做法存在的一个问题,就是这个方法想要在第一帧快速收敛,所以学习率就会很大,这会使得网络很容易过拟合。
Meta-tracker 在MDNet上应用
文章后面提到了两个tracker上面的应用,因为CREST我没看过,这里我就以MDNet为例。
MDNet在训练阶段使用了Multi-domain的训练方式,在这篇文章由于Meta-learning学到的参数泛化性比较好,所以就只是以正常的训练方式,然后网络的Meta的参数学习和Algorithm 1一样。(但是师兄说过其实这个Multi-Domain的训练只是噱头,重要的是网络结构)
文章还提到了因为目标检测的库里面包含的类太少,所以算法在做的时候可能会把一些没见过的类分为背景,所以这个算法在样本选择之后会对样本做随机漂移,有些正样本标记为负样本酱。其实这个操作就是把负样本也当成了一个当前类,丰富了当前类的多样性,但是这样还是会对结果产生影响吧,对cluster的分辨性能可能会变差。
文章强调MDNet慢是因为它初始化太慢,所以加快了初始化就很大程度上加快MDNet大概30倍
Experiment
因为主要是想表述Meta-learning的作用,所以大部分实验都是在对比与原始tracker之间的提升。
总结
看的云里雾里的文章,做法比较新?(没看过Meta-learning的只能喊666),然后文章真的很喜欢用长句,看的吐血。Meta-learning对我来说还是很迷啊~主要贡献就是这个了吧,花了很大篇幅解释了Meta-training,然后讲了如何将Meta-learning用在tracker上。唉,不是很懂,先记一下,后期等我了解了这个领域再来更新吧
优点
- 解释了如何使用Meta-training以及做了很多实验表明其优越性。
缺点
- 维持了MDNet的缺点,包括慢,精度还是不够高,etc。
这篇关于【Meta-tracker(ECCV2018)】论文阅读的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!