从零开始,一步一步学习caffe的使用,期间贯穿深度学习和调参的相关知识!

【转】Caffe中的损失函数解析

导言

在有监督的机器学习中,需要有标签数据,与此同时,也需要有对应的损失函数(Loss Function)。
Caffe中,目前已经实现了一些损失函数,包括最常见的L2损失函数,对比损失函数,信息增益损失函数等等。在这里做一个笔记,归纳总结Caffe中用到的不同的损失函数,以及分析它们各自适合的使用场景。

欧式距离损失函数(Euclidean Loss)

  • 输入:
    预测的值:
    其中,它们的形状为:
    标签的值:
    其中,它们的形状为:
  • 输出:
  • 损失函数:
  • 适合场景:
    回归,特别适合其回归的值是实数值的时候。

对比损失函数(Contrastive loss)

  • 输入:
    形状:特征
    形状:特征
    形状:相似性
  • 输出:
    形状:
  • 损失函数:
    其中
  • 适合场景:
    可以用来训练`Siamese`网络

铰链损失函数(Hinge Loss)

信息增益损失函数(InformationGain Loss)

  • 输入:
    形状:预测值 内,
    表示这预测每一类的概率,共 个类,
    每一个预测 概率.
    形状:
    标签值: l, 是一个整数值,其范围是 表示着在 K 个类中的索引。
    形状: (可选)
    信息增益矩阵H作为第三个输入参数,.如果 ,则它等价于多项式逻辑损失函数
  • 输出:
    形状:
  • 损失函数: 表示 .

多项式逻辑损失函数(Multinomial Logistic Loss)

  • 输入:
    形状: 预测值 范围中,
    表示这预测的每一类的概率,共 个类.
    每一个预测概率
    形状:
    标签 l,是一个整数值,其范围是 表示着在 K 个类中的索引。
  • 输出:
  • 形状:
  • 损失函数:
  • 应用场景:
    在一对多的分类任务中使用,直接把预测的概率分布作为输入.

Sigmoid 交叉熵损失函数(Sigmoid Cross Entropy Loss)

  • 输入:
    形状: 得分 ,
    这个层使用 sigmoid 函数映射到概率分布
    形状:标签
  • 输出:
    形状:
  • 损失函数:
  • 应用场景:
    预测目标概率分布

Softmax+损失函数(Softmax With Loss)

  • 输入:
    形状:预测值代表预测每个类的得分。
    类.
    这一层把得分通过softmax映射到概率分布
    形状:
    标签值是一个整数值,其范围是 表示着在 K 个类中的索引。
  • 输出:
    形状:
  • 损失函数:
    其中 softmax输出的类概率。
  • 应用场景:
    一对多分类中应用。

总结

欧式距离损失函数:一般适用于回归问题,特别是回归的值是实数的时候。
对比损失函数:用来训练siamese网络时候。
Hinge loss:在一对多的分类中应用,类似于SVM
多项式逻辑损失函数:一般在一对多的分类任务中应用,直接把预测的概率分布作为输入。
sigmoid交叉熵损失函数:预测目标概率分布。
softmax+损失函数:在一对多分类中的应用。

参考

来源:Caffe中的损失函数解析 http://www.aichengxu.com/other/10039373.htm


caffe详解之损失函数相关推荐

  1. DL之AlexNet:AlexNet算法的架构详解、损失函数、网络训练和学习之详细攻略

    DL之AlexNet:AlexNet算法的架构详解.损失函数.网络训练和学习之详细攻略 相关文章 Dataset:数据集集合(CV方向数据集)--常见的计算机视觉图像数据集大集合(建议收藏,持续更新) ...

  2. caffe详解之激活函数层

    从零开始,一步一步学习caffe的使用,期间贯穿深度学习和调参的相关知识! 激活函数参数配置 在激活层中,对输入数据进行激活操作,是逐元素进行运算的,在运算过程中,没有改变数据的大小,即输入和输出的数 ...

  3. caffe详解之全连接层

    全连接层参数说明 全连接层,输出的是一个一维向量,参数跟卷积层一样.一般将全连接置于卷积神经网络的后几层.权重值的初始化采用xavier,偏置初始化为0. layer { name: "ip ...

  4. DL之GoogleNet:GoogleNet(InceptionV1)算法的简介(论文介绍)、架构详解、案例应用等配图集合之详细攻略

    DL之GoogleNet:GoogleNet(InceptionV1)算法的简介(论文介绍).架构详解.案例应用等配图集合之详细攻略 目录 GoogleNet算法的简介 GoogleNet算法的架构详 ...

  5. DL之VGGNet:VGGNet算法的简介(论文介绍)、架构详解、案例应用等配图集合之详细攻略

    DL之VGGNet:VGGNet算法的简介(论文介绍).架构详解.案例应用等配图集合之详细攻略 目录 VGG系列神经网络算法简介 1.网络架构 2.实验结果 VGG系列神经网络的架构详解 VGG系列集 ...

  6. SAGAN原理及代码(B站详解,很值得一看)

    代码地址:https://github.com/heykeetae/Self-Attention-GAN 视频讲解:SAGAN原理及代码_哔哩哔哩_bilibili 目录 1.背景+整体介绍 2.算法 ...

  7. NLL_LOSS与CROSS_ENTROPY_LOSS详解

    NLL_LOSS, CROSS_ENTROPY_LOSS详解 常用损失函数 nll cross_entropy 一段代码 transformer中的一段经典代码 常用损失函数 nll 官方文档 tor ...

  8. 图像质量损失函数SSIM Loss的原理详解和代码具体实现

    本文转自微信公众号SIGAI 文章PDF见: http://www.tensorinfinity.com/paper_164.html http://www.360doc.com/content/19 ...

  9. Lesson13【加餐】 损失函数的随机创建现象详解

    [Lesson 13 加餐]损失函数的随机创建现象详解   接下来,我们通过手动创建一个实例,来观察在小批梯度下降过程中,损失函数是如何根据数据数据变化而变化的,这里既是作为本节内容的一个补充,同时也 ...

最新文章

  1. 【leetcode】589. N-ary Tree Preorder Traversal
  2. rs485编程java_串行编程RS485
  3. jedis操作set_你真的会使用redis的数据类型set么
  4. Kruskal算法 最小生成树
  5. Android Pie(Android 9)跳过 Google 框架 (GApps) 开机验证方法
  6. linux--私钥登陆
  7. 深度学习:循环神经网络RNN
  8. Android 获取sim卡序列号
  9. dda算法_C和C ++中的DDA线图绘制算法
  10. Java游戏编程不完全详解-2(1万2千字吐血推荐)
  11. JavaScript 原生Ajax
  12. 网红前端盼哥模拟面试总结
  13. ERP系统操作难吗?
  14. Android Car - 开机画面
  15. Win部署Flask服务_NSSM
  16. 什么是数字孪生技术?
  17. iOS 的一种设计模式 类别 catagory
  18. CSDN问答标签技能树(一) —— 基本框架的构建
  19. iOS APP上架App Store其中一个步骤就是要把ipa文件上传到App Store
  20. python 静态网站生成_最全的静态网站生成器(开源项目)

热门文章

  1. win10隐藏正在运行的程序怎么操作_win10怎么隐藏正在运行的软件
  2. 如何使用unirest
  3. 计算机c盘空间满了应该怎么办,C盘空间越来越小怎么办?电脑C盘满了怎么办?...
  4. 学习笔记——基于FPGA的SD卡学习(1)
  5. uni-app 上下滑动左右滑动
  6. 2015-12-12 java hibernate 微信表情昵称保存
  7. 2022年6月护肤行业数据洞察报告(小红书)
  8. dedecms模板定制之如何自定义标签
  9. FITC-PEG-FA,荧光素-聚乙二醇-叶酸,FA-PEG-FITC,实验室科研试剂,提供质量检测
  10. 计算机硬件技术基础(太原理工大学):第二章