def r2plus1d_152(pretrained=False, progress=False, **kwargs): return _video_resnet('r2plus1d_152', False, False, block=Bottleneck, conv_makers=[Conv2Plus1D] * 4, layers=[3, 8, 36, 3], stem=R2Plus1dStem, **kwargs)
def r2plus1d_34(pretrained=False, progress=False, **kwargs): return _video_resnet('r2plus1d_34', False, False, block=BasicBlock, conv_makers=[Conv2Plus1D] * 4, layers=[3, 4, 6, 3], stem=R2Plus1dStem, **kwargs)
def r2plus1d_18(pretrained=False, progress=False, **kwargs): """Constructs a ResNet-18 model. """ return _video_resnet('r2plus1d_18', False, False, block=BasicBlock, conv_makers=[Conv2Plus1D] * 4, layers=[2, 2, 2, 2], stem=R2Plus1dStem, **kwargs)
def ip_csn_50(pretrained=False, progress=False, **kwargs): model = _video_resnet("ip_csn_50", False, False, block=Bottleneck, conv_makers=[IPConv3DDepthwise] * 4, layers=[3, 8, 6, 3], stem=BasicStem_Pool, **kwargs) for m in model.modules(): if isinstance(m, nn.BatchNorm3d): m.eps = 1e-3 return model
def r2plus1d_152(pretrained=False, progress=False, **kwargs): model = _video_resnet("r2plus1d_152", False, False, block=Bottleneck, conv_makers=[Conv2Plus1D] * 4, layers=[3, 8, 36, 3], stem=R2Plus1dStem, **kwargs) for m in model.modules(): if isinstance(m, nn.BatchNorm3d): m.eps = 1e-3 return model
def r2plus1d_18(pretrained=False, progress=False, **kwargs): model = _video_resnet("r2plus1d_18", False, False, block=BasicBlock, conv_makers=[Conv2Plus1D] * 4, layers=[2, 2, 2, 2], stem=R2Plus1dStem, **kwargs) # We need exact Caffe2 momentum for BatchNorm scaling for m in model.modules(): if isinstance(m, nn.BatchNorm3d): m.eps = 1e-3 m.momentum = 0.9 return model