PyTorch Loss Functions 的总结
发布时间
阅读量:
阅读量
首先我们探讨nn与nn.functional之间的差异主要体现在其功能架构上 nn.functional.xxx充当函数接口角色 而nn.Xxx类则是基于nn.functional.xxx进行封装设计 这种封装设计使得nn.Xxx类不仅具备核心功能外 内置了模块化组件如train() eval() load_state_dict等重要方法 以满足更复杂的模型管理和训练需求
其中某个函数可以直接访问。
nn.functional.NLLLoss(nn.functional.log_softmax(data),target)
对应的变量在初始化后,在后续操作中进行赋值。
loss = nn.NLLLoss()
conv = nn.Conv2d(16, C, (3, 3))
m = nn.LogSoftmax(dim=1)
#下面再赋值
output = loss(m(conv(data)), target)
参考:https://zhuanlan.zhihu.com/p/61379965
多分类损失函数
在多分类任务中,使用最多的损失函数通常是nn.NLLLOSS和nn.CrossEntropyLoss两者之间存在密切的关系具体来说
nn.NLLLoss
在最后一层之后应用了LogSoft
全部评论 (0)
还没有任何评论哟~
