文档章节

Caffe 网络结构可视化

JungleKing
 JungleKing
发布于 2017/04/21 22:38
字数 584
阅读 256
收藏 0

可以利用python接口实现网络结构的可视化,便于直观理解。

最近安装了tensorflow,发现caffe的draw_net脚本不好用了(AttributeError: ‘google.protobuf.pyext._message.RepeatedScalarConta’ object has no attribute ‘_values’),原因是二者的protobuf版本不兼容。caffe不支持高于3.0.0版本的protobuf.

解决方法: 
卸载当前protobuf。(pip uninstall protobuf) 
再指定安装低版本的,这里用的是2.5.0(pip install protobuf==2.5.0) 
可以用virtualenv创建独立的Python环境

在线网页绘制caffe网络结构图的方法,其实更简洁方便: 
http://ethereon.github.io/netscope/#/editor

注:主要参考《21天实战caffe》

1.准备Python环境

1.1安装Python

sudo apt-get update
sudo apt-get install python-dev
  • 1
  • 2

1.2安装Python包管理器:pip 
这里建议通过源码安装,如果通过命令 sudo apt-get install python-pip 安装,可能会出现类似下面的错误,主要原因是上述方式安装的pip版本较老。

Exception:
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 122, in main
    status = self.run(options, args)
  File "/usr/lib/python2.7/dist-packages/pip/commands/install.py", line 278, in run
    requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
  File "/usr/lib/python2.7/dist-packages/pip/req.py", line 1260, in prepare_files
    )[0]
IndexError: list index out of range
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

源码安装pip方式如下(参考:http://www.cnblogs.com/ajianbeyourself/p/4214398.html):

wget https://bootstrap.pypa.io/get-pip.py  --no-check-certificate
sudo python get-pip.py
  • 1
  • 2

或者直接更新pip:

pip install -U pip
  • 1

1.3通过pip安装依赖包 
这里caffe已经列出了依赖包及版本号,在caffe源码根目录下的 /python/requirement.txt 中: 
Cython>=0.19.2 
numpy>=1.7.1 
scipy>=0.13.2 
scikit-image>=0.9.3 
matplotlib>=1.3.1 
ipython>=3.0.0 
h5py>=2.2.0 
leveldb>=0.191 
networkx>=1.8.1 
nose>=1.3.0 
pandas>=0.12.0 
python-dateutil>=1.4,<2 
protobuf>=2.5.0 
python-gflags>=2.0 
pyyaml>=3.10 
Pillow>=2.3.0 
six>=1.1.0

sudo apt-get install python-numpy #之前以为和下面pip安装的重复了,但是不安装编译时会报numpy的错误。
sudo pip install -r ${CAFFE_ROOT}/python/requirement.txt
  • 1
  • 2

2.编译 pycaffe

cd ${CAFFE_ROOT}
make clean
make
make pycaffe
  • 1
  • 2
  • 3
  • 4

3.绘制网络结构图

cd ${CAFFE_ROOT}
python ./python/draw_net.py ./models/bvlc_reference_caffenet/train_val.prototxt ~/Desktop/caffenet.png
  • 1
  • 2
  • 3

这里写图片描述

4.“dot” not found in path 的问题

2016.12.01添加:

先安装graphviz否则会出现类似:“dot” not found in path 的问题 
安装graphviz不要用pip install安装,否则还是会找不到可执行程序 
安装:sudo apt-get insall graphviz 
然后安装pydot:pip install pydot 
其中pyparsing会自动安装

摘自:pydot 安装 用于caffe画图

本文转载自:http://blog.csdn.net/u012938704/article/details/52585868

JungleKing
粉丝 4
博文 102
码字总数 9821
作品 0
天津
程序员
私信 提问
caffe网络可视化的多种方式

版权声明:本文为博主 一銤阳光 学习整理的文章,如需转载,请注明出处、附上CSDN博文链接。 https://blog.csdn.net/CSDNhuaong/article/details/83689622 文章目录 写在前面 在caffe网络的训...

一銤阳光
2018/11/03
0
0
Caffe--神经网络模型结构可视化

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lwplwf/article/details/82418342 1、Netscope–支持Caffe的神经网络结构在线可视化工具 Netscope是个支持pro...

零尾
2018/09/05
0
0
[Notes]深度学习——caffe工具使用

本篇文章是我利用 caffe进行深度学习的知识点总结,包含别人学习笔记链接 caffe简介 caffe的作者为UC Berkeley大学的贾扬清。caffe是一个c++/CUDA架构,支持命令行、Python、Matlab接口,可以...

nanbei2463776506
2018/04/24
0
0
深度学习 21天实战Caffe

帮助 链接:http://pan.baidu.com/s/1hsnIPfe 密码:xjpg 内容简介 · · · · · · 《深度学习:21天实战Caffe》是一本深度学习入门读物。以目前已经大量用于线上系统的深度学习框架Caffe...

x1kz18nkbqg
2017/11/22
0
0
能在不同的深度学习框架之间转换模型?微软的MMdnn做到了

Microsoft/MMdnn:深度学习框架随心切换 学习深度学习的各位同学都希望自己的模型能在不同的深度学习框架之间随意转换,比如,斯坦福大学CVGL实验室的Saumitro Dasgupta就做过一个把Caffe模型...

dqcfkyqdxym3f8rb0
2018/01/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

golang-字符串-地址分析

demo package mainimport "fmt"func main() {str := "map.baidu.com"fmt.Println(&str, str)str = str[0:5]fmt.Println(&str, str)str = "abc"fmt.Println(&s......

李琼涛
今天
4
0
Spring Boot WebFlux 增删改查完整实战 demo

03:WebFlux Web CRUD 实践 前言 上一篇基于功能性端点去创建一个简单服务,实现了 Hello 。这一篇用 Spring Boot WebFlux 的注解控制层技术创建一个 CRUD WebFlux 应用,让开发更方便。这里...

泥瓦匠BYSocket
今天
6
0
从0开始学FreeRTOS-(列表与列表项)-3

FreeRTOS列表&列表项的源码解读 第一次看列表与列表项的时候,感觉很像是链表,虽然我自己的链表也不太会,但是就是感觉很像。 在FreeRTOS中,列表与列表项使用得非常多,是FreeRTOS的一个数...

杰杰1号
今天
8
0
Java反射

Java 反射 反射是框架设计的灵魂(使用的前提条件:必须先得到代表的字节码的 Class,Class 类 用于表示.class 文件(字节码)) 一、反射的概述 定义:JAVA 反射机制是在运行状态中,对于任...

zzz1122334
今天
6
0
聊聊nacos的LocalConfigInfoProcessor

序 本文主要研究一下nacos的LocalConfigInfoProcessor LocalConfigInfoProcessor nacos-1.1.3/client/src/main/java/com/alibaba/nacos/client/config/impl/LocalConfigInfoProcessor.java p......

go4it
昨天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部