- 博客(4)
- 收藏
- 关注
原创 多尺度结构相似性L1损失的计算过程
因为人类在同一时间只能关注到局部的亮度、对比度,结构等相似度信息,因此实际代码中不计算全局的均值和方差,只计算局部窗口内的均值和方差,最后将所有局部窗口得到的量化值相加求平均得到最终的SSIM值。共有五行,表示不同尺度下的高斯核。可以看到,不同尺度的高斯核具有不同的聚焦视野,这是模拟人类视在不同观看条件下的视觉辨别能力。多尺度SSIM是在原始SSIM基础上,计算多个尺度上的SSIM值,最后相乘得到最终的多尺度SSIM值。同理,SSIM的计算也是基于以上三个方面,并通过量化度量生成一个介于-1到1之间的值。
2023-11-08 17:17:41 508
原创 pytorch的ddp分布式训练
相对于单卡,多卡分布式训练能够:1.处理更大的模型的数据集,2.充分利用实验室硬件资源,3.以及最重要的加速训练速度,目前已经被广泛使用。本文用于简化pytorch的ddp训练代码,并解释每一步的作用。
2023-11-06 21:42:25 178
原创 自动混合精度的疑难杂症
网上大多数使用amp损失为nan一般是训练一段时间后突然出现nan,这是由于局部异常值导致,利用梯度裁剪和异常数据处理可以解决。我这里出现的nan不太一样,因为从训练开始就是损失值就为nan。但是建议不要这样做,这样虽然能有助于确保梯度更新不受少量异常值干扰从而使训练正常进行,但是这个处理方法可能掩盖一些问题。在我的设备下,使用fp32通常需要十万次以上迭代训练才能获得相对好的结果。这是一个尝试在一个类StyleGAN2模型上使用pytorch自带的混合精度失败案例,花了一整天时间,但目前依旧还没有解决。
2023-11-06 16:15:25 177 1
原创 【pytorch载入模型参数报错以及解决办法,小心使用strict=False】
pytorch载入模型参数报错,模型与权重文件keys不匹配问题以及解决办法,小心使用strict=False
2022-03-25 11:35:02 6937
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人