第2章 2.6 模型的保存与加载_第1页
第2章 2.6 模型的保存与加载_第2页
第2章 2.6 模型的保存与加载_第3页
第2章 2.6 模型的保存与加载_第4页
第2章 2.6 模型的保存与加载_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

模型的保存与加载模型的保存与加载Keras提供了如下几种模型的保存与加载的方法。(1)使用model.save(filepath)将模型保存到单个HDF5文件中。该文件将包含:模型的结构,允许重新创建模型;模型的权重;训练配置项(损失函数、优化器);优化器状态,允许准确地从上次结束的地方继续训练。保存好模型之后,可以用model=load_model(filepath)载入程序所在目录下名为filepath的路径中所保存的模型,其中load_model是keras.models下的一个函数。(2)使用json_string=model.to_json()或yaml_string=model.to_yaml(),返回模型结构的JSON格式或YAML格式的字符串,而非其权重或训练配置项。使用model_from_json(json_string)或model_from_yaml(yaml_string)函数即可恢复模型的结构,其中model_from_json和model_from_yaml是keras.models下的函数。(3)使用model.save_weights(filepath),只保存模型的权重。model.load_weights(filepath)可以恢复所保存的权重,但是需要模型的定义代码。如果需要将权重加载到不同结构(有一些共同名字的层)的模型中,例如微调或迁移学习,则可以按层的名字来加载权重model.load_weights(filepath,by_name=True)。实训1利用Keras进行数据加载与增强(1)掌握Keras图像数据加载的方法(2)掌握Keras图像数据增强的方法1.训练要点2.需求说明cifar10数据集一共包含10个类别的RGB彩色图片:飞机(airplane)、汽车(automobile)、鸟类(bird)、猫(cat)、鹿(deer)、狗(dog)、蛙类(frog)、马(horse)、船(ship)和卡车(truck)。图片的尺寸为32×32,一共有50000张训练图片和10000张测试图片。设cifar10的训练数据分别存在10个文件夹(不能直接使用keras.datasets.cifar10读取),每个文件夹的图像来自同一类别。用Keras的ImageDataGenerator类从硬盘的文件夹中分批读取图像数据进行训练,并且设置合适的参数进行实时数据增强,对比无增强时的实验结果。训练数据文件夹结构如右图,验证数据的存储方式类似。实训1利用Keras进行数据加载与增强(1)利用模块keras.preprocessing.image.ImageDataGenerator,传入合适的数据增强的参数来实例化一个Image

DataGenerator对象。(2)利用该对象的flow_from_directory函数,传入训练图像数据所在的路径,实时读取数据。(3)构造一个简单的全连接神经网络,并设置好优化器和损失函数。(4)把flow_from_directory函数返回的对象传入fit函数中,训练神经网络。3.实现思路及步骤实训2利用Keras构建网络并训练(1)掌握Keras构建网络的方法(2)掌握Keras进行训练的方法1.训练要点2.需求说明对cifar10数据集(可以直接使用keras.datasets.cifar10读取),做如下实验。(1)构建合适的全连接网络结构进行分类,并定义一个自定义的全连接层加入网络中。(2)使用不同的激活函数,比如ReLU、Sigmoid、Softmax,并对比结果。(3)分别选择SGD、Adam、RMSprop等优化器求解模型,设置合适的参数。并使用学习率时间表来调整优化器的学习率。(4)对比使用各种损失函数的结果:分类交叉熵损失、稀疏分类交叉熵损失、均方误差损失、KL散度损失等实训2利用Keras构建网络并训练2.需求说明(5)利用回调,设置ModelCheckpoint,把训练过程中对验证集分类精度最高的模型保存为.h5文件。另写一个.py文件,不用重新训练模型,直接读取.h5文件和测试数据计算分类精度。(6)利用回调,记录TensorBoard日志,并且在浏览器中可视化训练过程。3.实现思路及步骤(1)参考2.3.2小节实现自定义的全连接层。(2)参考2.3.2小节选择使用不同的激活函数。(3)参考2.4.1小节选择使用不同的优化器。(4)参考2.4.2小节选择使用不同的损失函数。(5)参考2.5.2小节设置回调检查。(6)参考2.5.2小节设置TensorBoard日志并实现可视化。小结本章介绍了Keras深度学习通用流程,包括利用Keras进行数据加载与预处理,利用Kera

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论