我正在使用以下代码来尝试学习 tensorflow。我已经明确指定了训练和验证X以及y数组的形状。
import numpy as np
import tensorflow as tf
f = lambda x: 2*x
Xtrain = np.random.rand(400,1)
ytrain = f(Xtrain)
Xval = np.random.rand(200,1)
yval = f(Xval)
model = tf.keras.models.Sequential([
tf.keras.layers.Dense(10, activation='relu'),
tf.keras.layers.Dense(10, activation='relu'),
tf.keras.layers.Dense(10, activation='relu'),
tf.keras.layers.Dense(10, activation='relu')
])
model.compile(optimizer='adam',
loss=tf.keras.losses.MeanSquaredError()
)
model.fit(Xtrain, ytrain, epochs=50, verbose=0)
当我运行时yval.shape, model.predict(Xval).shape,我得到了输出((200, 1), (200, 10))。我无法理解这些额外的 9 个维度是从哪里来的。甚至Xval预测也应该有形状(200, 1)。