本文整理匯總了Python中torch.nn.Dropout3d方法的典型用法代碼示例。如果您正苦於以下問題:Python nn.Dropout3d方法的具體用法?Python nn.Dropout3d怎麽用?Python nn.Dropout3d使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類torch.nn
的用法示例。
在下文中一共展示了nn.Dropout3d方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: __init__
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import Dropout3d [as 別名]
def __init__(self, in_channels, middle_channels, out_channels, dropout=False):
super(First3D, self).__init__()
layers = [
nn.Conv3d(in_channels, middle_channels, kernel_size=3, padding=1),
nn.BatchNorm3d(middle_channels),
nn.ReLU(inplace=True),
nn.Conv3d(middle_channels, out_channels, kernel_size=3, padding=1),
nn.BatchNorm3d(out_channels),
nn.ReLU(inplace=True)
]
if dropout:
assert 0 <= dropout <= 1, 'dropout must be between 0 and 1'
layers.append(nn.Dropout3d(p=dropout))
self.first = nn.Sequential(*layers)
示例2: __init__
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import Dropout3d [as 別名]
def __init__(self, num_classes=400, dropout_keep_prob = 1, input_channel = 3, spatial_squeeze=True):
super(S3DG, self).__init__()
self.features = nn.Sequential(
STConv3d(input_channel, 64, kernel_size=7, stride=2, padding=3), # (64, 32, 112, 112)
nn.MaxPool3d(kernel_size=(1,3,3), stride=(1,2,2), padding=(0,1,1)), # (64, 32, 56, 56)
BasicConv3d(64, 64, kernel_size=1, stride=1), # (64, 32, 56, 56)
STConv3d(64, 192, kernel_size=3, stride=1, padding=1), # (192, 32, 56, 56)
nn.MaxPool3d(kernel_size=(1,3,3), stride=(1,2,2), padding=(0,1,1)), # (192, 32, 28, 28)
Mixed_3b(), # (256, 32, 28, 28)
Mixed_3c(), # (480, 32, 28, 28)
nn.MaxPool3d(kernel_size=(3, 3, 3), stride=(2, 2, 2), padding=(1, 1, 1)), # (480, 16, 14, 14)
Mixed_4b(),# (512, 16, 14, 14)
Mixed_4c(),# (512, 16, 14, 14)
Mixed_4d(),# (512, 16, 14, 14)
Mixed_4e(),# (528, 16, 14, 14)
Mixed_4f(),# (832, 16, 14, 14)
nn.MaxPool3d(kernel_size=(2, 2, 2), stride=(2, 2, 2), padding=(0, 0, 0)), # (832, 8, 7, 7)
Mixed_5b(), # (832, 8, 7, 7)
Mixed_5c(), # (1024, 8, 7, 7)
nn.AvgPool3d(kernel_size=(2, 7, 7), stride=1),# (1024, 8, 1, 1)
nn.Dropout3d(dropout_keep_prob),
nn.Conv3d(1024, num_classes, kernel_size=1, stride=1, bias=True),# (400, 8, 1, 1)
)
self.spatial_squeeze = spatial_squeeze
self.softmax = nn.Softmax()
示例3: __init__
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import Dropout3d [as 別名]
def __init__(self, in_channel=1, n_classes=4, dp_prob=0):
super(ResUNet_LRes, self).__init__()
# self.imsize = imsize
self.activation = F.relu
self.pool1 = nn.MaxPool3d(2)
self.pool2 = nn.MaxPool3d(2)
self.pool3 = nn.MaxPool3d(2)
# self.pool4 = nn.MaxPool3d(2)
self.conv_block1_64 = UNetConvBlock(in_channel, 32)
self.conv_block64_128 = residualUnit(32, 64)
self.conv_block128_256 = residualUnit(64, 128)
self.conv_block256_512 = residualUnit(128, 256)
# self.conv_block512_1024 = residualUnit(512, 1024)
# this kind of symmetric design is awesome, it automatically solves the number of channels during upsamping
# self.up_block1024_512 = UNetUpResBlock(1024, 512)
self.up_block512_256 = UNetUpResBlock(256, 128)
self.up_block256_128 = UNetUpResBlock(128, 64)
self.up_block128_64 = UNetUpResBlock(64, 32)
self.Dropout = nn.Dropout3d(p=dp_prob)
self.last = nn.Conv3d(32, n_classes, 1, stride=1)
示例4: initialize_network
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import Dropout3d [as 別名]
def initialize_network(self):
if self.threeD:
conv_op = nn.Conv3d
dropout_op = nn.Dropout3d
norm_op = nn.InstanceNorm3d
else:
conv_op = nn.Conv2d
dropout_op = nn.Dropout2d
norm_op = nn.InstanceNorm2d
norm_op_kwargs = {'eps': 1e-5, 'affine': True}
dropout_op_kwargs = {'p': 0, 'inplace': True}
net_nonlin = nn.LeakyReLU
net_nonlin_kwargs = {'inplace': True, 'negative_slope': 1e-2}
self.network = Generic_UNet(self.num_input_channels, self.base_num_features, self.num_classes,
len(self.net_num_pool_op_kernel_sizes),
self.conv_per_stage, 2, conv_op, norm_op, norm_op_kwargs, dropout_op, dropout_op_kwargs,
net_nonlin, net_nonlin_kwargs, True, False, lambda x: x, InitWeights_He(1e-2),
self.net_num_pool_op_kernel_sizes, self.net_conv_kernel_sizes, False, True, True,
basic_block=ConvDropoutNonlinNorm)
self.network.cuda()
self.network.inference_apply_nonlin = softmax_helper
示例5: initialize_network
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import Dropout3d [as 別名]
def initialize_network(self):
if self.threeD:
conv_op = nn.Conv3d
dropout_op = nn.Dropout3d
norm_op = nn.InstanceNorm3d
else:
conv_op = nn.Conv2d
dropout_op = nn.Dropout2d
norm_op = nn.InstanceNorm2d
norm_op_kwargs = {'eps': 1e-5, 'affine': True}
dropout_op_kwargs = {'p': 0, 'inplace': True}
net_nonlin = nn.ReLU
net_nonlin_kwargs = {'inplace': True}
self.network = Generic_UNet(self.num_input_channels, self.base_num_features, self.num_classes,
len(self.net_num_pool_op_kernel_sizes),
self.conv_per_stage, 2, conv_op, norm_op, norm_op_kwargs, dropout_op, dropout_op_kwargs,
net_nonlin, net_nonlin_kwargs, True, False, lambda x: x, InitWeights_He(0),
self.net_num_pool_op_kernel_sizes, self.net_conv_kernel_sizes, False, True, True)
if torch.cuda.is_available():
self.network.cuda()
self.network.inference_apply_nonlin = softmax_helper
示例6: initialize_network
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import Dropout3d [as 別名]
def initialize_network(self):
if self.threeD:
conv_op = nn.Conv3d
dropout_op = nn.Dropout3d
norm_op = nn.InstanceNorm3d
else:
conv_op = nn.Conv2d
dropout_op = nn.Dropout2d
norm_op = nn.InstanceNorm2d
norm_op_kwargs = {'eps': 1e-5, 'affine': True}
dropout_op_kwargs = {'p': 0, 'inplace': True}
net_nonlin = nn.LeakyReLU
net_nonlin_kwargs = {'negative_slope': 1e-2, 'inplace': True}
self.network = Generic_UNet(self.num_input_channels, self.base_num_features, self.num_classes,
len(self.net_num_pool_op_kernel_sizes),
self.conv_per_stage, 2, conv_op, norm_op, norm_op_kwargs, dropout_op, dropout_op_kwargs,
net_nonlin, net_nonlin_kwargs, True, False, lambda x: x, InitWeights_He(0),
self.net_num_pool_op_kernel_sizes, self.net_conv_kernel_sizes, False, True, True,
seg_output_use_bias=True)
if torch.cuda.is_available():
self.network.cuda()
self.network.inference_apply_nonlin = softmax_helper
示例7: initialize_network
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import Dropout3d [as 別名]
def initialize_network(self):
if self.threeD:
conv_op = nn.Conv3d
dropout_op = nn.Dropout3d
norm_op = nn.InstanceNorm3d
else:
conv_op = nn.Conv2d
dropout_op = nn.Dropout2d
norm_op = nn.InstanceNorm2d
norm_op_kwargs = {'eps': 1e-5, 'affine': True}
dropout_op_kwargs = {'p': 0, 'inplace': True}
net_nonlin = Mish
net_nonlin_kwargs = {}
self.network = Generic_UNet(self.num_input_channels, self.base_num_features, self.num_classes,
len(self.net_num_pool_op_kernel_sizes),
self.conv_per_stage, 2, conv_op, norm_op, norm_op_kwargs, dropout_op, dropout_op_kwargs,
net_nonlin, net_nonlin_kwargs, True, False, lambda x: x, InitWeights_He(0),
self.net_num_pool_op_kernel_sizes, self.net_conv_kernel_sizes, False, True, True)
if torch.cuda.is_available():
self.network.cuda()
self.network.inference_apply_nonlin = softmax_helper
示例8: initialize_network
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import Dropout3d [as 別名]
def initialize_network(self):
self.base_num_features = 24 # otherwise we run out of VRAM
if self.threeD:
conv_op = nn.Conv3d
dropout_op = nn.Dropout3d
norm_op = nn.InstanceNorm3d
else:
conv_op = nn.Conv2d
dropout_op = nn.Dropout2d
norm_op = nn.InstanceNorm2d
norm_op_kwargs = {'eps': 1e-5, 'affine': True}
dropout_op_kwargs = {'p': 0, 'inplace': True}
net_nonlin = nn.LeakyReLU
net_nonlin_kwargs = {'negative_slope': 1e-2, 'inplace': True}
self.network = Generic_UNet(self.num_input_channels, self.base_num_features, self.num_classes,
len(self.net_num_pool_op_kernel_sizes),
3, 2, conv_op, norm_op, norm_op_kwargs, dropout_op, dropout_op_kwargs,
net_nonlin, net_nonlin_kwargs, True, False, lambda x: x, InitWeights_He(1e-2),
self.net_num_pool_op_kernel_sizes, self.net_conv_kernel_sizes, False, True, True)
if torch.cuda.is_available():
self.network.cuda()
self.network.inference_apply_nonlin = softmax_helper
示例9: initialize_network
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import Dropout3d [as 別名]
def initialize_network(self):
if self.threeD:
conv_op = nn.Conv3d
dropout_op = nn.Dropout3d
norm_op = nn.InstanceNorm3d
else:
conv_op = nn.Conv2d
dropout_op = nn.Dropout2d
norm_op = nn.InstanceNorm2d
norm_op_kwargs = {'eps': 1e-5, 'affine': True}
dropout_op_kwargs = {'p': 0, 'inplace': True}
net_nonlin = nn.ReLU
net_nonlin_kwargs = {'inplace': True}
self.network = Generic_UNet(self.num_input_channels, self.base_num_features, self.num_classes,
len(self.net_num_pool_op_kernel_sizes),
self.conv_per_stage, 2, conv_op, norm_op, norm_op_kwargs, dropout_op, dropout_op_kwargs,
net_nonlin, net_nonlin_kwargs, True, False, lambda x: x, InitWeights_He(0),
self.net_num_pool_op_kernel_sizes, self.net_conv_kernel_sizes, False, True, True,
basic_block=ConvDropoutNonlinNorm)
if torch.cuda.is_available():
self.network.cuda()
self.network.inference_apply_nonlin = softmax_helper
示例10: initialize_network
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import Dropout3d [as 別名]
def initialize_network(self):
if self.threeD:
conv_op = nn.Conv3d
dropout_op = nn.Dropout3d
norm_op = nn.InstanceNorm3d
else:
conv_op = nn.Conv2d
dropout_op = nn.Dropout2d
norm_op = nn.InstanceNorm2d
norm_op_kwargs = {'eps': 1e-5, 'affine': True}
dropout_op_kwargs = {'p': 0, 'inplace': True}
net_nonlin = nn.LeakyReLU
net_nonlin_kwargs = {'negative_slope': 1e-2, 'inplace': True}
self.network = Generic_UNet(self.num_input_channels, self.base_num_features, self.num_classes,
len(self.net_num_pool_op_kernel_sizes),
3, 2, conv_op, norm_op, norm_op_kwargs, dropout_op, dropout_op_kwargs,
net_nonlin, net_nonlin_kwargs, True, False, lambda x: x, InitWeights_He(1e-2),
self.net_num_pool_op_kernel_sizes, self.net_conv_kernel_sizes, False, True, True)
if torch.cuda.is_available():
self.network.cuda()
self.network.inference_apply_nonlin = softmax_helper
示例11: initialize_network
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import Dropout3d [as 別名]
def initialize_network(self):
if self.threeD:
conv_op = nn.Conv3d
dropout_op = nn.Dropout3d
norm_op = nn.InstanceNorm3d
else:
conv_op = nn.Conv2d
dropout_op = nn.Dropout2d
norm_op = nn.InstanceNorm2d
norm_op_kwargs = {'eps': 1e-5, 'affine': True}
dropout_op_kwargs = {'p': 0, 'inplace': True}
net_nonlin = nn.LeakyReLU
net_nonlin_kwargs = {'inplace': True, 'negative_slope': 2e-1}
self.network = Generic_UNet(self.num_input_channels, self.base_num_features, self.num_classes,
len(self.net_num_pool_op_kernel_sizes),
self.conv_per_stage, 2, conv_op, norm_op, norm_op_kwargs, dropout_op, dropout_op_kwargs,
net_nonlin, net_nonlin_kwargs, True, False, lambda x: x, InitWeights_He(0),
self.net_num_pool_op_kernel_sizes, self.net_conv_kernel_sizes, False, True, True)
if torch.cuda.is_available():
self.network.cuda()
self.network.inference_apply_nonlin = softmax_helper
示例12: initialize_network
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import Dropout3d [as 別名]
def initialize_network(self):
if self.threeD:
conv_op = nn.Conv3d
dropout_op = nn.Dropout3d
norm_op = nn.InstanceNorm3d
else:
conv_op = nn.Conv2d
dropout_op = nn.Dropout2d
norm_op = nn.InstanceNorm2d
norm_op_kwargs = {'eps': 1e-5, 'affine': True}
dropout_op_kwargs = {'p': 0, 'inplace': True}
net_nonlin = nn.ReLU
net_nonlin_kwargs = {'inplace': True}
self.network = Generic_UNet(self.num_input_channels, self.base_num_features, self.num_classes,
len(self.net_num_pool_op_kernel_sizes),
self.conv_per_stage, 2, conv_op, norm_op, norm_op_kwargs, dropout_op, dropout_op_kwargs,
net_nonlin, net_nonlin_kwargs, True, False, lambda x: x, InitWeights_He(0),
self.net_num_pool_op_kernel_sizes, self.net_conv_kernel_sizes, False, True, True,
seg_output_use_bias=True)
self.network.cuda()
self.network.inference_apply_nonlin = softmax_helper
示例13: __init__
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import Dropout3d [as 別名]
def __init__(self):
super(NoNewReversible, self).__init__()
depth = 1
self.levels = 5
self.firstConv = nn.Conv3d(4, CHANNELS[0], 3, padding=1, bias=False)
#self.dropout = nn.Dropout3d(0.2, True)
self.lastConv = nn.Conv3d(CHANNELS[0], 3, 1, bias=True)
#create encoder levels
encoderModules = []
for i in range(self.levels):
encoderModules.append(EncoderModule(getChannelsAtIndex(i - 1), getChannelsAtIndex(i), depth, i != 0))
self.encoders = nn.ModuleList(encoderModules)
#create decoder levels
decoderModules = []
for i in range(self.levels):
decoderModules.append(DecoderModule(getChannelsAtIndex(self.levels - i - 1), getChannelsAtIndex(self.levels - i - 2), depth, i != (self.levels -1)))
self.decoders = nn.ModuleList(decoderModules)
示例14: __init__
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import Dropout3d [as 別名]
def __init__(self):
super(NoNewReversible, self).__init__()
encoderDepth = encDepth
decoderDepth = 1
self.levels = 5
self.firstConv = nn.Conv3d(4, CHANNELS[0], 3, padding=1, bias=False)
#self.dropout = nn.Dropout3d(0.2, True)
self.lastConv = nn.Conv3d(CHANNELS[0], 3, 1, bias=True)
#create encoder levels
encoderModules = []
for i in range(self.levels):
encoderModules.append(EncoderModule(getChannelsAtIndex(i - 1), getChannelsAtIndex(i), encoderDepth, i != 0))
self.encoders = nn.ModuleList(encoderModules)
#create decoder levels
decoderModules = []
for i in range(self.levels):
decoderModules.append(DecoderModule(getChannelsAtIndex(self.levels - i - 1), getChannelsAtIndex(self.levels - i - 2), decoderDepth, i != (self.levels -1)))
self.decoders = nn.ModuleList(decoderModules)
示例15: __init__
# 需要導入模塊: from torch import nn [as 別名]
# 或者: from torch.nn import Dropout3d [as 別名]
def __init__(self, cfg):
super(DPN, self).__init__()
in_planes, out_planes = cfg['in_planes'], cfg['out_planes']
num_blocks, dense_depth = cfg['num_blocks'], cfg['dense_depth']
# self.in_planes = in_planes
# self.out_planes = out_planes
# self.num_blocks = num_blocks
# self.dense_depth = dense_depth
self.conv1 = nn.Conv3d(1, 24, kernel_size=3, stride=1, padding=1, bias=False)
self.bn1 = nn.BatchNorm3d(24)
self.last_planes = 24
self.layer1 = self._make_layer(in_planes[0], out_planes[0], num_blocks[0], dense_depth[0], stride=2)#stride=1)
self.layer2 = self._make_layer(in_planes[1], out_planes[1], num_blocks[1], dense_depth[1], stride=2)
self.layer3 = self._make_layer(in_planes[2], out_planes[2], num_blocks[2], dense_depth[2], stride=2)
self.layer4 = self._make_layer(in_planes[3], out_planes[3], num_blocks[3], dense_depth[3], stride=2)
self.last_planes = 216
self.layer5 = self._make_layer(128, 128, num_blocks[2], dense_depth[2], stride=1)
self.last_planes = 224+3
self.layer6 = self._make_layer(224, 224, num_blocks[1], dense_depth[1], stride=1)
self.linear = nn.Linear(out_planes[3]+(num_blocks[3]+1)*dense_depth[3], 2)#10)
self.last_planes = 120
self.path1 = nn.Sequential(
nn.ConvTranspose3d(self.last_planes, self.last_planes, kernel_size = 2, stride = 2),
nn.BatchNorm3d(self.last_planes),
nn.ReLU(inplace = True))
self.last_planes = 152
self.path2 = nn.Sequential(
nn.ConvTranspose3d(self.last_planes, self.last_planes, kernel_size = 2, stride = 2),
nn.BatchNorm3d(self.last_planes),
nn.ReLU(inplace = True))
self.drop = nn.Dropout3d(p = 0.5, inplace = False)
self.output = nn.Sequential(nn.Conv3d(248, 64, kernel_size = 1),
nn.ReLU(),
#nn.Dropout3d(p = 0.3),
nn.Conv3d(64, 5 * len(config['anchors']), kernel_size = 1))