使用Keras预训练好的模型进行目标类别预测详解


Posted in Python onJune 27, 2020

前言

最近开始学习深度学习相关的内容,各种书籍、教程下来到目前也有了一些基本的理解。参考Keras的官方文档自己做一个使用application的小例子,能够对图片进行识别,并给出可能性最大的分类。

闲言少叙,开始写代码

环境搭建相关就此省去,网上非常多。我觉得没啥难度

from keras.applications.resnet50 import ResNet50
from keras.preprocessing import image
from keras.applications.resnet50 import preprocess_input, decode_predictions
import numpy as np

导入权重,首次会从网络进行下载,不过速度还是挺快的,使用ImageNet的数据集

model = ResNet50(weights='imagenet')

定义一个函数读取图片文件并处理。这里需要安装PLI的库。 pip install Pillow ,不然会报错

def load_image(img_path):
  img = image.load_img(img_path, target_size=(224, 224))
  x = image.img_to_array(img)
  x = np.expand_dims(x, axis=0)
  x = preprocess_input(x)
  return x

加载一个图片文件,默认在当前路径寻找

x=load_image('zebra.jpg')

哈哈,开始预测了!激动人心啊

preds = model.predict(x)

执行速度很快,现在看看结果

print('Predicted:', decode_predictions(preds, top=3)[0])

Predicted: [(‘n02391049', ‘zebra', 0.99566585), (‘n02423022', ‘gazelle', 0.0010297714), (‘n01518878', ‘ostrich', 0.00067320856)]

准确率还是不错,后续还测试了一些飞机之类的图片,总体来讲马马虎虎!

是不是非常简单,确实很简单!

补充知识:模型训练loss先迅速下降后一直上升

loss函数走势如下:

使用Keras预训练好的模型进行目标类别预测详解

检查代码没什么问题,分析应该是陷入了局部最优,把学习率调低一点就好了,从0.01调到了0.001

以上这篇使用Keras预训练好的模型进行目标类别预测详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
基于wxpython实现的windows GUI程序实例
May 30 Python
python实用代码片段收集贴
Jun 03 Python
python 内置模块详解
Jan 01 Python
浅谈Python大神都是这样处理XML文件的
May 31 Python
django 捕获异常和日志系统过程详解
Jul 18 Python
python cumsum函数的具体使用
Jul 29 Python
Python 随机生成测试数据的模块:faker基本使用方法详解
Apr 09 Python
django 实现后台从富文本提取纯文本
Jul 02 Python
python实现将中文日期转换为数字日期
Jul 14 Python
Python常驻任务实现接收外界参数代码解析
Jul 21 Python
Python3使用tesserocr识别字母数字验证码的实现
Jan 29 Python
聊一聊python常用的编程模块
May 14 Python
浅谈keras 模型用于预测时的注意事项
Jun 27 #Python
python suds访问webservice服务实现
Jun 26 #Python
解析Python 偏函数用法全方位实现
Jun 26 #Python
Python如何优雅删除字符列表空字符及None元素
Jun 25 #Python
使用pytorch实现论文中的unet网络
Jun 24 #Python
python连接mysql有哪些方法
Jun 24 #Python
pytorch VGG11识别cifar10数据集(训练+预测单张输入图片操作)
Jun 24 #Python
You might like
PHP伪静态写法附代码
2008/06/20 PHP
ThinkPHP实现将本地文件打包成zip下载
2014/06/26 PHP
PC端微信扫码支付成功之后自动跳转php版代码
2017/07/07 PHP
Jquery 绑定时间实现代码
2011/05/03 Javascript
JQuery判断子iframe何时加载完成解决方案
2013/08/20 Javascript
javascript框架设计读书笔记之种子模块
2014/12/02 Javascript
javascript事件模型实例分析
2015/01/30 Javascript
JS+CSS实现可拖拽的漂亮圆角特效弹出层完整实例
2015/02/13 Javascript
EasyUI中实现form表单提交的示例分享
2015/03/01 Javascript
纯js实现无限空间大小的本地存储
2015/06/18 Javascript
html+js+highcharts绘制圆饼图表的简单实例
2016/08/04 Javascript
ASP.NET jquery ajax传递参数的实例
2016/11/02 Javascript
javascript使用递归算法求两个数字组合功能示例
2017/01/03 Javascript
JS打开摄像头并截图上传示例
2017/02/18 Javascript
react-router中的属性详解
2017/06/01 Javascript
深入理解vue Render函数
2017/07/19 Javascript
详解Vue双向数据绑定原理解析
2017/09/11 Javascript
2019 年编写现代 JavaScript 代码的5个小技巧(小结)
2019/01/15 Javascript
微信小程序制作扭蛋机代码实例
2019/09/24 Javascript
对于Python编程中一些重用与缩减的建议
2015/04/14 Python
python计算时间差的方法
2015/05/20 Python
python Django批量导入不重复数据
2016/03/25 Python
Python用户推荐系统曼哈顿算法实现完整代码
2017/12/01 Python
python取均匀不重复的随机数方式
2019/11/27 Python
python mysql自增字段AUTO_INCREMENT值的修改方式
2020/05/18 Python
python3中calendar返回某一时间点实例讲解
2020/11/18 Python
python+appium+yaml移动端自动化测试框架实现详解
2020/11/24 Python
GAZMAN官网:澳大利亚领先的男装品牌
2019/12/19 全球购物
远程调用的原理
2014/07/05 面试题
入党思想汇报
2014/01/05 职场文书
给领导的检讨书
2014/02/16 职场文书
出纳试用期自我鉴定
2014/04/07 职场文书
小学教师个人先进事迹材料
2014/05/17 职场文书
离婚协议书该怎么写
2014/10/04 职场文书
pytorch 使用半精度模型部署的操作
2021/05/24 Python
vue中利用mqtt服务端实现即时通讯的步骤记录
2021/07/01 Vue.js