常用的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)
>>> # Target are to be padded
>>> T = 50 # Input sequence length
>>> C = 20 # Number of classes (including blank)
>>> N = 16 # Batch size
>>> S = 30 # Target sequence length of longest target in batch (padding length)
>>> S_min = 10 # Minimum target length, for demonstration purposes
>>>
>>> # Initialize random batch of input vectors, for *size = (T,N,C)
>>> input = torch.randn(T, N, C).log_softmax(2).detach().requires_grad_()
>>>
>>> # Initialize random batch of targets (0 = blank, 1:C = classes)
>>> target = torch.randint(low=1, high=C, size=(N, S), dtype=torch.long)
>>>
>>> input_lengths = torch.full(size=(N,), fill_value=T, dtype=torch.long)
>>> target_lengths = torch.randint(low=S_min, high=S, size=(N,), dtype=torch.long)
>>> ctc_loss = nn.CTCLoss()
>>> loss = ctc_loss(input, target, input_lengths, target_lengths)
图片卷积-》序列做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函数,以及在训练中的使用相关推荐
- mmsegmentation教程2:如何修改loss函数、指定训练策略、修改评价指标、指定iterators进行val指标输出
简介 在mmseg教程1中对如何成功在mmseg中训练自己的数据集进行了讲解,那么能跑起来,就希望对其中loss函数.指定训练策略.修改评价指标.指定iterators进行val指标输出等进行自己的指 ...
- 关于机器学习 Machine Learning中loss函数参数正则化的一点思考
1 致谢 感谢 Andrew Ng教授的讲述! 2 前言 今天在学习机器学习中对loss函数中的参数进行正则化~ 3 关于机器学习中loss函数参数正则化 在机器学习中,有一项防止过拟合的技巧就是(参 ...
- Logistic Loss函数
同步于音尘杂记 前面在浏览sklearn中关于Logistic Regression部分,看到关于带正则项的LR目标损失函数的定义形式的时候,对具体表达式有点困惑,后查阅资料,将思路整理如下. 文章目 ...
- 一起学习ML和DL中常用的几种loss函数
摘要:本篇内容和大家一起学习下机器学习和深度学习中常用到的几种loss函数. 本文分享自华为云社区<[MindSpore易点通]网络实战之交叉熵类Loss函数>,作者:Skytier . ...
- 训练中Loss为Nan的原因,梯度消失或者爆炸的优化
向AI转型的程序员都关注了这个号???????????? 机器学习AI算法工程 公众号:datayx 现象 如何确定是否出现梯度爆炸? 在训练过程中出现梯度爆炸会伴随一些细微的信号,如: (1)模 ...
- 【文献阅读】医学图像分割中的loss函数选择-Loss odyssey in medical image segmentation loss
参考文献:Loss odyssey in medical image segmentation loss 函数代码库 github-SegLoss 本文在四个典型的三维分割任务上对20个一般的损失函数 ...
- 聊一聊CNN中的感受野、优化函数、激活函数、Loss函数等
目录: 1.感受野 2.优化函数 3.激活函数 4.loss 函数. 前言 文章有点长,内容有点丰富,基本涵盖整个深度卷积神经网络,涉及 网络中的感受野.激活函数.loss函数以及各种相关知识. Pa ...
- 神经网络学习小记录14——slim常用函数与如何训练、保存模型
神经网络学习小记录14--slim训练与保存模型 学习前言 slim是什么 slim常用函数 1.slim = tf.contrib.slim 2.slim.create_global_step 3. ...
- 深度学习中的损失函数总结以及Center Loss函数笔记
北京 上海巡回站 | NVIDIA DLI深度学习培训 2018年1月26/1月12日 NVIDIA 深度学习学院 带你快速进入火热的DL领域 阅读全文 ...
最新文章
- linux下mysql root密码忘记修改方法
- python查询字典里的多个key_Python:如何快速找到多个字典中的公共键(key)
- c++ static 静态变量初始化
- 【有三公开课】caffe图像分割项目实战
- 防火墙(14)——实现路由转发功能(2)
- 信息安全系统设计基础第二周学习总结
- iphone主屏幕动态壁纸_iPhone8怎么设置动态壁纸?iPhone8动态壁纸设置教程
- 华为鸿蒙5g售价,华为5G新旗舰已确认,双曲面屏+升级到鸿蒙2.0,价格很感人
- popoupwindow 点击背景消失_两种去除背景音乐保留原声的高效方法
- how to use automake to build files
- 计算机网络—轮询访问介质访问控制
- nyoj349 poj1094 Sorting It All Out(拓扑排序)
- 那些年我们看不懂的论文
- 【Java篇】 Java小游戏中加入背景音乐
- android手机刷机后驱动更新失败,刷机驱动安装失败的可以进来试试!
- 同源性 相似性 一致性
- 使用eclipse编写第一个Java程序及运行(超详细)
- Python TensorFlow框架 实现手写数字识别系统
- 国外和国内高校官网的差异
- 推荐几款实用的思维导图工具
热门文章
- excel三维地图数据源引用无效_Excel函数公式应用的基础,数据源的引用,动图解释...
- php sql查询占位符,使用命名占位符时PHP / SQL插入错误
- 联想微型计算机电脑黑屏怎么做系统,联想电脑黑屏怎么办,5种方法轻松排除黑屏故障...
- html自动图片尺寸,关于html:CSS背景图像适合宽度,高度应按比例自动缩放
- python linux log,linux,python 常用的处理log的命令
- mysql多实例配置安装_MySQL多实例安装配置方案
- .net core高并发_高并发下的Node.js与负载均衡
- python用户名密码登录退出_用户登录登出
- 检查各计算机所属工作组ip,如何在Win8.1/RT 8.1中添加语言或键盘
- 网贷大数据什么时候会好_如果人类把地球钻穿了,会发生什么?大数据分析告诉你多可怕...