迁移网络任务-tacotron2时遇到Loss损失过高问题

1.系统环境

硬件环境(Ascend/GPU/CPU): GPU
MindSpore版本: mindspore=2.0
执行模式(PyNative/ Graph):不限
Python版本:3.7
操作系统平台:Linux

2. 问题描述

迁移网络任务-tacotron2时遇到Loss损失过高问题
非极大值抑制算法使用错误

3. 问题分析

通过Print调试可知,直接返回output_idx返回所有索引。


函数是直接返回output_idx,并没有selected_mark为True的选择出来,所以这里会将所有生成的矩形框全部选中,导致损失度一直下降不了。

4. 解决方案

按照API,应该这样调整

boxes_for_nms = boxes + offsets[:,None]  
output_boxes,output_idx,selected_mask = nms(boxes_for_nms,iou_threshould)  
      
keep = Tensor(output_idx.asnumpy()[selected_mask.asnumpy()])  
return keep
1 个赞