Я пытаюсь создать базовую модель нейронной сети в Керасе, которая научится складывать положительные числа вместе, и у меня возникли проблемы с формированием обучающих данных для соответствия модели:
Я уже пробовал многочисленные конфигурации для атрибута "input_shape" первого плотного слоя, но, похоже, ничего не работает.
# training data
training = np.array([[2,3],[4,5],[3,8],[2,9],[11,4],[13,5],[2,9]], dtype=float)
answers = np.array([5, 9, 11, 11, 15, 18, 11], dtype=float)
# create our model now:
model = tf.keras.Sequential([
tf.keras.layers.Dense(units=16, input_shape=(2,)),
tf.keras.layers.Dense(units=16, activation=tf.nn.relu),
tf.keras.layers.Dense(units=1)
])
# set up the compile parameters:
model.compile(loss='mean_squared_error',
optimizer=tf.keras.optimizers.Adam(.1))
#fit the model:
model.fit(training, answers, epochs=550, verbose=False)
print(model.predict([[7,9]]))
Я ожидаю, что это запустится без ошибок и выдаст результат '16', но я получаю следующую ошибку:
"Traceback (most recent call last):
File "c2f", line 27, in <module>
print(model.predict([[7,9]]))
File "C:\Users\Aalok\AppData\Local\Programs\Python\Python37\lib\site-packages\tensorflow\python\keras\engine\training.py", line 1096, in predict
x, check_steps=True, steps_name='steps', steps=steps)
File "C:\Users\Aalok\AppData\Local\Programs\Python\Python37\lib\site-packages\tensorflow\python\keras\engine\training.py", line 2382, in _standardize_user_data
exception_prefix='input')
File "C:\Users\Aalok\AppData\Local\Programs\Python\Python37\lib\site-packages\tensorflow\python\keras\engine\training_utils.py", line 362, in standardize_input_data
' but got array with shape ' + str(data_shape))
ValueError: Ошибка при проверке ввода: ожидалось, что dens_input имеет форму (2,), но получил массив с формой (1,)