示例#1
0
 def __init__(
     self,
     features,
     hidden_features,
     context_features=None,
     num_blocks=2,
     use_residual_blocks=True,
     random_mask=False,
     activation=F.relu,
     dropout_probability=0.0,
     use_batch_norm=False,
 ):
     self.features = features
     made = made_module.MADE(
         features=features,
         hidden_features=hidden_features,
         context_features=context_features,
         num_blocks=num_blocks,
         output_multiplier=self._output_dim_multiplier(),
         use_residual_blocks=use_residual_blocks,
         random_mask=random_mask,
         activation=activation,
         dropout_probability=dropout_probability,
         use_batch_norm=use_batch_norm,
     )
     super(MaskedAffineAutoregressiveTransform, self).__init__(made)
示例#2
0
    def __init__(
        self,
        features,
        hidden_features,
        context_features=None,
        num_bins=10,
        tails=None,
        tail_bound=1.0,
        num_blocks=2,
        use_residual_blocks=True,
        random_mask=False,
        activation=F.relu,
        dropout_probability=0.0,
        use_batch_norm=False,
        min_bin_width=splines.rational_quadratic.DEFAULT_MIN_BIN_WIDTH,
        min_bin_height=splines.rational_quadratic.DEFAULT_MIN_BIN_HEIGHT,
        min_derivative=splines.rational_quadratic.DEFAULT_MIN_DERIVATIVE,
    ):
        self.num_bins = num_bins
        self.min_bin_width = min_bin_width
        self.min_bin_height = min_bin_height
        self.min_derivative = min_derivative
        self.tails = tails
        self.tail_bound = tail_bound

        autoregressive_net = made_module.MADE(
            features=features,
            hidden_features=hidden_features,
            context_features=context_features,
            num_blocks=num_blocks,
            output_multiplier=self._output_dim_multiplier(),
            use_residual_blocks=use_residual_blocks,
            random_mask=random_mask,
            activation=activation,
            dropout_probability=dropout_probability,
            use_batch_norm=use_batch_norm,
        )

        super().__init__(autoregressive_net)