ML/DL中常见的模型文件(.h5、.keras)简介及其使用方法
一、.h5文件
可使用model.save(filepath)函数,将Keras模型和权重保存在一个HDF5文件中,h5文件将包含:
模型的结构,以便重构该模型
模型的权重
训练配置(损失函数,优化器等)
优化器的状态,以便于从上次训练中断的地方开始
(1)、模型的保存和载入
model_path = 'model.h5'
model.save(model_path ) '保存模型'
from keras.models import load_model
model = load_model(model_path ) '载入模型'
model_weights_path = 'model_weights.h5'
model.save_weights(model_weights_path ) '保存模型的权重'
model.load_weights(model_weights_path ) '载入模型的权重'
'如果你需要加载权重到不同的网络结构(有些层一样)中,例如fine-tune或transfer-learning,你可以通过层名字来加载模型'
model.load_weights('model_weights.h5', by_name=True)
1、常见的h5文件下载
resnet50_coco_best_v2.1.0.h5模型文件
下载地址:
https://github.com/fizyr/keras-retinanet/releases
二、.keras文件
1、模型的保存和载入
'保存模型'
path_model = 'Functional_model.keras' # Functional
model2.save(path_model) #保存训练好的Keras模型的权重只需要调用一个函数
del model2 #当不再需要用到这个模型时可以从内存中删除它。
'加载模型'
path_model = 'Functional_model.keras'
from tensorflow.python.keras.models import load_model
model3 = load_model(path_model)
聊天机器人(ChatRobot)的概念我们并不陌生,也许你曾经在百无聊赖之下和Siri打情骂俏过,亦或是闲暇之余与小爱同学谈笑风生,无论如何,我们都得承认,人工智能已经深入了我们的生活。目前市面上提供三方api的机器人不胜枚举:微软小冰、图灵机器人、腾讯闲聊、青云客机器人等等,只要我们想,就随时可以在app端或者web应用上进行接入。但是,这些应用的底层到底如何实现的?在没有网络接入的情况下,我们能不能像美剧[《西部世界》(Westworld)](https://movie.douban.com/subject/2338055/)里面描绘的那样,机器人只需要存储在本地的“心智球”就可以和人类沟