Код: Выделить всё
model = tf.keras.Sequential()
model.add( tf.keras.layers.InputLayer(shape=(2,)) )
model.add( tf.keras.layers.Dense(1024) )
model.add( tf.keras.layers.Dense(1024) )
model.add( tf.keras.layers.Dense(units=1) )
model.compile(loss="mean_squared_error", optimizer="adam", metrics=["mse"])
Когда я обучаю его с помощью
Код: Выделить всё
model.fit(x=trainData, y=trainRes, epochs=12, batch_size=100)
Код: Выделить всё
trainDataКод: Выделить всё
trainData.shapeКод: Выделить всё
res = model.predict(testData[0])
Код: Выделить всё
Invalid input shape for input Tensor("data:0", shape=(2,), dtype=float32). Expected shape (None, 2), but input has incompatible shape (2,)
Arguments received by Sequential.call():
• inputs=tf.Tensor(shape=(2,), dtype=float32)
• training=False
• mask=None
Код: Выделить всё
res = model.predict(testData[0:1])
Мое предположение состоит в том, что Keras каким-то образом интерпретирует весь массив как единую единицу. в учебных целях, а не идти «построчно». Это также объясняет, почему обучение — ерунда, и ни к чему толковому оно не приближается.
Подробнее здесь: https://stackoverflow.com/questions/793 ... tensorflow
Мобильная версия