TensorFlow基础与模型训练上半部分
一、Keras基础操作与模型训练
在模型训练过程中,Keras提供了便捷的操作方式。例如,Keras中的 sparse_categorical_crossentropy 损失函数和 categorical_crossentropy 损失函数都执行交叉熵操作,但前者可直接将真实标签作为输入,而后者需要提前对真实标签进行独热编码。使用 sparse_categorical_crossentropy 损失函数能避免手动转换标签的步骤。
在选择优化器时,传递 'sgd' 给Keras等同于传递 tf.keras.optimizers.SGD() 。前者更易读,后者则可指定自定义学习率等参数。损失函数、评估指标以及传递给Keras方法的大多数参数都有类似情况。
接下来调用 .fit() 方法进行模型训练,它与另一个流行的机器学习库scikit - learn的接口非常相似。这里我们将训练五个轮次(epochs),即对整个训练数据集迭代五次。设置 verbose 为1,这样可以得到一个进度条,显示之前选择的评估指标、损失值以及预计到达时间(ETA),ETA是对当前轮次结束前剩余时间的估计。
模型训练完成后,我们发现模型存在过拟合现象,即训练准确率高于测试准确率。如果训练五个轮次,测试集准确率达到97%,比之前的情况提高了约2%,不过目前最先进的算法能达到99.79%的准确率。
整个模型训练过程主要分为三
超级会员免费看
订阅专栏 解锁全文
2933

被折叠的 条评论
为什么被折叠?



