The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

    AI::MXNet::Module - FeedForward interface of MXNet.
    See AI::MXNet::Module::Base for the details.

load

        Create a model from previously saved checkpoint.

        Parameters
        ----------
        $prefix : Str
            path prefix of saved model files. You should have
            "prefix-symbol.json", "prefix-xxxx.params", and
            optionally "prefix-xxxx.states", where xxxx is the
            epoch number.
        $epoch : Int
            epoch to load.
        $load_optimizer_states=0 : Bool
            whether to load optimizer states. Checkpoint needs
            to have been made with save_optimizer_states=True.
        :$data_names : array ref of str
            Default is ['data'] for a typical model used in image classification.
        :$label_names : array ref of str
            Default is ['softmax_label'] for a typical model used in image
            classification.
        :$logger : Logger
            Default is AI::MXNet::Logging.
        :$context : Context or list of Context
            Default is cpu(0).
        :$work_load_list : array ref of number
            Default is undef, indicating an uniform workload.
        :$fixed_param_names: array ref of str
            Default is undef, indicating no network parameters are fixed.

save_checkpoint

    Save current progress to a checkpoint.
    Use mx->callback->module_checkpoint as epoch_end_callback to save during training.

    Parameters
    ----------
    $prefix : Str
        The file prefix to checkpoint to
    $epoch : Int
        The current epoch number
    $save_optimizer_states=0 : Bool
        Whether to save optimizer states for later training

model_save_checkpoint

    Checkpoint the model data into file.

    Parameters
    ----------
    $prefix : Str
        Prefix of model name.
    $epoch : Int
        The epoch number of the model.
    $symbol : AI::MXNet::Symbol
        The input symbol
    $arg_params : HashRef[AI::MXNet::NDArray]
        Model's parameters, hash ref of name to AI::MXNet::NDArray of net's weights.
    $aux_params : HashRef[AI::MXNet::NDArray]
        Model's parameters, hash ref of name to AI::MXNet::NDArray of net's auxiliary states.
    Notes
    -----
    - prefix-symbol.json will be saved for symbol.
    - prefix-epoch.params will be saved for parameters.

bind

    Bind the symbols to construct executors. This is necessary before one
    can perform computation with the module.

    Parameters
    ----------
    :$data_shapes : ArrayRef[AI::MXNet::DataDesc|NameShape]
        Typically is $data_iter->provide_data.
    :$label_shapes : Maybe[ArrayRef[AI::MXNet::DataDesc|NameShape]]
        Typically is $data_iter->provide_label.
    :$for_training : bool
        Default is 1. Whether the executors should be bind for training.
    :$inputs_need_grad : bool
        Default is 0. Whether the gradients to the input data need to be computed.
        Typically this is not needed. But this might be needed when implementing composition
        of modules.
    :$force_rebind : bool
        Default is 0. This function does nothing if the executors are already
        binded. But with this 1, the executors will be forced to rebind.
    :$shared_module : Module
        Default is undef. This is used in bucketing. When not undef, the shared module
        essentially corresponds to a different bucket -- a module with different symbol
        but with the same sets of parameters (e.g. unrolled RNNs with different lengths).

reshape

    Reshape the module for new input shapes.
    Parameters
    ----------
    :$data_shapes : ArrayRef[AI::MXNet::DataDesc]
        Typically is $data_iter->provide_data.
    :$label_shapes= : Maybe[ArrayRef[AI::MXNet::DataDesc]]
        Typically is $data_iter->provide_label.

borrow_optimizer

    Borrow optimizer from a shared module. Used in bucketing, where exactly the same
    optimizer (esp. kvstore) is used.

    Parameters
    ----------
    shared_module : AI::MXNet::Module

_sync_params_from_devices

    Synchronize parameters from devices to CPU. This function should be called after
    calling 'update' that updates the parameters on the devices, before one can read the
    latest parameters from $self->_arg_params and $self->_aux_params.