在Azure Ubunt Server 14.04虚机中使用Deep-Visualization-Toolbox
参考网站
a) https://zhuanlan.zhihu.com/p/24833574?utm_source=tuicool&utm_medium=referral
b) https://github.com/yosinski/deep-visualization-toolbox
c) https://zhuanlan.zhihu.com/p/22129880?refer=startdl
d) http://jingyan.baidu.com/article/8ebacdf0cdc64949f75cd555.html
最近在研究深度学习的各种框架,目前研究到深度学习常用的一些辅助工具,比如说可视化工具,可以得到深度学习模型每一层的可视化结果,便于加深对于深度学习各种网络模型的理解。
目前调研到的可视化工具主要有:
- Netscope ( http://ethereon.github.io/netscope/quickstart.html )支持Caffe结构,用来查看深度网络模型结构
- Deep Visualization Toolbox ( https://github.com/yosinski/deep-visualization-toolbox )可以查看Caffe下训练的深度网络每一次的反卷积的可视化结果
- TensorBoard ( https://www.tensorflow.org/get_started/summaries_and_tensorboard )是支持TensorFlow的可视化工具
今天只关注在Azure的Ubuntu Server 14.04虚拟机中的Deep Visualization Toolbox的安装和使用。
1. 创建Azure Ubuntu Server 14.04虚拟机并实现远程桌面访问
a) 创建Azure虚拟机(Ubuntu Server 14.04)
Azure是微软的公有云平台,其上提供各种强大的功能,今天使用的是Azure上提供的IaaS服务——虚拟机服务。首先需要有一个Azure的订阅,才能使用Azure上面提供的各种各样的资源服务。
i. 登录Azure (https://portal.azure.com)
ii. 在左侧菜单中选择虚拟机服务,点击Ubuntu Server,选择Ubuntu Server 14.04 LTS,选择“创建”

iii. 填写设备参数,包括虚机名称、虚机类型、用户名、密码、选择订阅、资源组以及位置信息,点击“确认”

iv. 选择虚机大小,不同大小的费用不相同(一般会有推荐,也可以点击查看更多,查看所有虚机大小选项)

v. 配置虚拟网络和存储等信息

vi. 选择购买,开始部署虚机,约10分钟
b) 打开远程桌面访问端口
为了保证最高的安全性,微软Azure部署的Linux虚机最初只支持SSH(TCP/22)连接。为了实现远程桌面连接,需要打开RDP(TCP/3389)连接。这里就涉及到网络安全组的概念。网络安全组可以简单理解为一套端口打开或者关闭的组合,控制连接到虚机的端口状态。
下面就来打开RDP连接:
找到部署的虚机(如CaffeVM),点击左侧菜单中的网卡(NIC)菜单,选择列表中的相应的网卡。

在弹出的菜单中选择网络安全组,并选择相对应的网络安全组。

选择“Inbound security rules”,点击添加按钮

添加一个RDP(TCP/3389)连接

最后重启虚机即可。
c) Ubuntu Server 14.04安装图形界面及远程桌面访问(此部分参考文档d)
- 安装xrdp:
命令行模式输入“sudo apt-get install xrdp”
- 安装vnc4server (Virtual Network Computing)
命令行模式输入“sudo apt-get install vnc4server”
- 安装xfce4 (一个轻量级的类Unix的桌面操作系统)
命令行模式输入"sudo apt-get install xubuntu-desktop"-->回车-->输入root用户的密码-->回车-->输入"y"-->回车-->输入"echo "xfce4-session" >~/.xsession"-->回车-->输入"sudo service xrdp restart"-->回车,安装完成。
注意:这样安装之后,使用terminal的时候tab补全的会出现问题,此时可以这样解决:
首先依次打开Application Menu > Settings > Window Manager, 选择“Keyboard”标签页,清除“Switch window for same application”设置即可。
d) 最后查询虚机的public IP (如果没有使用静态IP服务,Azure虚机每次关机后都会释放IP,重启后重新分配public IP),然后远程桌面连接即可(登录用户名和密码是创建虚机的时候设置的)


2. 在虚拟机中安装Caffe和Deep Visualization Toolbox
(此部分参考文档a、b,操作就不重复,只是记录一下操作中遇到的问题以及解决办法)
问题1: Step 2的时候安装scipy的时候报错,提示没有scipy模块。查询之后发现安装python-scipy即可(部署的虚机默认是安装该模块)
问题2: 在编辑settings_local.py的时候,不仅要设置caffevis_caffe_root,而且还要设置caffevis_mode_gpu = False, 否则不使用GPU的话会报错(我们部署的ubuntu虚机不带GPU,Azure上也提供GPU虚机,可参考 http://www.cnblogs.com/ToBeCoder/p/6491864.html)
最终结果:运行成功!!!

这个工具还是挺有意思的,可以看到每层每个神经元的结构和内容,并且可以进行可视化。左上角是输入图片,中间的部分是对图片经过网络(这里是CaffeNet)进行前向传播之后得到feature map的可视化,我们可以通过上下左右控制光标移动,按'h'键可以查看按键的功能,我们尝试移动一下光标,看一下conv5的第151个feature map, 左边的中间区域是feature map的放大版本,右侧上方的九张图片是参数化的可视化方法(gradient ascent),这里暂且不提,右侧中间区域就是使用在上面提到的方法,得到的这个feature map的前9张响应图片块,下方是对这几张图片进行反卷积的结果。
基本的按键:
e 切换下一张
w 切换上一张
b 对某一个feature map进行反卷积
o 光标不变,切换下一层
u 光标不变,切换上一层
h 打开帮助菜单
在Azure Ubunt Server 14.04虚机中使用Deep-Visualization-Toolbox的更多相关文章
- Ubuntu Server 14.04在VMware安装的一些事儿
这几天一直在折腾Ubuntu Server 14.04,故记录下: 安装前的准备: 1.建议安装英文版,像15.04.16.04等安装中文版时存在bug,而且中文版字体显示也有问题. 2.Ubuntu ...
- Ubuntu Server 14.04 集成
方便工作出差显示项目整合了下平时常用软件: OS: Ubuntu Server 14.04 VM:VMware Workstation 12.1.0 (不同版本好像会不兼容) 已经安装软件: 1. s ...
- Ubuntu Server 14.04升级Ubuntu Server 16.04
Ubuntu Server 14.04升级Ubuntu Server 16.04 :转 http://blog.csdn.net/chszs 1.终端下执行命令 $ sudo apt-get upda ...
- U盘安装ubuntu server 14.04
U盘安装ubuntu server 14.04 U盘安装ubuntu server 14.04 1.制作启动u盘 2.开始安装 1 将u盘插入主机,重启后从u盘启动 2 选择语言(随便挑,随便选),我 ...
- u盘安装ubuntu server 14.04 以及No CD-ROM drive was detected 错误
u盘安装ubuntu server 14.04 1:下载ubuntu server14的 iso镜像文件 2:下载 UltraISO U盘镜像制作工具 : 3:使用Ultra iOS 将下载好的 is ...
- Ubuntu Server 14.04 下root无法ssh登陆
今天安装了Ubuntu Server 14.04 在终端配置了root密码后,使用SecureCRT和putty竟然不能ssh登陆,SecureCRT一直提示密码不对,但是可以肯定输入的密码100 ...
- Ubuntu server 14.04 交叉编译Unicorn-engine
Ubuntu server 14.04 交叉编译Unicorn-engine 编译的过程基本上按照的是unicorn/COMPILE-WINDOWS.md描述的进行编译的,不过还是改了一些地方.在Ub ...
- Ubuntu Server 14.04 LTS(64bit)已安装 weblogic Server 12c(12.1.3) Zip Distribution
这里说的对Ubuntu Server 14.04 LTS(64bit)已安装weblogic Server 12c(12.1.3) Zip Distribution遇到的问题.至于Windows什么好 ...
- Ubuntu Server 14.04 & Apache2.4 虚拟主机、模块重写、隐藏入口文件配置
环境: Ubuntu Server 14.04 , Apache2.4 一.Apache2.4 虚拟主机配置 01. 新建一份配置文件 在apache2.4中,虚拟主机的目录是通过/etc/apach ...
随机推荐
- CSS实现自适应不同大小屏幕的背景大图的两种方法(转自简书)
CSS实现自适应不同大小屏幕的背景大图的两种方法 一张清晰漂亮的背景图片能给网页加分不少,设计师也经常会给页面的背景使用大图,我们既不想图片因为不同分辨率图片变形,也不希望当在大屏的情况下,背景有一块 ...
- 前端自动化测试工具--使用karma进行javascript单元测试(转)
Karma+Jasmine+PhantomJS组合的前端javascript单元测试工具. 1.介绍 Karma是由Google团队开发的一套前端测试运行框架,karma会启动一个web服务器,将js ...
- how to read openstack code : routes
When coding a web system, you have to think about an important problem, how to map urls to logic. Op ...
- base64加解密字符串
import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOExceptio ...
- 附录A 思科互联网络操作系统(IOS)
思科互联网络操作系统(IOS) 要点 实现IP编址方案和IP服务,以满足中型企业分支机构网络的网络需求 口在路由器上配置和验证 DHCP和DNS 以及排除其故障(包括 CLI/SDM ). 口配置和验 ...
- Linux 中浏览网页的命令行
Linux系统环境的WEB网站浏览器工具,常用的有w3m.Links.Lynx三个工具 第一.w3m w3m文本浏览器是基于GPL协议发布的且支持表格.颜色.SSL连接以及内链图像,因速度快而著称. ...
- Java总结之网络
[网络基础概念] 什么是计算机网络: 把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规模大.功能强的网络系统,从而使众多的计算机能够方便的互相传递信息,共享硬件.软件.数据信息等资源 ...
- 【树形dp小练】HDU1520 HDU2196 HDU1561 HDU3534
[树形dp]就是在树上做的一些dp之类的递推,由于一般须要递归处理.因此平庸情况的处理可能须要理清思路.昨晚開始切了4题,作为入门训练.题目都很easy.可是似乎做起来都还口以- hdu1520 An ...
- SpringMVC DispatcherServlet初始化过程
先来上一张类的结构图: 图里仅仅画了跟初始化相关的方法. 首先DispatcherServlet也是一个Servlet,初始化从init()方法開始. 以下就详细看看ini()是怎么实现的吧. 1.S ...
- ubuntu双网卡绑定配置
1,安装bonding需要的软件 sudo apt-get install ifenslave 2,在/etc/modules中加入: bonding mode= miimon= 3,在/etc/ne ...