几种深度框架的比较:www.cnblogs.com/yiruparadise/p/5671620.html
(1)Caffe
第一个主流的工业级深度学习工具。它开始于2013年底,由UC Berkely的Yangqing Jia老师编写和维护的具有出色的卷积神经网络实现。在计算机视觉领域Caffe依然是最流行的工具包。它有很多扩展,但是由于一些遗留的架构问题,不够灵活且对递归网络和语言建模的支持很差。
(2)TensorFlow
Google开源的其第二代深度学习技术——被使用在Google搜索、图像识别以及邮箱的深度学习框架。是一个理想的RNN(递归神经网 络)API和实现,TensorFlow使用了向量运算的符号图方法,使得新网络的指定变得相当容易,支持快速开发。缺点是速度慢,内存占用较大。(比如 相对于Torch)
(3)MXNet
是李沐和陈天奇等各路英雄豪杰打造的开源深度学习框架,是分布式机器学习通用工具包DMLC 的重要组成部分。它注重灵活性和效率,文档也非常的详细,同时强调提高内存使用的效率,甚至能在智能手机上运行诸如图像识别等任务。
(4)Torch
Facebook力推的深度学习框架,主要开发语言是C和Lua。有较好的灵活性和速度。它实现并且优化了基本的计算单元,使用者可以很简单地 在此基础上实现自己的算法,不用浪费精力在计算优化上面。核心的计算单元使用C或者cuda做了很好的优化。在此基础之上,使用lua构建了常见的模型。 缺点是接口为lua语言,需要一点时间来学习。
(5)Theano
2008年诞生于蒙特利尔理工学院,主要开发语言是Python。Theano派生出了大量深度学习Python软件包,最著名的包括Blocks和Keras。Theano的最大特点是非常的灵活,适合做学术研究的实验,且对递归网络和语言建模有较好的支持,缺点是速度较慢。
tensorflow与caffe不一样,关于GPU与CPU的版本,不是配置文件中设置的,而是不同的包
安装TensorFlow
参考:blog.csdn.net/u010099080/article/details/52333935
(1)创建一个 conda 环境,创建一个名为 tensorflow 的 conda 环境(conda是python的环境管理器),如果你的 Python 版本为2.7,使用:
conda create -n tensorflow python=2.7
(2)激活这个conda环境并在里面安装TensorFlow,激活 tensorflow 环境使用
source activate tensorflow
(3)使用 pip安装tensorflow
# Ubuntu/Linux 64-bit, GPU enabled, Python 2.7
# Requires CUDA toolkit 7.5 and CuDNN v4. For other versions, see "Install from sources" below.
export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.10.0rc0-cp27-none-linux_x86_64.whl
pip install --ignore-installed --upgrade $TF_BINARY_URL
注意:以上的这些安装命令其实都不管你是在哪个文件夹路径下
(4)测试安装是否成功
首先激活 tensorflow 环境,然后进入 python,最后导入 tensorflow 库。如果导入成功则表明安装成功。
(5)查看版本和安装路径:
>>> import tensorflow as tf
>>> tf.__version__
'0.10.0rc0'
>>> tf.__path__
['/home/echo/anaconda2/envs/tensorflow/lib/python2.7/site-packages/tensorflow']
(6)需要使用 TensorFlow 的时候必须重新激活
当使用完毕后,关闭 tensorflow 环境。
source deactivate
然后你的终端提示符就会变会原来的样子。当你需要再次使用的时候就必须再次激活 tensorflow 环境。
source activate tensorflow
(7)如若更新TensorFlow:
用以下方式更新了tensorflow,会覆盖之前路径下的tensorflow,但是我自己的文件还在里面,估计只是覆盖了原有的那些文件(可惜,我在原有文件中所有的注释都不见啦!!,更新可用)
export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.0.1-cp34-cp34m-manylinux1_x86_64.whl
pip install --ignore-installed --upgrade $TF_BINARY_URL
至此,你已经拥有了一个可以玩耍机器学习的 tensorflow 环境,好好玩耍吧
安装 jupyter notebook
参考:www.41443.com/HTML/Linux/20160627/435246_2.html
blog.csdn.net/tina_ttl/article/details/51762471
在tensorflow下面重新安装ipython和jupyter notebook即可,使用时,直接在tensorflow环境下输入命令“jupyter notebook”
注意:后续如果需要在使用tensorflow时使用其他的库,也一定要在对应的conda环境下安装,否则指定的库找不到。
在conda(blog.csdn.net/lyy14011305/article/details/59500819)下创建环境,之后的所以操作都部署在该环境下
python2.7+tensorflow0.8+opencv2.4
以上都是在conda环境中安装的tensorflow,但是opencv可能会不能使用,还得配置,现在反正caffe与tensorflow都用的是python2.7,所以直接在环境之外安装tensorflow了(之前都是使用的上面那个,现在开始,使用下面这个,但是后面又在python34中安装了tensorflow1.0,不过以后没有指定非要那个环境的情况下,还是用root下面的这个tensorflow)
export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl
pip install --ignore-installed --upgrade $TF_BINARY_URL
>>> tf.__version__
'0.8.0'
>>> tf.__path__
['/home/echo/anaconda2/lib/python2.7/site-packages/tensorflow']
试一下:darkNet:
cd /home/echo/darknet
./darknet detect cfg/yolo.cfg yolo.weights data/dog.jpg
这个是可以正常使用的,删除原来的conda创建的那个tensorflow:
conda remove -n your_env_name(虚拟环境名称) --all
python3.4+tensorflow1.0+opencv3.1
(1)创建python3.4环境
conda create -n python34 python=3.4
(2)安装tensorflow
(python34) echo@echo-PC:~$ pip install tensorflow-gpu #会根据我的python版本去选择安装啥tensorflow
Collecting tensorflow-gpu
Downloading tensorflow_gpu-1.0.1-cp34-cp34m-manylinux1_x86_64.whl (94.8MB)
以上太慢了...直接pypi.python.org/pypi/tensorflow-gpu/1.0.0网站手动下载
pip install tensorflow_gpu-1.0.0-cp34-cp34m-manylinux1_x86_64.whl
上一条命令得多次执行,不然很可能之前会失败,反正这条命令是对的
出现如下问题:
ImportError: libcudart.so.8.0: cannot open shared object file: No such file or directory
重新安装了cuda8.0后就行了。
(3)安装opencv3
conda install -c https://conda.binstar.org/menpo opencv
我这里安装的是opencv3.1.0(实际上上一命令很慢,但是不管了,,慢慢等把~我尝试了各种其他办法,都未成功,要么就是其他的也很慢)
补充
我的Python34的conda环境下可以使用jupyter notebook.但是估计是之前在环境之外装的那个(不知道之前为啥环境之内不能用),但是只能环境之外的Python,虽然是在环境之内启动的,可能是因为创建的就是Python root吧!
Anaconda中会自带很多Python中常用的package,比如ipython和jupyter等。在Python34的环境中重新安装:pip install jupyter即可,后面就是可建立Python 3的.py文件了
其实吧,我猜conda创建环境,Python2,Python3之类,是为了进行版本控制,所以常常怀疑到底环境里面的能不能用外面的软件。其实,现在有点觉得唯一的区分是python中要用到的包的问题,比如要import tensorflow,是作为python可以引用的包。所以必须安装在相应环境下,而jupyter要用到去构建什么python脚本,而且是pip安装的,所以也涉及到了什么Python
而且最好要注意的是:最好jupyter与谷歌浏览器链接,因为浏览器的原因,运行出错会有提示
--------------------------------------补充:conda包管理的命令---------------------------------
# 安装xxxx
conda install xxxx
# 查看当前环境下已安装的包
conda list
# 查看某个指定环境的已安装包
conda list -n python34
# 查找package信息
conda search numpy
# 安装package
conda install -n python34 numpy # 如果不用-n指定环境名称,则被安装在当前活跃环境 也可以通过-c指定通过某个channel安装
--------------------------------------------------END----------------------------------------------
有人这样,“安装python3.5.1,安装后要注意,python3.5.1被安装到了/usr/local/环境下,python在/usr/local/lib/python3.5/下,使用是需要与系统原来的环境进行切换。因为系统可能用到很多原版本的库,与python3.5.1不一定兼容,因此务必保留原始的版本。”
可见可以多种版本的python,而我们要做的只是环境切换(也就是python版本的切换),但是我这里用了conda环境了,就一直这样吧