【caffe学习笔记】loss layer 损失层
来源:互联网 发布:java 时间戳 编辑:程序博客网 时间:2024/05/21 15:59
Loss 设置了一个损失函数用来比较网络的输出和目标值,通过最小化损失来驱动网络的训练。
网络的损失通过前向操作计算,网络参数相对于损失函数的梯度则通过反向操作计算。
Softmax 损失
- 层类型: SoftmaxWithLoss
softmax 损失层一般用于计算多类分类问题的损失, 等同于 softmax 层后跟随一个多变量 Logistic 回归损失层(multinomial logistic loss),但能提供数值上更稳定的梯度。
平方和/欧式损失 Sum-of-Squares / Euclidean
- 层类型: EuclideanLoss
Euclidean 损失层用来计算两个输入差值的平方和:
Hinge / Margin 损失
- 层类型: HingeLoss
- CPU implementation: ./src/caffe/layers/hinge_loss_layer.cpp
- CUDA GPU implementation: 未实现
参数
Optional(可选的)
- norm [default L1]:正则项类型,目前有L1和L2
输入
- n * c * h * w 预测值
- n * 1 * 1 * 1 真实标签
输出
- 1 * 1 * 1 * 1 计算的损失
例子
# L1 Norm
layer {
name: "loss"
type: "HingeLoss"
bottom: "pred"
bottom: "label"
}
# L2 Norm
layer {
name: "loss"
type: "HingeLoss"
bottom: "pred"
bottom: "label"
top: "loss"
hinge_loss_param {
norm: L2
}
}
layer {
name: "loss"
type: "HingeLoss"
bottom: "pred"
bottom: "label"
}
# L2 Norm
layer {
name: "loss"
type: "HingeLoss"
bottom: "pred"
bottom: "label"
top: "loss"
hinge_loss_param {
norm: L2
}
}
hinge 损失层用来计算 one-vs-all hinge 或者 squared hinge 损失。
交叉熵损失 Sigmoid Cross-Entropy
SigmoidCrossEntropyLoss
信息熵损失 Infogain
InfogainLoss
准确率 Accuracy and Top-k
Accuracy 用来计算网络输出相对目标值的准确率, 它实际上并不是一个损失层, 所以没有反传操作
0 0
- 【caffe学习笔记】loss layer 损失层
- 【caffe学习笔记】layer层简介
- 学习Caffe(四)Loss Layer解析
- DL学习笔记【11】caffe参数调节-loss层
- caffe层笔记系列Loss层
- caffe loss layer
- caffe学习笔记3.3--Loss
- caffe loss 损失权重问题
- Caffe Loss层
- Caffe Loss层
- Caffe Loss 层
- caffe学习(7)损失层、通用层
- caffe源码学习(2)-softmax loss层
- Caffe学习(六)损失层及其参数设置
- 深度学习笔记(1):caffe 添加新层 attention LSTM layer和LSTM layer代码精读
- caffe layer层详解
- caffe之(五)loss层
- caffe: 新建一个loss层
- 【caffe学习笔记】Data Layers 数据层
- Oracle 字符集的查看和修改
- java 面试 接到邀请后你可以做哪些准备
- Android--Linux kernel log级别修改
- c++ POD
- 【caffe学习笔记】loss layer 损失层
- Android APP首次启动白屏问题
- 中华数据库与运维大会2017 众多大咖嘉宾名单披露!
- Android 数据结构以及常用的算法
- 箭头函数
- POJ 3069 Saruman's Army (贪心)
- HTML5使用manifest缓存
- Android 4.x 在 https 协议下无法利用 okhttp 进行网络访问的临时解决办法
- 快速理解工厂类模式