返回顶部
首页 > 资讯 > 后端开发 > Python >caffe的python接口caffemodel参数怎么使用
  • 408
分享到

caffe的python接口caffemodel参数怎么使用

2023-07-02 14:07:54 408人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

本篇内容主要讲解“caffe的python接口caffemodel参数怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“caffe的Python接口caffemodel参数怎么使用”吧!前言

本篇内容主要讲解“caffe的python接口caffemodel参数怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“caffe的Python接口caffemodel参数怎么使用”吧!

前言

如果用公式  y=f(wx+b)

来表示整个运算过程的话,那么w和b就是我们需要训练的东西,w称为权值,在cnn中也可以叫做卷积核(filter),b是偏置项。f是激活函数,有sigmoid、relu等。x就是输入的数据。

数据训练完成后,保存的caffemodel里面,实际上就是各层的w和b值。

我们运行代码:

deploy=root + 'mnist/deploy.prototxt'    #deploy文件caffe_model=root + 'mnist/lenet_iter_9380.caffemodel'   #训练好的 caffemodelnet = caffe.net(net_file,caffe_model,caffe.TEST)   #加载model和network

就把所有的参数和数据都加载到一个net变量里面了,但是net是一个很复杂的object, 想直接显示出来看是不行的。其中:

net.params: 保存各层的参数值(w和b)

net.blobs: 保存各层的数据值

可用命令:

[(k,v[0].data) for k,v in net.params.items()]

查看各层的参数值,其中k表示层的名称,v[0].data就是各层的W值,而v[1].data是各层的b值。注意:并不是所有的层都有参数,只有卷积层和全连接层才有。

也可以不查看具体值,只想看一下shape,可用命令

[(k,v[0].data.shape) for k,v in net.params.items()]

假设我们知道其中第一个卷积层的名字叫'Convolution1', 则我们可以提取这个层的参数:

w1=net.params['Convolution1'][0].datab1=net.params['Convolution1'][1].data

输入这些代码,实际查看一下,对你理解network非常有帮助。

同理,除了查看参数,我们还可以查看数据,但是要注意的是,net里面刚开始是没有数据的,需要运行:

net.forward()

之后才会有数据。我们可以用代码:

[(k,v.data.shape) for k,v in net.blobs.items()]

[(k,v.data) for k,v in net.blobs.items()]

来查看各层的数据。注意和上面查看参数的区别,一个是net.params, 一个是net.blobs.

实际上数据刚输入的时候,我们叫图片数据,卷积之后我们就叫特征了。

如果要抽取第一个全连接层的特征,则可用命令:

fea=net.blobs['InnerProduct1'].data

只要知道某个层的名称,就可以抽取这个层的特征。

推荐大家在spyder中,运行一下上面的所有代码,深入理解模型各层。

最后,总结一个代码:

import caffeimport numpy as nproot='/home/xxx/'   #根目录deploy=root + 'mnist/deploy.prototxt'    #deploy文件caffe_model=root + 'mnist/lenet_iter_9380.caffemodel'   #训练好的 caffemodelnet = caffe.Net(deploy,caffe_model,caffe.TEST)   #加载model和network[(k,v[0].data.shape) for k,v in net.params.items()]  #查看各层参数规模w1=net.params['Convolution1'][0].data  #提取参数wb1=net.params['Convolution1'][1].data  #提取参数bnet.forward()   #运行测试[(k,v.data.shape) for k,v in net.blobs.items()]  #查看各层数据规模fea=net.blobs['InnerProduct1'].data   #提取某层数据(特征)

到此,相信大家对“caffe的python接口caffemodel参数怎么使用”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: caffe的python接口caffemodel参数怎么使用

本文链接: https://lsjlt.com/news/342287.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • caffe的python接口caffemodel参数怎么使用
    本篇内容主要讲解“caffe的python接口caffemodel参数怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“caffe的python接口caffemodel参数怎么使用”吧!前言...
    99+
    2023-07-02
  • caffe的python接口caffemodel参数及特征抽取示例
    正文 如果用公式  y=f(wx+b) 来表示整个运算过程的话,那么w和b就是我们需要训练的东西,w称为权值,在cnn中也可以叫做卷积核(filter),b是偏置项。f是激...
    99+
    2024-04-02
  • caffe的python接口deploy生成caffemodel分类新的图片
    目录caffe的python接口生成deploy文件训练好的模型caffemodel分类新图片caffe的python接口生成deploy文件 如果要把训练好的模型拿来测试新的图片,...
    99+
    2024-04-02
  • caffe的python接口之手写数字识别mnist实例
    目录引言一、数据准备二、导入caffe库,并设定文件路径二、生成配置文件三、生成参数文件solver四、开始训练模型五、完成的python文件引言 深度学习的第一个实例一般都是mni...
    99+
    2024-04-02
  • python的函数参数怎么使用
    本篇内容主要讲解“python的函数参数怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python的函数参数怎么使用”吧!位置参数这是一个求等差数列和的函数,使用必需要传入一个参数n,这...
    99+
    2023-06-22
  • Python数据库编程接口怎么使用
    今天小编给大家分享一下Python数据库编程接口怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、前言在项目开发中,...
    99+
    2023-07-02
  • python sorted()函数的参数怎么使用
    这篇文章主要介绍“python sorted()函数的参数怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python sorted()函数的参数怎么使用”文章能帮助大家解决问题。概念对可迭代...
    99+
    2023-06-30
  • python+pytest接口自动化参数关联怎么实现
    这篇文章主要介绍了python+pytest接口自动化参数关联怎么实现的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python+pytest接口自动化参数关联怎么实现文章都会有所收获,下面我们一起来看看吧。一...
    99+
    2023-07-02
  • pytest接口测试之fixture传参数request的使用
    目录前言 一、函数传参 request参数 request传两个参数 前言 有的测试用例,需要依赖于某些特定的case才可以执行,比如登录获取到token,后面的请求都需要带着,为...
    99+
    2024-04-02
  • Python中OrderByDesc参数怎么使用
    在Python中,OrderByDesc参数通常用于对列表或元组等可迭代对象进行倒序排序。使用OrderByDesc参数时,需要先将...
    99+
    2023-09-21
    Python
  • 怎么使用python缺省参数
    本篇内容主要讲解“怎么使用python缺省参数”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用python缺省参数”吧!说明缺省参数的定义位置,要保证带有默认值的缺省参数在参数列表末尾。调...
    99+
    2023-06-25
  • C#使用Post调用接口并传递json参数
    目录Post调用接口并传递json参数Post请求参数(发送Json参数、发送普通参数)1.发送Json格式的Post请求2.带参数的Post请求Post调用接口并传递json参数 ...
    99+
    2024-04-02
  • 使用Golang接口类型实现参数的多态化
    使用 go 语言接口类型可以实现参数多态化,使函数或方法可以接受实现相同接口的不同类型参数,如示例中计算不同形状面积的函数 calculatearea。在实际应用中,接口类型可增强函数灵...
    99+
    2024-04-13
    golang
  • SpringBoot接口怎么对参数进行校验
    今天小编给大家分享一下SpringBoot接口怎么对参数进行校验的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。什么是不优雅的...
    99+
    2023-07-02
  • 怎么在Python中利用map接收参数
    本篇文章为大家展示了怎么在Python中利用map接收参数,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。python的五大特点是什么python的五大特点:1.简单易学,开发程序时,专注的是解决问题...
    99+
    2023-06-14
  • python参数默认值怎么使用
    这篇文章主要介绍“python参数默认值怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python参数默认值怎么使用”文章能帮助大家解决问题。说明参数默认值,即为参数设置默认值,然后在调用函...
    99+
    2023-06-30
  • 怎么在python中使用带参数的__init__
    这期内容当中小编将会给大家带来有关怎么在python中使用带参数的__init__,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Python的优点有哪些1、简单易用,与C/C++、Java、C# 等传统语...
    99+
    2023-06-14
  • python中的mock接口怎么用
    这篇文章将为大家详细讲解有关python中的mock接口怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。什么是mockmock在翻译过来有模拟的意思。它允许您用模拟对象替换您的系统的部分,并对它们已使...
    99+
    2023-06-29
  • 如何在Jersey中使用Restful接口获取参数
    如何在Jersey中使用Restful接口获取参数?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1.@PathParam使用该注释获取参数时可以获取URI中制定规则的参数例如:...
    99+
    2023-06-15
  • python怎么调用接口获取数据
    要调用接口获取数据,可以使用Python中的requests库。下面是一个简单的示例:```pythonimport request...
    99+
    2023-08-30
    python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作