Day16 Caffe可视化方法
《21天实战Caffe》学习笔记第16天
数据可视化
把书上的matlab代码敲出来即可,对mnist手写数字数据集和cifar10图片数据集的数据做可视化。
模型可视化
网络结构可视化
安装依赖
用以下命令安装的python-devel,还是2.7版本的。(那我前面装python 3.7是白忙活了?)
1 |
|
numpy和/caffe/python/requirements.txt
清单里的包,均用pip3安装的。
安装时报错
1 |
|
因为清单里要求python-dateutil的版本不能大于2,所以出现上述问题。但只是不兼容,而上述三个包都装上了,所以先这样。
编译
不知道为什么,要重新编译一次caffe。
1 |
|
编译时报错。(我不记得之前编译有没有报错了)
改用
1 |
|
编译通过。
编译pycaffe。
1 |
|
报错,找不到numpy名下的头文件。
(通过pip安装numpy还是没法直接用)
yum里python-numpy
叫numpy
。
1 |
|
之后pycaffe编译成功。
运行与画图
1 |
|
不行,用python
执行也不行,但报错信息不一样。
直接在命令行下调用python,测试
1 |
|
无论是python3
还是python
,都不行,同样报错信息不一样。
(完蛋…)
检查报错
报错内容
用python3
调用draw_net.py
和控制台import caffe
的报错都指向同一个问题,大概是“有冲突”?
用python
调用上述两者似乎也是指向同一个问题,找不到xxx.io
。
虽然caffe已经支持Python3,但从报错信息上看,似乎是用Python2更加靠谱一点。下面解决Pyhon2的报错。
缺失的包
报错提示的缺失文件指向一个Python包,那个包我已经安装了。安装的时候我使用pip3
安装的,看到报错后又用pip
装了一次,但似乎对那个包没什么改动,倒是依赖的限制版本的python-dateutil给强制升级了。
装完了仍是同样的报错。
在Github的issue上有人说需要将~/caffe/python
添加至环境变量,但我添加后仍是同样的报错。
而在stackoverflow上甚至有人在python脚本里写了import ...
,但仍有同样的报错。
所以结论应该很明显了,类似numpy,即使用pip给python装了相应的包,也要用yum再装一次?
但无论是...
还是python-...
都找不到那个包…
而且官方教程中也仅有Ubuntu下的安装命令…
换个思路
从编译文件入手
从caffe的编译文件makefile.config
入手,看懂了makefile.config
文件,发现在编译时忽略了对Python路径的依赖,而我又怕改路径改出乱子。所以根据makefile.config
中的注释,将需要的文件复制到对应位置,使makefile.config
的默认路径有效。
主要一点就是,默认路径指向usr/lib
,而caffe编译所需的Pyhon相关文件,我这边是在usr/lib64
里。
另外就Python包——site packages和dist packages的问题。
重新安装依赖
解决了前述路径问题,自然要重新编译一次,然后也搞明白了目前的pip
和pip3
命令都指向Python3(这也回答了https://yimino.github.io/2019/06/27/g-cmake-python/的疑问),所以在安装了Python2的pip后
1 |
|
重新安装其他依赖包。
在前面有不同包之间相互依赖,导致版本冲突的问题,所以这次按照/caffe/python/requirements.txt
的内容,重写了requirements.txt
,把里面的>=
改成==
,能安装低版本就尽量安装低版本。
然后再编译caffe和pycaffe。
至此,import caffe
终于正常了。
(虽然有个warning,但应该无伤大雅。)
再次画图
执行,
1 |
|
报错。
1 |
|
根据https://github.com/BVLC/caffe/issues/4911,需要安装graphviz包。
1 |
|
至此,draw_net.py
脚本得以正常运行,网络结构图get!
网络权值可视化
安装Matlab
虚拟机复制文件的缓存
首先解决一下主机与虚拟机之间复制文件的缓存问题。
从虚拟机向主机复制文件,缓存于Windows主机的C:\Users\"User Name"\AppData\Local\Temp\vmware-"User Name"\VMwareDnD
中,直接删除即可。
从主机向虚拟机复制文件,缓存于Linux虚拟机的/root/.cache/vmware/drag_and_drop
中,查看日期信息,
1 |
|
查看文件大小,
1 |
|
删除缓存。
1 |
|
(但我由主机向虚拟机复制文件后,虚拟机所在磁盘的容量似乎减少了复制文件大小的两倍,在清除虚拟机缓存后也是如此…是我的错觉吗…)
安装过程
(看安装包里的教程即可)
挂载iso。
1 |
|
若提示
1 |
|
则
1 |
|
挂载成功后,不要进入挂载目录,而是在随便的另外一个目录下执行安装命令。
1 |
|
我这里提示了
1 |
|
但似乎没发现什么问题。
然后即可进入图像安装界面,按提示操作即可。
学习曲线
这个先放一放,之前用matlab神经网络工具箱时看过类似的曲线,而且又没有进一步理解曲线的经验和知识。