使用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通过urllib2爬网页上种子下载示例
Feb 24 Python
Python中用字符串调用函数或方法示例代码
Aug 04 Python
python实现在IDLE中输入多行的方法
Apr 19 Python
详解python中的装饰器
Jul 10 Python
Python 学习教程之networkx
Apr 15 Python
Python实现简单的列表冒泡排序和反转列表操作示例
Jul 10 Python
用OpenCV将视频分解成单帧图片,图片合成视频示例
Dec 10 Python
Python telnet登陆功能实现代码
Apr 16 Python
Python3以GitHub为例来实现模拟登录和爬取的实例讲解
Jul 30 Python
python绘图模块之利用turtle画图
Feb 12 Python
利用Python第三方库实现预测NBA比赛结果
Jun 21 Python
Django+Nginx+uWSGI 定时任务的实现方法
Jan 22 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 中文字符串首字母的获取函数分享
2013/11/04 PHP
简单的php缓存类分享     php缓存机制
2014/01/22 PHP
PHP实现克鲁斯卡尔算法实例解析
2014/08/22 PHP
window.ActiveXObject使用说明
2010/11/08 Javascript
jQuery bxCarousel实现图片滚动切换效果示例代码
2013/05/15 Javascript
js实现的牛顿摆效果
2015/03/31 Javascript
javascript实现画不相交的圆
2015/04/07 Javascript
JavaScript html5 canvas绘制时钟效果
2016/03/01 Javascript
AngularJS中一般函数参数传递用法分析
2016/11/22 Javascript
javascript history对象详解
2017/02/09 Javascript
分享十三个最佳JavaScript数据网格库
2017/04/07 Javascript
JS 组件系列之 bootstrap treegrid 组件封装过程
2017/04/28 Javascript
使用node.js搭建服务器
2017/05/20 Javascript
vue项目中的webpack-dev-sever配置方法
2017/12/14 Javascript
Node.js的Koa实现JWT用户认证方法
2018/05/05 Javascript
vue element项目引入icon图标的方法
2018/06/06 Javascript
Web安全之XSS攻击与防御小结
2018/12/13 Javascript
vue elementui tree 任意级别拖拽功能代码
2020/08/31 Javascript
利用python模拟实现POST请求提交图片的方法
2017/07/25 Python
Python编写一个优美的下载器
2018/04/15 Python
解决DataFrame排序sort的问题
2018/06/07 Python
Python BS4库的安装与使用详解
2018/08/08 Python
解决python3捕获cx_oracle抛出的异常错误问题
2018/10/18 Python
Python使用pandas和xlsxwriter读写xlsx文件的方法示例
2019/04/09 Python
使用python打印十行杨辉三角过程详解
2019/07/10 Python
Python map及filter函数使用方法解析
2020/08/06 Python
Django实现文章详情页面跳转代码实例
2020/09/16 Python
HTML5 3D衣服摇摆动画特效
2016/03/17 HTML / CSS
国外平面设计第一市场:99designs
2016/10/25 全球购物
SHEIN美国:购买时髦的女性服装
2020/12/02 全球购物
波兰运动鞋网上商店:Distance.pl
2020/07/30 全球购物
个人党性分析材料
2014/12/19 职场文书
幼儿园中班教师个人总结
2015/02/05 职场文书
未婚证明格式
2015/06/15 职场文书
Mysql 如何批量插入数据
2021/04/06 MySQL
解决vue $http的get和post请求跨域问题
2021/06/07 Vue.js