第一个例子:回归模型
首先我们在Keras中定义一个单层全连接网络,进行线性回归模型的训练
# Regressor example
import numpy as np
np.random.seed(1337)
from keras.models import Sequential
from keras.layers import Dense
import matplotlib.pyplot as plt
# 创建数据集
X = np.linspace(-1, 1, 200)
np.random.shuffle(X) # 将数据集随机化
Y = 0.5 * X + 2 + np.random.normal(0, 0.05, (200, )) # 假设我们真实模型为:Y=0.5X+2
# 绘制数据集plt.scatter(X, Y)
plt.show()
X_train, Y_train = X[:160], Y[:160] # 把前160个数据放到训练集
X_test, Y_test = X[160:], Y[160:] # 把后40个点放到测试集
# 定义一个model,
model = Sequential () # Keras有两种类型的模型,序贯模型(Sequential)和函数式模型
# 比较常用的是Sequential,它是单输入单输出的
model.add(Dense(output_dim=1, input_dim=1)) # 通过add()方法一层层添加模型
# Dense是全连接层,第一层需要定义输入,
# 第二层无需指定输入,一般第二层把第一层的输出作为输入
# 定义完模型就