Что такое правильное использование DataSource с библиотекой torch/dp

Я новичок как в языке программирования lua, так и в библиотеке torch. Я пытаюсь заставить некоторые алгоритмы машинного обучения работать как можно скорее. Я попытался получить нейронные сети с помощью библиотеки dp, используя пример здесь. Но я не могу привести свой набор данных в форму для ввода в алгоритм обучения. Я думаю, что мое лучшее, а также первоначальное предположение состояло в том, чтобы сделать это:

train_set = dp.DataSet(dataset[1], dataset[2]) 
test_set = dp.DataSet(test_dataset[1], test_dataset[2])

ds = dp.DataSource(train_set=train_set, test_set=test_set)

Что дает ошибку: filename.lua:56: ')' expected near '='

Где набор данных [1] — это факел. Тензор, содержащий информацию о данных, а набор данных [2] — это факел. Тензор двоичной информации о данных, которые я хотел бы знать.

Надеюсь, это не глупая синтаксическая ошибка.


person Joonatan Samuel    schedule 11.07.2015    source источник


Ответы (1)


Да, это синтаксическая ошибка. Lua не имеет именованных аргументов. Адепты Lua используют таблицу для эмуляции такой функции.

Итак, попробуйте это: dp.DataSource({train_set=train_set, test_set=test_set}) или просто dp.DataSource{train_set=train_set, test_set=test_set} (вы можете удалить скобки, если функция имеет один параметр).

person Alexander Lutsenko    schedule 12.07.2015