使用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制作钉钉加密/解密工具
Dec 07 Python
Python中Django 后台自定义表单控件
Mar 28 Python
Python实现的从右到左字符串替换方法示例
Jul 06 Python
Python字符串对象实现原理详解
Jul 01 Python
python实现人工智能Ai抠图功能
Sep 05 Python
python实现局域网内实时通信代码
Dec 22 Python
Python基于yield遍历多个可迭代对象
Mar 12 Python
Python 实现打印单词的菱形字符图案
Apr 12 Python
tensorflow 20:搭网络,导出模型,运行模型的实例
May 26 Python
Keras之fit_generator与train_on_batch用法
Jun 17 Python
Python如何利用Har文件进行遍历指定字典替换提交的数据详解
Nov 05 Python
详解BeautifulSoup获取特定标签下内容的方法
Dec 07 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
第十三节--对象串行化
2006/11/16 PHP
PHP GD 图像处理组件的常用函数总结
2010/04/28 PHP
使用php shell命令合并图片的代码
2011/06/23 PHP
php页面防重复提交方法总结
2013/11/25 PHP
php打印输出棋盘的实现方法
2014/12/23 PHP
PHP数组去重比较快的实现方式
2016/01/19 PHP
Thinkphp 在api开发中异常返回依然是html的解决方式
2019/10/16 PHP
javascript之通用简单的table选项卡实现(二)
2010/05/09 Javascript
基于jquery完美拖拽,可返回拖动轨迹
2012/03/29 Javascript
jQuery获取选中内容及设置元素属性的方法
2014/07/09 Javascript
jQuery动画与特效详解
2015/02/01 Javascript
JavaScript获得表单target属性的方法
2015/04/02 Javascript
JavaScript核心语法总结(推荐)
2016/06/02 Javascript
Jquery组件easyUi实现手风琴(折叠面板)示例
2016/08/23 Javascript
Bootstrap文件上传组件之bootstrap fileinput
2016/11/25 Javascript
vue awesome swiper异步加载数据出现的bug问题
2018/07/03 Javascript
vue实现商品加减计算总价的实例代码
2018/08/12 Javascript
vue 的点击事件获取当前点击的元素方法
2018/09/15 Javascript
谈谈为什么你的 JavaScript 代码如此冗长
2019/01/30 Javascript
vue中利用simplemde实现markdown编辑器(增加图片上传功能)
2019/04/29 Javascript
Javascript通过控制类名更改样式
2019/05/24 Javascript
js计算最大公约数和最小公倍数代码实例
2019/09/11 Javascript
jquery实现简单拖拽效果
2020/07/20 jQuery
vue中使用router全局守卫实现页面拦截的示例
2020/10/23 Javascript
利用python获得时间的实例说明
2013/03/25 Python
python网络编程之数据传输UDP实例分析
2015/05/20 Python
Python基于pygame实现的font游戏字体(附源码)
2015/11/11 Python
python3利用tcp实现文件夹远程传输
2018/07/28 Python
python实现简单的文字识别
2018/11/27 Python
Python中的 sort 和 sorted的用法与区别
2019/08/10 Python
HTML5之SVG 2D入门12—SVG DOM及DOM操作介绍
2013/01/30 HTML / CSS
初二学习计划书范文
2014/04/27 职场文书
社区班子对照检查材料
2014/08/27 职场文书
毕业论文致谢信
2015/05/14 职场文书
给朋友的赠语
2015/06/23 职场文书
雄兵连:第三季先行图公开,天使恶魔联合,银河之力的新力量
2021/06/11 国漫