Я думаю, что есть опечатка в первом слое, где вы упоминаете input_shape
. Если у вас есть одно измерение, как в вашем случае, запятая (,
) необходима. Под капотом модель добавит размер партии. Однако, если в вашем input_shape
есть два или более измерений, вам не нужна запятая ,
в конце. Поэтому измените следующую строку
model = tf.keras.Sequential([keras.layers.Dense(units=1, input_shape=(1,))])
Вот ваш обновленный полный код, который работает для меня.
import tensorflow as tf
import numpy as np
from tensorflow import keras
model = tf.keras.Sequential([keras.layers.Dense(units=1, input_shape=(1,))])
model.compile(optimizer='sgd', loss='mean_squared_error')
xs = np.array([-1.0, 0.0, 1.0, 2.0, 3.0, 4.0], dtype=float)
ys = np.array([-3.0, -1.0, 1.0, 3.0, 5.0, 7.0], dtype=float)
model.fit(xs, ys, epochs=50)
print(model.predict([10.0]))