12-2 Minist 手写字体识别-LeNet-5-函数式模型

【基础要点】

  1-加载Minist数据,并变形

  2-数据信息图形化显示

  3-可视化训练过程

  4-可视化预测

  5-误差矩阵显示

【代码实现】

  1-超参数

  2-全部代码

  3-可视化模型结构:

    Keras的utils里面专门有一个plot_model()函数是用来可视化网络结构的,为了保证格式美观,我们在定义模型的时候给每个层都加了一个名字。

  3-可视化训练过程

    1-在model的fit函数中加入TensorBoard的回调函数即可,训练数据就会自动保存在log_dir指定的目录内

    2-打开相同环境下的命令窗口,执行命令 tensorboard –logdir= log_dir (参数保存的目录)

    3-根据命令行的提示,在浏览器内输入网址,例如我的网址为:http://microwin10-1735:6006

    TensorBoard会记录loss及model.metrics里面的值,本例中即acc,loss,val_acc,val_loss四个值,每个epoch更新一次。

    除了这些SCALARS,还会记录网络的GRAPH,直接可视化网络结构,但是相比用原生TensorFlow生成的图而言,相差还是比较大的,比较难看,所以不推荐在Keras中使用TensorBoard查看网络结构。 

【遇到的问题】

1-报错-数据格式不对,解决办法,对数据变形处理

2-损失过大,解决办法,优化方法为sgd

猜你喜欢

转载自www.cnblogs.com/ailex/p/9617534.html