直接调用定义就好了要使用的损失函数,但是nn.functional和nn.Module中都有损失函数,至于从哪个包中调用损失函数看你的需求,和图中所说一样,如果没有需要学习的参数就用nn.functional,如果有要学习更新的参数就用nn.Module。
虽然是这样说,但是我看这个代码下面使用的就算是使用functional模块调用的损失函数也是有更新参数的情况。好像说nn.Module是基类的缘故,使用相当于模型整体的损失函数,但是nn.functional可以作为一个独立模块不并入构建的模型内部,这样可以灵活改变调用不影响损失函数灵活性,我也不太清楚,两个都能用后续再看看吧。
上面是一个nn.functional的示例及其使用,下面是nn.Module的示例:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人