caffecaffe版mobilenet实操(代码片段)

Taily老段 Taily老段     2022-12-12     473

关键词:

github代码:https://github.com/shicai/MobileNet-Caffe

有Mobilenet-V1,Mobilenet-V2的prototxt和caffemodel;

Evaluate MobileNet v1:

python eval_image.py --proto mobilenet_deploy.prototxt --model mobilenet.caffemodel --image ./cat.jpg

Expected Outputs:

0.42 - 'n02123159 tiger cat'
0.08 - 'n02119022 red fox, Vulpes vulpes'
0.07 - 'n02119789 kit fox, Vulpes macrotis'
0.06 - 'n02113023 Pembroke, Pembroke Welsh corgi'
0.06 - 'n02123045 tabby, tabby cat'

Evaluate MobileNet v2:

python eval_image.py --proto mobilenet_v2_deploy.prototxt --model mobilenet_v2.caffemodel --image ./cat.jpg

Expected Outputs:

0.26 - 'n02123159 tiger cat'
0.22 - 'n02124075 Egyptian cat'
0.15 - 'n02123045 tabby, tabby cat'
0.04 - 'n02119022 red fox, Vulpes vulpes'
0.02 - 'n02326432 hare'


Finetuning on your own data(在自己的数据集上进行微调)

Modify deploy.prototxt and save it as your train.prototxt as follows: Remove the first 5 input/input_dim lines, and add Image Data layer in the beginning like this:

layer 
  name: "data"
  type: "ImageData"
  top: "data"
  top: "label"
  include 
    phase: TRAIN
  
  transform_param 
    scale: 0.017
    mirror: true
    crop_size: 224
    mean_value: [103.94, 116.78, 123.68]
  
  image_data_param 
    source: "your_list_train_txt"
    batch_size: 32 # your batch size
    new_height: 256
    new_width: 256
    root_folder: "your_path_to_training_data_folder"
  

Remove the last prob layer, and add Loss and Accuracy layers in the end like this:

layer 
  name: "loss"
  type: "SoftmaxWithLoss"
  bottom: "fc7"
  bottom: "label"
  top: "loss"

layer 
  name: "top1/acc"
  type: "Accuracy"
  bottom: "fc7"
  bottom: "label"
  top: "top1/acc"
  include 
    phase: TEST
  

layer 
  name: "top5/acc"
  type: "Accuracy"
  bottom: "fc7"
  bottom: "label"
  top: "top5/acc"
  include 
    phase: TEST
  
  accuracy_param 
    top_k: 5
  

 

caffecaffe可视化训练过程实操

http://ethereon.github.io/netscope/#/editor这个可以可视化caffemodel模型使用lenet网络做训练,将两个loss曲线一个accuracy曲线画在一个图上#!/usr/bin/python#coding:utf-8importosimportsysimportnumpyasnpimportmatplotlib.pyplotaspltc 查看详情

caffecaffe可视化训练过程实操

http://ethereon.github.io/netscope/#/editor这个可以可视化caffemodel模型使用lenet网络做训练,将两个loss曲线一个accuracy曲线画在一个图上#!/usr/bin/python#coding:utf-8importosimportsysimportnumpyasnpimportmatplotlib.pyplotaspltcaffe_root='/usr/local/Cellar/c... 查看详情

mobilenet原理+手写python代码实现mobilenet(代码片段)

...说看,【点这里可以去膜拜一下大神的“小说”】。MobileNet是针对移动端优化的卷积,所以当需要压缩模型时,可以考虑 查看详情

基于paddlepaddle实现mobilenet_v2复现(代码片段)

基于paddlepaddle实现Mobilenet_v1复现基于paddlepaddle实现Mobilenet_v3复现文章目录一、介绍二、Bottleneckresidualblock结构三、整体网络架构四、论文复现1、导入相关库2、建立基础的代码运行块3、建立Bottleneck_residual_block4、搭建整体的网络... 查看详情

基于paddlepaddle实现mobilenet_v3复现(代码片段)

基于paddlepaddle实现MobileNets_v1复现基于paddlepaddle实现Mobilenet_v2复现文章目录一、介绍二、整体网络架构三、论文复现1、导入工具包2、建立基础的代码运行块3、建立无SE的结构4、建立有SE的结构5、建立分类头6、搭建MobileNetV3_Large... 查看详情

cv学习笔记-mobilenet(代码片段)

MobileNet文章目录MobileNet1.MobileNet概述2.深度可分离卷积(depthwiseseparableconvolution)2.1深度可分离卷积通俗理解2.2深度可分离卷积对于参数的优化3.MobileNet网络结构4.代码实现4.1卷积块4.2深度可分离卷积块4.3MobileNet定义4.4完整... 查看详情

垃圾分类数据集+垃圾分类识别训练代码(支持googlenet,resnet,inception_v3,mobilenet_v2)(代码片段)

...集+垃圾分类识别训练代码(支持googlenet,resnet,inception_v3,mobilenet_v2)目录垃圾分类数据集+垃圾分类识别训练代码(支持googlenet,resnet,inception_v3,mobilenet_v2)1.前言2.垃圾数据集说明(1)垃圾数据集dataset1(2)垃圾 查看详情

实操记录之-----antdesignofvue增强版动态合并单元格,自动根据数据进行合并,可自定义横纵向合并(代码片段)

前几天搞了个简易版的动态合并单元格但是需求有变化,就只能稍微改改了~~欢迎路过的各位大佬指出我代码的问题~~~~另:代码执行效率不是很高,如果需要大量渲染更多数据建议可以直接使用原生<template><page-view:title="ti... 查看详情

caffecaffe在linux环境下的安装与编译

  网上的caffe的安装教程繁杂而散乱,对初学者很不友好,尤其对该框架理解不深的童鞋。总的来说,caffe的安装不外乎几个固定的步骤,对每一步有了一定的理解,安装只是time-consuming的问题!关键是自己要理解每一步是做什... 查看详情

基于paddlepaddle实现mobilenet_v2复现(代码片段)

基于paddlepaddle实现Mobilenet_v1复现基于paddlepaddle实现Mobilenet_v3复现文章目录一、介绍二、Bottleneckresidualblock结构三、整体网络架构四、论文复现1、导入相关库2、建立基础的代码运行块3、建立Bottleneck_residual_block4、搭建整体的网络... 查看详情

java核心实操:内存溢出实战内存泄漏实战(代码片段)

文章很长,而且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录博客园版为您奉上珍贵的学习资源:免费赠送:《尼恩Java面试宝典》持续更新+史上最全+面试必备2000页+面试必备+大厂必备+... 查看详情

水果数据集(fruit-dataset)+水果分类识别训练代码(支持googlenet,resnet,inception_v3,mobilenet_v2)(代码片段)

水果数据集(Fruit-Dataset)+水果分类识别训练代码(支持googlenet,resnet,inception_v3,mobilenet_v2)目录Fruit-Dataset水果数据集+水果分类识别训练代码(支持googlenet,resnet,inception_v3,mobilenet_v2)1.前言2.Fruit-Dataset水果数据集(1ÿ 查看详情

水果数据集(fruit-dataset)+水果分类识别训练代码(支持googlenet,resnet,inception_v3,mobilenet_v2)(代码片段)

水果数据集(Fruit-Dataset)+水果分类识别训练代码(支持googlenet,resnet,inception_v3,mobilenet_v2)目录Fruit-Dataset水果数据集+水果分类识别训练代码(支持googlenet,resnet,inception_v3,mobilenet_v2)1.前言2.Fruit-Dataset水果数据集(1ÿ 查看详情

fruit-dataset水果数据集+水果分类识别训练代码(支持googlenet,resnet,inception_v3,mobilenet_v2)(代码片段)

Fruit-Dataset水果数据集+水果分类识别训练代码(支持googlenet,resnet,inception_v3,mobilenet_v2)目录Fruit-Dataset水果数据集+水果分类识别训练代码(支持googlenet,resnet,inception_v3,mobilenet_v2)1.前言2.Fruit-Dataset水果数据集(1) 查看详情

基于paddlepaddle实现mobilenets_v1复现(代码片段)

基于paddlepaddle实现Mobilenet_v2复现基于paddlepaddle实现MobileNets_v3复现文章目录一、介绍二、网络特点二、单个block结构三、整体网络结构四、论文复现1、导入相关库2、建立基础的代码运行块3、按照单个block结构建立深度可分离卷积... 查看详情

基于paddlepaddle实现mobilenet_v2复现(代码片段)

...dual_block4、搭建整体的网络结构5、查看网络结构一、介绍Mobilenet_v2继承了Mobilenet_v1的深度可分离结构,引入了Inverted_residual_block结构,相比于Residual_block结构,该结构对特征矩阵先增加层数再减少层数。Residual_block结构... 查看详情

基于paddlepaddle实现mobilenet_v3复现(代码片段)

基于paddlepaddle实现MobileNets_v1复现基于paddlepaddle实现Mobilenet_v2复现文章目录一、介绍二、整体网络架构三、论文复现1、导入工具包2、建立基础的代码运行块3、建立无SE的结构4、建立有SE的结构5、建立分类头6、搭建MobileNetV3_Large... 查看详情

基于paddlepaddle实现mobilenet_v3复现(代码片段)

基于paddlepaddle实现MobileNets_v1复现基于paddlepaddle实现Mobilenet_v2复现文章目录一、介绍二、整体网络架构三、论文复现1、导入工具包2、建立基础的代码运行块3、建立无SE的结构4、建立有SE的结构5、建立分类头6、搭建MobileNetV3_Large... 查看详情