美文网首页
我的第一个神经网络CNN

我的第一个神经网络CNN

作者: 刘小白DOER | 来源:发表于2022-02-11 23:16 被阅读0次

    前几天把机器学习的内容仔细过了一遍,今天来实践自己的第一个深度学习的神经网络。此CNN使用顺序API构建fashion_mnist图像分类器,CNN含有两个隐藏层的分类MPL。

    在去年第一次接触神经网络时,由于前期对于机器学习不熟悉导致学习难度太大,这一次有前期的仔细铺垫后才能得心应手的开始实践。神经网络的超参数实在是太多了,笔者的小笔记本在测试下面的例子时还是花了很长时间,这是在没有使用交叉验证来搜索最优超参数的情况下。

1、导入前端keras

    from tensorflow import keras

2、数据准备

    导入fashion_mnist数据集并分出训练集、验证集和测试集,同时数据集比例缩放输入特征。

3、Sequential创建顺序模型

    模型包含一个输入层、一个输出层、和两个隐藏层,有266,610个参数。

4、编译模型

    compile方法指定损失函数、使用的优化器和其他指标。

5、训练模型

    在训练集上训练模型并传递一个验证集,在每个轮次结束时测量集合上的损失和指标。

6、评估模型

    在测试集上调用evaluate方法评估模型,model.evaluate(X_test, y_test),最终测试结果为88%的准确率。

    [0.32535967230796814, 0.8845000267028809]

7、回调提前停止训练

    early_stopping_cb = keras.callbacks.EarlyStopping(patience=5, restore_best_weights=True)

    在训练模型时添加callbacks=[early_stopping_cb]来没有更多进展时提前中断训练并回调跟踪最佳权重,并在训练结束时还原。

相关文章

网友评论

      本文标题:我的第一个神经网络CNN

      本文链接:https://www.haomeiwen.com/subject/rbgzkrtx.html