Объект «кортеж» не является итераторомPython

Программы на Python
Ответить
Anonymous
 Объект «кортеж» не является итератором

Сообщение Anonymous »

Следующий код является точкой входа в мою нейронную сеть для встраивания слов:

Код: Выделить всё

negative_ratio, n_positive = 1, 10
t = Trainer()
epoch = t.generate_batch(n_positive, negative_ratio=negative_ratio)
model = t.model()
h = model.fit_generator(
epoch,
epochs=15,
steps_per_epoch=negative_ratio,
verbose=2
)
выше — это данные генератора, который выдает (закодированные) обучающие данные в следующем формате:

Код: Выделить всё

 [[list([57, 41, 49, 50, 55, 19, 26, 38, 5, 14, 51])
list([50, 0, 0, 0, 0, 49, 0, 0, 0, 0, 26, 0, 0, 0, 0, 41, 55, 19, 38, 5, 51, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 0, 57, 0, 0, 0, 0, 0, 0, 0])
1]
[list([35, 50, 12, 15, 21, 19, 26, 34, 13, 52])
list([50, 12, 0, 0, 0, 0, 0, 0, 0, 0, 26, 34, 0, 0, 0, 21, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 15, 13, 0, 0, 0, 0, 0, 0])
1]
[list([20, 28, 41, 56, 2, 1, 51, 23, 22])
list([28, 0, 0, 22, 0, 0, 0, 0, 0, 0, 2, 23, 0, 0, 0, 41, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 20, 56, 0, 0, 0, 0, 0, 0, 0])
1]
[list([30, 20, 9, 12, 15, 19, 34, 5, 52, 51, 22])
list([12, 0, 0, 22, 0, 0, 0, 9, 0, 0, 34, 0, 0, 0, 0, 19, 5, 51, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 52, 0, 0, 0, 0, 0, 0, 0, 20, 15, 0, 0, 0, 0, 0, 0, 0])
1]]
Однако Керас продолжает говорить мне, что генератор недействителен:

Код: Выделить всё

TypeError: 'tuple' object is not an iterator
Что я делаю не так?

Подробнее здесь: https://stackoverflow.com/questions/550 ... n-iterator
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»