MXNetError - набор данных не начинается с правильного магического номера - PullRequest
1 голос
/ 01 мая 2019

Я пытаюсь использовать алгоритм линейного обучения amazon sagemaker, он поддерживает тип контента «application / x-recordio-protobuf». На этапе предварительной обработки я использовал предварительную обработку scikit-learn для быстрого кодирования своих функций. Затем я использую линейную оценку ученика, чтобы преобразовать входные данные в записи.

Я использовал пакет, и преобразование перед обработкой прошло успешно.

from sagemaker.amazon.common import write_spmatrix_to_sparse_tensor

def output_fn(prediction, accept):
    """Format prediction output

    The default accept/content-type between containers for serial inference is JSON.
    We also want to set the ContentType or mimetype as the same value as accept so the next
    container can read the response payload correctly.
    """
   if accept == 'text/csv':
        return worker.Response(encoders.encode(prediction.todense(), accept), mimetype=accept)
    elif accept == 'application/x-recordio-protobuf':
        buf = BytesIO()
        write_spmatrix_to_sparse_tensor(buf, prediction)
        buf.seek(0)
        return worker.Response(buf, accept, mimetype=accept)
    else:
        raise RuntimeError("{} accept type is not supported by this script.".format(accept))

Но когда линейный ученик берет входную запись, он терпит неудачу с ошибкой ниже

Вызвано: [15:53:30] /opt/brazil-pkg-cache/packages/AIAlgorithmsCppLibs/AIAlgorithmsCppLibs-2.0.774.0/AL2012/generic-flavor/src/src/aialgs/io/iterator_base.cpp: 100

(Input Error) The header of the MXNet RecordIO record at position 810 in the dataset does not start with a valid magic number.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...