keras的核心数据结构是“model",其中最主要的是Sequential模型;
- Sequential模型调用
from keras.model import Sequential
model = Sequential()
- 模型构成(由很多不同的层构成)
模型通过 .add堆叠而成
from keras.layers import Dense,Activation
model.add(Dense(units=64,input_dim=100)) #神经元为64个,输入维度为100此处为一个2D层,若输入训练参数为3D层则用input_shape来定义
model.add(Activation("relu")) #定义relu为激励函数
model.add(Dense(units=10)) #定义下一全连接层神经元节点为10个
model.add(Activation("softmax"))#定义激励函数为softmax
- 模型编译
model.compile(loss='categorical_crossentropy', optimizer='sgd', metrics=['accuracy']) #loss为损失函数,还可定义为mse;optimizer为优化器,还可定义为rmsprop 、adagrad;metrics为指标列表,可以是一个用户定制的函数,也可以是预定义指标的名字
4.训练模型
model.fit(x_train, y_train, epochs=5, batch_size=32)
- 模型的评估
loss_and_metrics = model.evaluate(x_test, y_test, batch_size=128)
- 模型预测
classes = model.predict(x_test, batch_size=128)
- 基于多层感知器的softmax多分类
- MLP的二分类
- 类似VGG的卷积神经网络
- LSTM的序列分类
- 一维卷积神经网络分类