Я использую набор данных mnist (цифры) и хотел бы реализовать функцию потери среднего квадрата ошибок, однако у меня есть следующая ошибка:
ValueError: Целевой массив с формой (60000, 1) былпередается для вывода формы (Нет, 10) при использовании в качестве потери mean_squared_error
. Эта потеря предполагает, что цели будут иметь ту же форму, что и выходные данные.
это мой код: Первоначально я пытался sparse_categorical_crossentropy Код изменен с: https://www.youtube.com/watch?v=wQ8BIBpya2k
import tensorflow as tf
mnist = tf.keras.datasets.mnist
(x_train, y_train), (x_test,y_test) = mnist.load_data()
x_train = tf.keras.utils.normalize(x_train, axis = 1)
x_test = tf.keras.utils.normalize(x_test, axis = 1)
model = tf.keras.models.Sequential([
tf.keras.layers.Flatten(input_shape=(28,28)),
tf.keras.layers.Dense(128, activation='sigmoid'),
tf.keras.layers.Dense(10, activation='sigmoid')
])
model.compile(optimizer='SGD',
loss='mean_squared_error',
metrics=['accuracy'])
model.fit(x_train, y_train, epochs=3)
Как я могу изменить свои данные, чтобы они работали с MSE?