Open
Description
损失配置
# soc semantic loss
downsampled_fusion = F.interpolate(pred_fusion, scale_factor=1/8, mode='nearest')
downsampled_pseudo_gt_fusion = downsampled_fusion.max(1)[1]
pseudo_gt_semantic = pred_semantic.max(1)[1]
soc_semantic_loss = F.cross_entropy(pred_semantic, downsampled_pseudo_gt_fusion.detach()) + \
F.cross_entropy(downsampled_fusion, pseudo_gt_semantic.detach())
backup_fusion, backup_detail, _ = self.config.output_backup
# sub-objectives consistency between `pred_detail` and `pred_backup_detail` (on boundaries only)
backup_detail_loss = boundaries * F.cross_entropy(pred_detail, backup_detail.max(1)[1], weight=self.config.classes_weight, reduction='none')
backup_detail_loss = torch.mean(backup_detail_loss)
# sub-objectives consistency between pred_matte` and `pred_backup_matte` (on boundaries only)
backup_fusion_loss = boundaries * F.cross_entropy(pred_fusion, backup_fusion.max(1)[1], reduction='none')
backup_fusion_loss = torch.mean(backup_fusion_loss)
self.config.loss = 5 * soc_semantic_loss + backup_detail_loss + backup_fusion_loss
模型表现
- 原模型手臂部分完整检测,但存在部分误检
- soc 模型0eps 误检消除,但是手臂部分未检测到
Metadata
Metadata
Assignees
Labels
No labels