Step 2:模型评估
complie() - 编译
loss = \'cateqorical crossentropy\' - 定义损失函数,分类交叉熵
optimizer = \'Adam\' - 优化器
metrics = [\'accuracy\'] - 评价指标
model.compile(loss = \'cateqorical crossentropy\', optimizer= \'Adam\' metrics=[\'accuracy\'])Step 3:最佳模型
3.1 配置优化器:比如上图选用的是 \'Adam\' - SGD, RMSprop, Adagrad, Adadelta, Adam, Adamax, Nadam
3.2 输入数据训练最优的网络参数 Find the optimal network parameters
模型训练函数:model.fit()
Training data,Labels参数 - 在手写数字识别中:numpy array 输入的像素点 28 * 28 = 784 就是每个数据的特征 * 数量,输入label就是 10个类别 * 数量
训练批数 batch_size,迭代次数 nb_epoch (Mini-batch:不会每次求最小的total loss,而是一批一批的进行训练)
Mini-batch GD = Stochastic Mini-batch Gradient Descent 随机小批量梯度下降
批量梯度下降比随机梯度下降速度要快(batch_size=1):因为利用计算机的并行运算和矩阵运算,计算速度快很多 - GPU
batch_size需要设置合适,过大变成普通梯度下降,过小变成随机梯度下降
model.fit(x_train, y_train, batch_size =100, nb_epoch = 20)模型的验证和预测