«KeyError: 0» при вызове model.fit() в KerasPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 «KeyError: 0» при вызове model.fit() в Keras

Сообщение Anonymous »

Я обучаю простую последовательную модель НЛП в keras. Вот архитектура модели:

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

from keras.models import Sequential
from keras import layers
from keras.layers import Embedding, Flatten, Dense

embedding_dim = 500

model = Sequential()

model.add(layers.Embedding(input_dim = vocab_size,
output_dim = embedding_dim, input_shape = (2,)))
model.add(layers.Flatten())
model.add(layers.Dense(10, activation = 'relu'))
model.add(layers.Dense(1, activation = 'softmax'))
model.compile(optimizer = 'adam',
loss = 'categorical_crossentropy',
metrics = METRICS)
Я также реализовал раннюю остановку и веса классов следующим образом:

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

early_stopping = tf.keras.callbacks.EarlyStopping(
monitor = 'val_loss',
verbose = 1,
patience = 10,
mode = 'max',
restore_best_weights = True)

class_weight = {1: 3.,
2: 2.,
3: 1.5,
4: 1.,
5: 3.,
6: 3.
}
Затем я вызвал model.fit() следующим образом:

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

history = model.fit(X_train, y_train,
epochs = 100,
verbose = 2,
validation_data = (X_val, y_val),
batch_size = 10,
class_weight = class_weight,
callbacks = [early_stopping]
)
Это привело к следующей ошибке:

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

---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
Cell In[74], line 9
1 class_weight = {1: 3.,
2                 2: 2.,
3                 3: 1.5,
(...)
6                 6: 3.
7                 }
----> 9 history = model.fit(X_train, y_train,
10                     epochs = 100,
11                     verbose = 2,
12                     validation_data = (X_val, y_val),
13                     batch_size = 10,
14                     class_weight = class_weight,
15                     callbacks = [early_stopping]
16                    )

File ~\AppData\Local\anaconda3\Lib\site-packages\keras\src\utils\traceback_utils.py:122, in filter_traceback..error_handler(*args, **kwargs)
119     filtered_tb = _process_traceback_frames(e.__traceback__)
120     # To get the full stack trace, call:
121     # `keras.config.disable_traceback_filtering()`
--> 122     raise e.with_traceback(filtered_tb) from None
123 finally:
124     del filtered_tb

File ~\AppData\Local\anaconda3\Lib\site-packages\pandas\core\series.py:1040, in Series.__getitem__(self, key)
1037     return self._values[key]
1039 elif key_is_scalar:
-> 1040     return self._get_value(key)
1042 # Convert generator to list before going through hashable part
1043 # (We will iterate through the generator there to check for slices)
1044 if is_iterator(key):

File ~\AppData\Local\anaconda3\Lib\site-packages\pandas\core\series.py:1156, in Series._get_value(self, label, takeable)
1153     return self._values[label]
1155 # Similar to Index.get_value, but we do not fall back to positional
-> 1156 loc = self.index.get_loc(label)
1158 if is_integer(loc):
1159     return self._values[loc]

File ~\AppData\Local\anaconda3\Lib\site-packages\pandas\core\indexes\base.py:3798, in Index.get_loc(self, key)
3793     if isinstance(casted_key, slice) or (
3794         isinstance(casted_key, abc.Iterable)
3795         and any(isinstance(x, slice) for x in casted_key)
3796     ):
3797         raise InvalidIndexError(key)
-> 3798     raise KeyError(key) from err
3799 except TypeError:
3800     # If we have a listlike key, _check_indexing_error will raise
3801     #  InvalidIndexError. Otherwise we fall through and re-raise
3802     #  the TypeError.
3803     self._check_indexing_error(key)

KeyError: 0
Что касается аналогичного вопроса об этой ошибке в Keras: «KeyError: 0» при попытке загрузить последовательную модель в Keras, я попытался обновить свою версию Keras. Однако это ничего не изменило. Я считаю, что ошибка является чем-то внутренним в Keras, но я не уверен, в чем дело.
Пожалуйста, сообщите!

Подробнее здесь: https://stackoverflow.com/questions/786 ... t-in-keras
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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