Takes an mxnet parameter collect (from Block.collect_params()) and
        subsets it with the parameters available in this base network.

def available_parameters_subset(self, mx_params):
        """
        Takes an mxnet parameter collect (from Block.collect_params()) and
        subsets it with the parameters available in this base network.
        """
        from copy import copy
        from collections import OrderedDict
        subset_params = copy(mx_params)
        subset_params._params = OrderedDict([
            (k, v) for k, v in mx_params.items() if k in self.weight_names
        ])
        return subset_params