深度学习

构建网络

2019-03-18  本文已影响0人  庵下桃花仙

模型定义

from keras import models
from keras import layers

def build_model():
    model = models.Sequential() # 因为需要将同一个模型多次实例化,所以用一个函数来构建模型
    model.add(layers.Dense(64, activation='relu', 
                           input_shape=(train_data.shape[1],)))
    model.add(layers.Dense(64, activation='relu'))
    model.add(layers.Dense(1)) # 无激活函数,标量回归的典型设置
    model.compile(optimizer='rmsprop', loss='mse', metrics=['mae'])
    return  model

与前面分类不同的地方:
1、模型定义在一个函数中,因为需要将同一个模型多次实例化,所以用一个函数来构建模型;
2、注意第一层 input_shape;
3、最后一层只有一个单元,是一个线性层,无激活函数。因为添加激活函数会限制输出范围;
4、编译网络中,损失函数用 mse (均方误差,MSE,mean squared error),表示预测值与目标值之差的平方;
5、监控的指标为 mae(平均绝对误差,MAE,mean absolute error),表示预测值与目标值之差的绝对值。

上一篇下一篇

猜你喜欢

热点阅读