常用的loss函数,以及在训练中的使用
生活随笔
收集整理的這篇文章主要介紹了
常用的loss函数,以及在训练中的使用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- KL 散度
- L2 loss
- 做標準化處理
- CEloss
- CTCLoss
- AdaptiveAvgPool2d
KL 散度
算KL散度的時候要注意前后順序以及加log
import torhch.nn as nn d_loss = nn.KLDivLoss(reduction=reduction_kd)(F.log_softmax(y / T, dim=1),F.softmax(teacher_scores / T, dim=1)) * T * T蒸餾loss T 為
L2 loss
import torch.nn.functional as F F.mse_loss(teacher_patience.float(), student_patience.float()).half()做標準化處理
if normalized_patience:teacher_patience = F.normalize(teacher_patience, p=2, dim=2)student_patience = F.normalize(student_patience, p=2, dim=2)L2 范數
CEloss
分類問題
nll_loss = F.cross_entropy(y, labels, reduction=reduction_nll)CTCLoss
計算連續(未分割)時間序列和目標序列之間的損失.
torch.nn.CTCLoss(blank=0, reduction=‘mean’, zero_infinity=False)
圖片卷積-》序列做loss
31,1,64,256 -》 31,512,3,65-》31,65,512,3-》polling-》31,65,512》》liner》31,65,103》TNC》65,31,103
AdaptiveAvgPool2d
自適應池化,最后設置要輸出的H和W,B和N(C)不變
總結
以上是生活随笔為你收集整理的常用的loss函数,以及在训练中的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Java从入门到头秃专栏 7】语法篇(
- 下一篇: python 循环语句 for whil