def METHOD_NAME(inputs, signature):
    """
    Check input data shape consistency with signature.
    Parameters
    ----------
    inputs : List of NDArray
        Input data in NDArray format.
    signature : dict
        Dictionary containing model signature.
    """
    assert isinstance(inputs, list), 'Input data must be a list.'
    assert len(inputs) == len(signature['inputs']), \
        "Input number mismatches with " \
        "signature. %d expected but got %d." \
        % (len(signature['inputs']), len(inputs))
    for input_data, sig_input in zip(inputs, signature["inputs"]):
        assert isinstance(input_data, mx.nd.NDArray), 'Each input must be NDArray.'
        assert len(input_data.shape) == len(sig_input["data_shape"]), \
            'Shape dimension of input %s mismatches with ' \
            'signature. %d expected but got %d.' \
            % (sig_input['data_name'],
               len(sig_input['data_shape']),
               len(input_data.shape))
        for idx in range(len(input_data.shape)):
            if idx != 0 and sig_input['data_shape'][idx] != 0:
                assert sig_input['data_shape'][idx] == input_data.shape[idx], \
                    'Input %s has different shape with ' \
                    'signature. %s expected but got %s.' \
                    % (sig_input['data_name'], sig_input['data_shape'],
                       input_data.shape)