使用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 相关文章推荐
Python编写检测数据库SA用户的方法
Jul 11 Python
Python删除空文件和空文件夹的方法
Jul 14 Python
python中函数默认值使用注意点详解
Jun 01 Python
Python初学时购物车程序练习实例(推荐)
Aug 08 Python
python TCP Socket的粘包和分包的处理详解
Feb 09 Python
PyQt5每天必学之带有标签的复选框
Apr 19 Python
mvc框架打造笔记之wsgi协议的优缺点以及接口实现
Aug 01 Python
python根据txt文本批量创建文件夹
Dec 08 Python
基于python实现雪花算法过程详解
Nov 16 Python
解决Django no such table: django_session的问题
Apr 07 Python
VSCode中autopep8无法运行问题解决方案(提示Error: Command failed,usage)
Mar 02 Python
python图像处理 PIL Image操作实例
Apr 09 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
一个显示某段时间内每个月的方法 返回由这些月份组成的数组
2012/05/16 PHP
PHP与Java进行通信的实现方法
2013/10/21 PHP
PHP缓存集成库phpFastCache用法
2014/12/15 PHP
各种常用浏览器getBoundingClientRect的解析
2009/05/21 Javascript
jquery select(列表)的操作(取值/赋值)
2009/08/06 Javascript
Exjs 入门篇
2010/04/07 Javascript
js对象数组按属性快速排序
2011/01/31 Javascript
jQuery验证插件 Validate详解
2014/11/20 Javascript
jQuery复制表单元素附源码分享效果演示
2015/09/30 Javascript
jquery中object对象循环遍历的方法
2015/12/18 Javascript
JS实现部分HTML固定页面顶部随屏滚动效果
2015/12/24 Javascript
实例讲解jquery与json的结合
2016/01/07 Javascript
关于JS中的方法是否加括号的问题
2016/07/27 Javascript
Javascript中常见的逻辑题和解决方法
2016/09/17 Javascript
JavaScript中的编码和解码函数
2017/02/15 Javascript
详解nodejs中的process进程
2017/03/19 NodeJs
学习jQuery中的noConflict()用法
2018/09/28 jQuery
H5+css3+js搭建带验证码的登录页面
2020/10/11 Javascript
[53:49]LGD vs Fnatic 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
pandas 对每一列数据进行标准化的方法
2018/06/09 Python
Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块用法分析
2019/04/27 Python
python TF-IDF算法实现文本关键词提取
2019/05/29 Python
python3.6使用SMTP协议发送邮件
2020/05/20 Python
Python字符串格式化常用手段及注意事项
2020/06/17 Python
Python 利用OpenCV给照片换底色的示例代码
2020/08/03 Python
使用Python画了一棵圣诞树的实例代码
2020/11/27 Python
matplotlib实现数据实时刷新的示例代码
2021/01/05 Python
HTML5拖放效果的实现代码
2016/11/17 HTML / CSS
物业管理员岗位职责范文
2013/11/25 职场文书
幼儿园中班开学寄语
2014/04/03 职场文书
办公室领导干部作风整顿个人整改措施
2014/09/17 职场文书
对照四风自我剖析材料
2014/10/07 职场文书
2014年采购工作总结
2014/11/20 职场文书
还款承诺书范本
2015/01/20 职场文书
2015大学生入党个人自传
2015/06/26 职场文书
JavaScript选择器函数querySelector和querySelectorAll
2021/11/27 Javascript