AI::MXNet::TestUtils - Convenience subs used in tests.
Test if two pdl arrays are the same Parameters ---------- a : pdl b : pdl
Test if all elements of two pdl arrays are almost equal Parameters ---------- a : pdl b : pdl
Calculate the relative difference between two input arrays Calculated by :math:`\\frac{|a-b|_1}{|a|_1 + |b|_1}` Parameters ---------- a : pdl b : pdl
Test if two pdl arrays are almost equal.
Check symbol gives the same output for different running context Parameters ---------- sym : Symbol or list of Symbols symbol(s) to run the consistency test ctx_list : list running context. See example for more detail. scale : float, optional standard deviation of the inner normal distribution. Used in initialization grad_req : str or list of str or dict of str to str gradient requirement.
Check whether two NDArrays sharing the same memory block Parameters ---------- array1 : NDArray First NDArray to be checked array2 : NDArray Second NDArray to be checked Returns ------- bool Whether two NDArrays share the same memory
Generate a random sparse ndarray. Returns the ndarray, value(np) and indices(np) Parameters ---------- shape: list or tuple stype: str, valid values: "csr" or "row_sparse" density, optional: float, should be between 0 and 1 distribution, optional: str, valid values: "uniform" or "powerlaw" dtype, optional: numpy.dtype, default value is None Returns ------- Result of type CSRNDArray or RowSparseNDArray Examples -------- Below is an example of the powerlaw distribution with csr as the stype. It calculates the nnz using the shape and density. It fills up the ndarray with exponentially increasing number of elements. If there are enough unused_nnzs, n+1th row will have twice more nnzs compared to nth row. else, remaining unused_nnzs will be used in n+1th row If number of cols is too small and we have already reached column size it will fill up all following columns in all followings rows until we reach the required density. >>> csr_arr, _ = rand_sparse_ndarray(shape=(5, 16), stype="csr", density=0.50, distribution="powerlaw") >>> indptr = csr_arr.indptr.asnumpy() >>> indices = csr_arr.indices.asnumpy() >>> data = csr_arr.data.asnumpy() >>> row2nnz = len(data[indptr[1]:indptr[2]]) >>> row3nnz = len(data[indptr[2]:indptr[3]]) >>> assert(row3nnz == 2*row2nnz) >>> row4nnz = len(data[indptr[3]:indptr[4]]) >>> assert(row4nnz == 2*row3nnz)
To install AI::MXNet, copy and paste the appropriate command in to your terminal.
cpanm
cpanm AI::MXNet
CPAN shell
perl -MCPAN -e shell install AI::MXNet
For more information on module installation, please visit the detailed CPAN module installation guide.