深度学习基础----标签平滑(后续待补,尤其是在论文中。。。。)

该博客探讨了如何通过标签平滑技术来缓解深度学习模型的过拟合问题。在训练过程中,将标签从离散的one-hot编码转换为连续的分布,使得模型在训练时不会过于依赖单一类别,从而降低过拟合风险。具体实现是创建一个填充了小数值的张量,并在对应正确类别的位置赋予较高的概率值,然后用这个平滑后的标签来计算损失函数。
摘要由CSDN通过智能技术生成

通俗理解:

  • 一定程度缩小label中min和max的差距
  • 可以减小过拟合
for images, labels in train_loader:
    images, labels = images.cuda(), labels.cuda()
    N = labels.size(0)
    # C is the number of classes.
    smoothed_labels = torch.full(size=(N, C), fill_value=0.1 / (C - 1)).cuda()
    smoothed_labels.scatter_(dim=1, index=torch.unsqueeze(labels, dim=1), value=0.9)

    score = model(images)
    log_prob = torch.nn.functional.log_softmax(score, dim=1)
    loss = -torch.sum(log_prob * smoothed_labels) / N
    optimizer.zero_grad()
    loss.backward()
    optimizer.step()

 

 

 

 

参考:https://www.cnblogs.com/whustczy/p/12520239.html

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值