CNN回归模型,python代码
时间: 2023-10-17 08:15:46 浏览: 73
下面是一个简单的CNN回归模型的Python代码示例:
```python
import numpy as np
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Conv2D, MaxPooling2D, Flatten, Dense
# 准备数据
x_train = np.random.rand(100, 32, 32, 3) # 训练集数据,100张32x32的彩色图片
y_train = np.random.rand(100, 1) # 训练集标签,100个标量
# 构建模型
model = Sequential([
Conv2D(32, (3, 3), activation='relu', input_shape=(32, 32, 3)),
MaxPooling2D((2, 2)),
Conv2D(64, (3, 3), activation='relu'),
MaxPooling2D((2, 2)),
Flatten(),
Dense(64, activation='relu'),
Dense(1) # 输出层为一个神经元,因为是回归问题
])
# 编译模型
model.compile(optimizer='adam', loss='mse')
# 训练模型
model.fit(x_train, y_train, epochs=10, batch_size=16)
# 使用模型进行预测
x_test = np.random.rand(10, 32, 32, 3) # 测试集数据
y_pred = model.predict(x_test) # 预测结果
```
这个模型包括两个卷积层和两个池化层,然后是一个全连接层和一个输出层。损失函数为均方误差,优化器为Adam。在训练集上训练了10个epoch后,使用模型对10张随机生成的测试集图片进行预测,得到预测结果。
阅读全文