请编写一个简单的多输入单输出的mlp模型进行回归预测
时间: 2023-06-25 14:04:56 浏览: 90
好的,以下是一个简单的多输入单输出的 MLP 模型代码,用于回归预测:
```
import numpy as np
from keras.models import Sequential
from keras.layers import Dense
# 生成随机数据
x1 = np.random.rand(100, 1)
x2 = np.random.rand(100, 1)
x3 = np.random.rand(100, 1)
y = 3*x1 + 5*x2 + 7*x3
# 构建模型
model = Sequential()
model.add(Dense(10, input_shape=(3,), activation='relu'))
model.add(Dense(1))
# 编译模型
model.compile(loss='mse', optimizer='adam')
# 训练模型
model.fit([x1, x2, x3], y, epochs=100, batch_size=10)
# 预测结果
x1_test = np.random.rand(10, 1)
x2_test = np.random.rand(10, 1)
x3_test = np.random.rand(10, 1)
y_pred = model.predict([x1_test, x2_test, x3_test])
print(y_pred)
```
这个模型有三个输入(x1、x2、x3),一个输出(y),其中 x1、x2、x3 分别代表三个特征,y 代表目标值。模型结构是一个有一个隐藏层的 MLP,隐藏层有 10 个神经元,使用 ReLU 激活函数,输出层只有一个神经元,没有激活函数。使用 MSE 作为损失函数,Adam 作为优化器进行训练。在训练时,需要将输入数据以列表形式传给模型。最后,使用模型预测新数据的输出。
阅读全文