Исходный путь в блокноте Jupyter к другим файлам - PullRequest
0 голосов
/ 30 января 2019

Из записной книжки Jupyter я хотел бы указать местоположение для других файлов, уже загруженных в Jupyter.

Вот код, Я думаю, строка, которая является неправильной, является первой:

location = os.path.normpath('localhost:888/notebooks/project')

data = {
  'train': { 'file': 'train_modified.csv', 'location': 0 },
  'test': { 'file': 'test_modified.csv', 'location': 0 },
  'query': { 'file': 'query.csv', 'location': 1 },
  'slots': { 'file': 'train_labels.csv', 'location': 1 }
}

for item in data.values():
    location = locations[item['location']]
    path = os.path.join('..', location, item['file'])
    if os.path.exists(path):
        print("Reusing locally cached:", item['file'])
        # Update path
        item['file'] = path
    elif os.path.exists(item['file']):
        print("Reusing locally cached:", item['file'])

Запуск этого кода работает нормально.

Однако, когда я продолжаю работать, я получаю следующую ошибку:

RuntimeError                              Traceback (most recent call last)
<ipython-input-26-c873a36fb4b7> in <module>
      1 # peek
----> 2 reader = create_reader(data['train']['file'], is_training=True)
      3 reader.streams.keys()

<ipython-input-23-81736f039ae7> in create_reader(path, is_training)
      4          intent_unused = C.io.StreamDef(field='S1', shape=num_intents, is_sparse=True),
      5          slot_labels   = C.io.StreamDef(field='S2', shape=num_labels,  is_sparse=True)
----> 6      )), randomize=is_training, max_sweeps = C.io.INFINITELY_REPEAT if is_training else 1)

~\Anaconda333\lib\site-packages\cntk\io\__init__.py in __init__(self, deserializers, max_samples, max_sweeps, randomization_window_in_chunks, randomization_window_in_samples, randomization_seed, trace_level, multithreaded_deserializer, frame_mode, truncation_length, randomize)
    191             config.randomization_window_in_samples = 0
    192 
--> 193         source = cntk_py.create_composite_minibatch_source(config)
    194         # transplant into this class instance
    195         self.__dict__ = source.__dict__

RuntimeError: Expected a sequence id at the offset 0, none was found.

[CALL STACK]
    > CreateDeserializer
    - Microsoft::MSR::CNTK::IDataReader::  SupportsDistributedMBRead (x3)
    - CreateDeserializer
    - CreateCompositeDataReader (x3)
    - CNTK::  UniversalLearner
    - CNTK::  CreateCompositeMinibatchSource
    - PyInit__cntk_py
    - PyCFunction_FastCallDict
    - PyObject_GetAttr
    - PyEval_EvalFrameDefault
    - PyObject_IsInstance
    - PyFunction_FastCallDict

Спасибо за вашу помощь

1 Ответ

0 голосов
/ 30 января 2019

Возможно, вы захотите взглянуть на this

Во-вторых, давайте предположим, что у нас есть набор данных в следующем текстовом формате с разделением по вкладкам: * Первый столбецидентификатор последовательности: например, 0 - это идентификатор для последовательности 0;и 1 - идентификатор последовательности 1. * Второй столбец начинается с символа «|».Это функция с именем «x», которая является редким представлением слов в наших данных обучения.* Третий столбец снова начинается с символа «|».Это наша метка с именем 'y', которая является горячим представлением метки.

По сути, я думаю, что ваш файл исходных данных отформатирован неправильно.Вероятно, вам нужно включить идентификатор последовательности в начале каждой строки.

...