На этом шаге мы рассмотрим еще один способ такой обработки.
Выше мы упоминали, что метки также можно преобразовать в тензор целых чисел:
y_train = np.array(train_labels) y_test = np.array(test_labels)
Единственное, что изменится в данном случае, - функция потерь . В примере 4.21 мы взяли функцию потерь categorical_crossentropy, предполагающую, что метки получены методом кодирования категорий. С целочисленными метками следует использовать функцию sparse_categorical_crossentropy:
model.compile(optimizer="rmsprop", loss="sparse_categorical_crossentropy", metrics=["accuracy"])
С математической точки зрения эта новая функция потерь равноценна функции categorical_crossentropy; ее отличает только интерфейс.
На следующем шаге мы рассмотрим важность использования достаточно больших промежуточных слоев.