本文整理匯總了Python中torch.nn.AdaptiveMaxPool3d方法的典型用法代碼示例。如果您正苦於以下問題:Python nn.AdaptiveMaxPool3d方法的具體用法?Python nn.AdaptiveMaxPool3d怎麽用?Python nn.AdaptiveMaxPool3d使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類torch.nn
的用法示例。
在下文中一共展示了nn.AdaptiveMaxPool3d方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: adaptive_maxpooling_factory
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import AdaptiveMaxPool3d [as 別名]
def adaptive_maxpooling_factory(dim):
types = [nn.AdaptiveMaxPool1d, nn.AdaptiveMaxPool2d, nn.AdaptiveMaxPool3d]
return types[dim - 1]
示例2: is_supported_instance
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import AdaptiveMaxPool3d [as 別名]
def is_supported_instance(module):
if isinstance(module, (torch.nn.Conv1d, torch.nn.Conv2d, torch.nn.Conv3d,
torch.nn.ReLU, torch.nn.PReLU, torch.nn.ELU, \
torch.nn.LeakyReLU, torch.nn.ReLU6, torch.nn.Linear, \
torch.nn.MaxPool2d, torch.nn.AvgPool2d, torch.nn.BatchNorm2d, \
torch.nn.Upsample, nn.AdaptiveMaxPool2d, nn.AdaptiveAvgPool2d, \
torch.nn.MaxPool1d, torch.nn.AvgPool1d, torch.nn.BatchNorm1d, \
nn.AdaptiveMaxPool1d, nn.AdaptiveAvgPool1d, \
nn.ConvTranspose2d, torch.nn.BatchNorm3d,
torch.nn.MaxPool3d, torch.nn.AvgPool3d, nn.AdaptiveMaxPool3d, nn.AdaptiveAvgPool3d)):
return True
return False
示例3: add_flops_counter_hook_function
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import AdaptiveMaxPool3d [as 別名]
def add_flops_counter_hook_function(module):
if is_supported_instance(module):
if hasattr(module, '__flops_handle__'):
return
if isinstance(module, (torch.nn.Conv1d, torch.nn.Conv2d, torch.nn.Conv3d)):
handle = module.register_forward_hook(conv_flops_counter_hook)
elif isinstance(module, (torch.nn.ReLU, torch.nn.PReLU, torch.nn.ELU, \
torch.nn.LeakyReLU, torch.nn.ReLU6)):
handle = module.register_forward_hook(relu_flops_counter_hook)
elif isinstance(module, torch.nn.Linear):
handle = module.register_forward_hook(linear_flops_counter_hook)
elif isinstance(module, (torch.nn.AvgPool2d, torch.nn.MaxPool2d, nn.AdaptiveMaxPool2d, \
nn.AdaptiveAvgPool2d, torch.nn.MaxPool3d, torch.nn.AvgPool3d, \
torch.nn.AvgPool1d, torch.nn.MaxPool1d, nn.AdaptiveMaxPool1d, \
nn.AdaptiveAvgPool1d, nn.AdaptiveMaxPool3d, nn.AdaptiveAvgPool3d)):
handle = module.register_forward_hook(pool_flops_counter_hook)
elif isinstance(module, (torch.nn.BatchNorm1d, torch.nn.BatchNorm2d, torch.nn.BatchNorm3d)):
handle = module.register_forward_hook(bn_flops_counter_hook)
elif isinstance(module, torch.nn.Upsample):
handle = module.register_forward_hook(upsample_flops_counter_hook)
elif isinstance(module, torch.nn.ConvTranspose2d):
handle = module.register_forward_hook(deconv_flops_counter_hook)
else:
handle = module.register_forward_hook(empty_flops_counter_hook)
module.__flops_handle__ = handle
示例4: __init__
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import AdaptiveMaxPool3d [as 別名]
def __init__(self, spatial_type='avg', spatial_size=7, temporal_size=1):
super(SimpleSpatialTemporalModule, self).__init__()
assert spatial_type in ['avg', 'max']
self.spatial_type = spatial_type
self.spatial_size = spatial_size
if spatial_size != -1:
self.spatial_size = (spatial_size, spatial_size)
self.temporal_size = temporal_size
assert not (self.spatial_size == -1) ^ (self.temporal_size == -1)
if self.temporal_size == -1 and self.spatial_size == -1:
self.pool_size = (1, 1, 1)
if self.spatial_type == 'avg':
self.pool_func = nn.AdaptiveAvgPool3d(self.pool_size)
if self.spatial_type == 'max':
self.pool_func = nn.AdaptiveMaxPool3d(self.pool_size)
else:
self.pool_size = (self.temporal_size, ) + self.spatial_size
if self.spatial_type == 'avg':
self.pool_func = nn.AvgPool3d(self.pool_size, stride=1, padding=0)
if self.spatial_type == 'max':
self.pool_func = nn.MaxPool3d(self.pool_size, stride=1, padding=0)