cnn一维线性回归预测python代码
时间: 2023-09-30 20:09:58 浏览: 117
CNN卷积神经网络模型python源码.zip
下面是一个使用一维CNN进行线性回归预测的Python代码示例:
```python
import numpy as np
import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers
# 创建一维线性数据
x = np.linspace(-1, 1, 200)
y = 0.5 * x + 2 + np.random.normal(0, 0.05, (200,))
# 构建CNN模型
model = keras.Sequential()
model.add(layers.Reshape((200, 1), input_shape=(200,)))
model.add(layers.Conv1D(32, 5, activation='relu'))
model.add(layers.MaxPooling1D(2))
model.add(layers.Conv1D(64, 5, activation='relu'))
model.add(layers.MaxPooling1D(2))
model.add(layers.Flatten())
model.add(layers.Dense(1))
# 编译模型
model.compile(optimizer='adam', loss='mse')
# 训练模型
model.fit(x, y, epochs=1000, verbose=0)
# 预测新数据
x_new = np.array([1.5])
y_new = model.predict(x_new)
print(y_new)
```
这个代码示例中,我们首先使用numpy生成一些一维的线性数据(y = 0.5x + 2),然后构建了一个简单的一维CNN模型,包括了两个卷积层、池化层和一个全连接层。最后,我们使用该模型对一个新的数据点进行预测,并打印出预测结果。
阅读全文