目录
一、torch.nn和torch.nn.functional
Pytorch中torch.nn和torch.nn.functional的区别及实例详解
Pytorch中,nn与nn.functional有哪些区别?
相同之处:
两者都继承于nn.Module
nn.x与nn.functional.x的实际功能相同,比如nn.Conv3d和nn.functional.conv3d都是进行3d卷积
运行效率几乎相同
不同之处:
nn.x是nn.functional.x的类封装,nn.functional.x是具体的函数接口
nn.x除了具有nn.functional.x功能之外,还具有nn.Module相关的属性和方法,比如:train(),eval()等
nn.functional.x直接传入参数调用,nn.x需要先实例化再传参调用
nn.x能很好的与nn.Sequential结合使用,而nn.functional.x无法与nn.Sequential结合使用
nn.x不需要自定义和管理weight,而nn.functional.x需自定义weight