深度学习中的激活函数和损失函数

1、激活函数演变史
1)阶梯激活函数非0即1的阈值涉及使得输入的微小变化会引起输出的大幅度跳变,进而引进了较平缓的sigmoid、tanh。
2)sigmoid函数输出在0~1,比较符合概率分布的特点;中央区对信号增益大,两侧对信号增益小,分别对应神经元的兴奋态和抑制态。但是sigmoid 存在梯度消失的情况,网络深的时候就训练慢,甚至不可训练,需要通过无监督的逐层训练初始化权重来解决。
3)Relu(修正线性单元),相比于sigmoid,单侧抑制、相对宽阔的兴奋边界,解决了梯度消失的问题
2、交叉熵损失函数与softmax
softmax是模型的最后一层,交叉熵损失函数是衡量softmax输出(神经网络输出)与groundtruth之间差异的
3、keras 自定义损失函数
1)深度学习中的全局最优和局部最优
局部最优如果能达到比较好的效果,就可以应用于实践;而全局最优往往是过拟合
2)深度学习的优化算法对比
SGD参数较多,调试比较麻烦;而Adagrad、Adam等自适应的优化算法往往能减轻调试参数的负担。
3)自定义损失函数
softmax拟合one-hot编码效果较好;但实际中,我们往往需要定义自己的损失函数。如我们要拟合的编码可能是类似于[0 1 1 0 1 1 ]这样的普通编码方式;再有分类中常用的Triplet Loss函数。具体keras实现如下:
from keras import backend as K
def mycrossentropy(y_true, y_pred,…):
return …
model.compile(loss=my_loss,optimizer=‘SGD’,metrics=[‘accuracy’])

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值