Я пытаюсь предварительно обработать некоторые тексты с помощью Keras, и мне нужно использовать функцию keras.preprocessing.sequence.pad_sequences()
более одного раза, однако, похоже, она этого не позволяет.Есть ли способ обойти эту ошибку и использовать функцию более одного раза?
import numpy
from keras.preprocessing.sequence import pad_sequences
example_sequences = [[1,2,3,4],[1,5,4],[2,3]]
MAX_SEQUENCE_LENGTH = 3
pad_sequences = pad_sequences(example_sequences, maxlen=MAX_SEQUENCE_LENGTH)
print(pad_sequences)
sequences2 = [[1,2,3,4],[1,5,4],[2,3]]
MAX_SEQUENCE_LENGTH2 = 3
pad_sequences2 = pad_sequences(sequences2, maxlen=MAX_SEQUENCE_LENGTH2)
Вывод:
Using TensorFlow backend.
[[2 3 4]
[1 5 4]
[0 2 3]]
Traceback (most recent call last):
File "C:\Users\test.py", line 47, in <module>
pad_sequences2 = pad_sequences(sequences2, maxlen=MAX_SEQUENCE_LENGTH2)
TypeError: 'numpy.ndarray' object is not callable
Как вы можете видеть при первом вызове функции, она производитМатрица, однако, во второй раз, когда она вызывается, я получаю сообщение об ошибке, что numpy.ndarray не вызывается.Обратите внимание, что входные данные для функции pad_sequence идентичны, и никакие входные данные не являются пустым массивом.Так почему я не получаю один и тот же вывод из функции и как это исправить, чтобы я мог использовать функцию pad_sequence более одного раза?