1 回答
TA贡献1796条经验 获得超10个赞
糟糕的结果- 为此,您尝试了超参数调整和特征工程以获得良好的结果。与此同时,尝试不同的模型架构以尽量减少您的损失。这部分是关于实验的。没有人可以为此给出正确的答案。
准确性- 由于您正在使用回归来解决您的问题,因此准确性不是要选择的指标。您可以使用均方根度量来解决回归问题。准确性是适用于分类任务而非回归任务的指标。
使用两个值构造 203 个输出- 您可以通过使用 tensorflow 中的函数式 API 来完成此操作。使用功能性 api,您可以进行多个输入和多个输出。在这个例子中,我将向您展示这两种情况。您可以调整以下示例来创建您的模型。代码:
def create_model():
input1 = tf.keras.Input(shape=(13,), name = 'I1')
input2 = tf.keras.Input(shape=(6,), name = 'I2')
hidden1 = tf.keras.layers.Dense(units = 4, activation='relu')(input1)
hidden2 = tf.keras.layers.Dense(units = 4, activation='relu')(input2)
merge = tf.keras.layers.concatenate([hidden1, hidden2])
hidden3 = tf.keras.layers.Dense(units = 3, activation='relu')(merge)
output1 = tf.keras.layers.Dense(units = 2, activation='linear', name ='O1')(hidden3)
output2 = tf.keras.layers.Dense(units = 2, activation='linear', name = 'O2')(hidden3)
model = tf.keras.models.Model(inputs = [input1,input2], outputs = [output1,output2])
model.compile(optimizer='Adamax',
loss='mean_squared_error',
metrics=[tf.keras.metrics.RootMeanSquaredError()])
return model
model = create_model3()
tf.keras.utils.plot_model(model, 'my_first_model.png', show_shapes=True)
图像:
为了训练:
history = model.fit(
x = {'I1':x1, 'I2':x2},
y = {'O1':y1, 'O2': y2},
batch_size = 32,
epochs = 10,
verbose = 1,
callbacks = None
# validation_data = [(val_data,new_val_data),(val_labels, new_val_labels)]
)
添加回答
举报