使用 PyTorch 构建深度学习网络时,常用 torch.nn as nn 和 torch.nn.functional as F,两者中包含很过相似的函数。
区别


关联
nn 类会在 forward 函数中调用 functional 中的函数,nn 对 functional做了封装。

注:实践中,如 nn.ReLU() 返回的是 relu 类,而 F.relu() 返回的是 tensor。
参考:
torch.nn 与 torch.nn.functional的区别?如何选择?_潜行隐耀的博客-CSDN博客_torch和torch.nn的区别 (360doc.com)
在PyTorch中,nn模块提供了一些预定义的神经网络层,如nn.ReLU,它们是类形式,而在forward函数中会调用functional模块中的函数。functional模块则包含了一系列静态函数,如F.relu,直接返回计算后的张量。实践中,nn模块常用于构建网络结构,而functional模块更适合单次操作。

300

被折叠的 条评论
为什么被折叠?



