Ошибка Python в mod.bind () - PullRequest
0 голосов
/ 06 июня 2018

Описание

Для оператора one_hot должен быть установлен тип индекса, но я не могу найти, где или как его установить.

Информация об окружении

---------- Информация Python ----------

Версия: 3.6.5

Компилятор: GCC 7.2.0

Сборка: ('default ',' 29 апреля 2018 16:14:56 ')

Arch: (' 64bit ',' ')

------------ Pip Info-----------

Версия: 10.0.1

Каталог: /home/augustinas/anaconda3/envs/mxnet/lib/python3.6/site-packages/ pip

---------- MXNet Info -----------

Версия: 1.3.0

Каталог:/home/augustinas/anaconda3/envs/mxnet/lib/python3.6/site-packages/mxnet

Commit Hash: 247d57944f7a989d8f445856769e704b83765828

---------- Информация о системе----------

Платформа: Linux-4.13.0-43-generic-x86_64-with-debian-stretch-sid

Система: Linux

узел: augustinasNT

выпуск: 4.13.0-43-generic

версия: # 48 ~ 16.04.1-Ubuntu SMP четверг 17 мая 12:56:46 UTC 2018

Сообщение об ошибке:

RuntimeError: simple_bind error.Аргументы:

данные: (1, 3, 112, 112)

Ошибка в операторе one_hot0: [19:29:50] src / operator / тензор / ./ indexing_op.h: 1002: Проверка не пройдена: (* in_attrs) [0]! = -1 (-1 против -1) Для оператора one_hot должен быть установлен тип индекса

Трассировка стека вернула 10 записей:

[bt] (0) /home/augustinas/anaconda3/envs/mxnet/lib/python3.6/site-packages/mxnet/libmxnet.so(+0x1d7c2a) [0x7fd3b2363c2a]

[bt] (1)/home/augustinas/anaconda3/envs/mxnet/lib/python3.6/site-packages/mxnet/libmxnet.so(+0x1d8261) [0x7fd3b2364261]

[bt] (2) / home / augustinas /anaconda3 / envs / mxnet / lib / python3.6 / site-packages / mxnet / libmxnet.so (+ 0x211641f) [0x7fd3b42a241f]

[bt] (3) / home / augustinas / anaconda3 / envs / mxnet/lib/python3.6/site-packages/mxnet/libmxnet.so(+0x2672116) [0x7fd3b47fe116]

[bt] (4) / home / augustinas / anaconda3 / envs / mxnet / lib / python3.6 / site-packages / mxnet / libmxnet.so (+ 0x267b971) [0x7fd3b4807971]

[bt] (5) / home / августин / anaconda3 / envs / mxnet / lib / python3.6 / site-packages / mxnet / libmxnet.so (+ 0x267c3ca) [0x7fd3b48083ca]

[bt] (6) / home / augustinas / anaconda3 / envs / mxnet / lib / python3.6 / site-packages / mxnet / libmxnet.so (+ 0x266ca22) [0x7fd3b47f8a22]

[bt] (7) /home/augustinas/anaconda3/envs/mxnet/lib/python3.6/site-packages / mxnet / libmxnet.so (+ 0x266d434) [0x7fd3b47f9434]

[bt] (8) /home/augustinas/anaconda3/envs/mxnet/lib/python3.6/site-packages/mxnet/libmxnet.so (MXExecutorSimpleBind + 0x2378) [0x7fd3b47574a8]

[bt] (9) /home/augustinas/anaconda3/envs/mxnet/lib/python3.6/lib-dynload/../../libffi.so.6 (ffi_call_unix64 + 0x4c) [0x7fd3cf795ec0]

1 Ответ

0 голосов
/ 09 июня 2018

Так что, глядя на документацию one_hot, вам нужно предоставить два аргумента, indices и depth, которые оба необходимы.Аналогичные аргументы требуются для mx.symbol.one_hot и mx.ndarray.one_hot, но indices будет иметь тип Symbol и NDArray соответственно.

1) indices (типа NDArray / Symbol): массив мест, гдеset on_value

2) depth (типа int): глубина одного горячего измерения (т. е. количество классов)

Пример этого выглядит следующим образом:

one_hot([1,0,2,0], 3) = [[ 0.  1.  0.]
                         [ 1.  0.  0.]
                         [ 0.  0.  1.]
                         [ 1.  0.  0.]]
...