![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多任务
介绍多任务(单模多输出)有关的知识,比如多任务的训练策略,缓解多任务与单任务之间指标差距的一些Tricks等
tang-0203
这个作者很懒,什么都没留下…
展开
-
多任务一些难点 & 可做的点
1\ stride 4 > stride 4+8+16+32+64, bs from 10 > 6, 多尺度训练速度慢, 两阶段耗时两者对比: 1d17h vs 2d6h2\ 分割任务加stride=2做额外监督, 受显存限制, bs from 10 > 2, 太小了3\ 分割指标离驾驶还有较大差距, 和驾驶那边的细节差异目前还缺乏一个完整的调研4\ 多任务中, 各个检测单任务缺乏探索与调参(目前各个检测都共享一套超参)5\ 缺乏前后帧缺数据集, 从可视化结果来看, 和2.5D任务原创 2021-06-09 17:56:42 · 375 阅读 · 0 评论 -
注册构建机制的优势和劣势
优势:用户可以用一个config控制整个pipeline, 不用考虑类的具体实现和代码地址。抽象一些Registry, 比如模型可以抽象为: backbone, neck, head, output_module, loss, target, decoder。代码可读性更强。扩展方便, 用户只需通过一个Registry的装饰器即可添加新的类。劣势:config中不能进行代码补全, 不符合python的编程习惯。写Registry的时候, 容易出现重名冲突问题。比如resize这个trans原创 2021-06-09 17:43:01 · 247 阅读 · 2 评论 -
Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics 论文阅读笔记
论文地址:https://arxiv.org/abs/1705.07115code:https://github.com/yaringal/multi-task-learning-example摘要:讲了多任务的好处,多任务的性能很依赖每个单任务loss的权重。网格搜索很耗资源,本文提出了一个方法,在训练过程利用每个任务的同方差不确定性(homoscedastic uncertainty of each task)来确定loss-weight。本文实验的任务:深度估计,语义分割,实例分割。介绍:优化每原创 2021-04-26 19:42:46 · 451 阅读 · 0 评论 -
GradNorm: Gradient Normalization for Adaptive Loss Balancing in Deep Multitask Networks 论文阅读笔记
GradNorm不同任务的的梯度幅度大致相同平衡不同任务的训练速率梯度幅度和训练速率的定义梯度幅度首先是选模型的哪块参数来做梯度统计,这里选取的是所有任务共享层的最后一层。然后,通过计算每个任务loss相对于最后共享层的梯度的2范数,作为每个任务的梯度幅度表示,此外还计算了每个任务的梯度幅度,算一个均值,得到某次训练的梯度平均幅值。训练速率怎么去定义任务收敛的快慢,也即训练速率,论文这里用的是loss比,通常来说,网络最开始随机预测,此时loss最大,记为L(0),然后以任务i在t时刻原创 2021-04-25 17:46:13 · 2869 阅读 · 0 评论 -
《Revisiting the Loss Weight Adjustment in Object Detection》- 检测任务中的loss weight调整
论文地址:https://arxiv.org/pdf/2103.09488.pdf原创 2021-03-18 23:04:33 · 376 阅读 · 0 评论