2018-11-20 09:53:18 Zoedai 阅读数 634

学会使用Linux一些基本的命令行

进入terminal:Ctrl+Alt+T
获得root权限:su root
输入root密码:密码输入时是看不见的哦 直接输入正确密码之后点击Enter键即可

配置环境

配置所需的python环境
配置所需的tensorflow的版本
配置所需的cuda环境:选择适合当前linux配置的cuda文件进行下载,不同安装方式有安装说明
在这里插入图片描述

转载:cuda安装或升级
转载:CUDA、tensorflow与cuDNN的版本匹配问题

Python文件编辑器

安装Pycharm
在Pycharm的官网上下载Linux所需的安装包
在这里插入图片描述
解压安装包后 根据文件中所给出的安装指示文件进行安装操作
在这里插入图片描述
在这里插入图片描述

安装Anaconda

选择Linux环境下适合的Ananconda版本
下载好anaconda文件后,在命令行运行:
bash Anaconda2-2.4.1-Linux-x86_64.sh
(注意黄色部分的版本号要对应)
查看当前conda版本: conda -V
在conda下创建虚拟环境:conda create -n your_env_name python=X.X(2.7、3.6等)
此时可以在anaconda文件下env文件中查看到所创建的虚拟环境的列表:conda env list
激活虚拟环境:conda activte 虚拟环境的name
移除虚拟环境:conda remove -n your_env_name --all
删除环境中的某个包:conda remove package_name

运行python文件

打开pyCharm编辑器(如果要长期使用,记得激活哦!)
打开要运行的python文件
在setting中选择要使用的interrupter:
在这里插入图片描述
点击运行:
在这里插入图片描述

notice:

运行之后可能会有很多报错的问题,需要调试。一定要认真看清每一次报错的原因,有针对性的进行调试修改哦!!!!!

分享我的调bug之旅:

Linux深度学习Anaconda调bug之旅

2017-06-09 10:39:03 xz1308579340 阅读数 3740

LINUX下深度学习环境配置

环境:Ubuntu 16.0,python 2.7.9
1.首先安装好LUNUX
2.呼出命令行CTRL+ALT+T
3.检测是否安装python,一般LINUX默认安装python
直接在命令行输入:
python
会显示python的版本号,python2.7.9以上版本默认安装pip。可以看到我的版本号是2.7.12,否则进行步骤 4,quit()退出python环境。
4.检测是否安装了pip(用于安装其他python库)
命令行输入:
pip
如果安装好了会显示版本号等,否则根据提示安装即可。
quit()退出python环境
pip查询是否安装pip显示未安装
输入 sudo apt install python - pip安装pip
输入用户密码
安装pip完成

5.安装sikit 下的 pip install scikit-neuralnetwork
输入pip install scikit-neuralnetwork
开始doneload
额,我一次就安装成功了,事实上scikit-neuralnetwork需要很多的其他库支持,大家根据提示安装就可以。
在这个过程之中,安装了以下的库,如果没有自动安装大家手动安装即可,不得不说LINUX真的好用,全都自动安装了:
6.安装nose pip install nose  (用来测试是否安装好了环境)
7.测试安装的结果

2019-11-21 19:37:19 Harrytsz 阅读数 100

Linux 搭建深度学习环境教程

Notes:

⭐️ 开门见山:使用 Anaconda 直接搞定 Linux Nvidia 驱动这个千年难题 ⭐️

重点: 关于这个问题,今天我来总结一篇专治头疼的药方:只需要安装 Anaconda ,使用 conda 安装 Pytorch 或者 Tensorflow-gpu 即可。 conda 会自动帮助我们安装好几乎所有必需的驱动,可谓是一键式安装,简直是我等“菜鸡”们的福音!!!
I Love Anaconda ❤️❤️❤️

1. Linux 发行版选择与启动盘制作

启动盘制作

  • Rufus : 系统盘制作神器,下载好系统软件到本地之后,运行 rufus.exe ,选择好系统软件即可制作好系统启动 U 盘, 简单到没有套路。

2. 更换国内源

如果发现 pip 或 conda install 安装速度过慢,可以更换国内源。

参考:《conda安装Pytorch下载过慢解决办法(7月23日更新ubuntu下pytorch1.1安装方法)


Deepin:

$ sudo vim /etc/apt/sources.list

将 Deepin 官方源改成:

## Generated by deepin-installer
## 将官方源禁用
## deb [by-hash=force] http://packages.deepin.com/deepin panda main contrib non-free

## 设置清华大学开源软件镜像站
deb [by-hash=force] https://mirrors.tuna.tsinghua.edu.cn/deepin panda main contrib non-free

## 如果设置阿里云,则将地址设置为
deb [by-hash=force] https://mirrors.aliyun.com/deepin/ panda main contrib non-free
#deb-src http://packages.deepin.com/deepin panda main contrib non-free
  • pip 更换国内源
    1)临时更换
$ pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple
  • conda 更换国内源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes

3. Linux 显卡驱动安装与验证


Ubuntu:

step 1 : 首先,检测你的NVIDIA图形卡和推荐的驱动程序的模型。执行命令:

$ ubuntu-drivers devices

输出结果为:

== /sys/devices/pci0000:00/0000:00:02.0/0000:03:00.0 ==
modalias : pci:v000010DEd00001180sv00001458sd0000353Cbc03sc00i00
vendor   : NVIDIA Corporation
model    : GK104 [GeForce GTX 1050 Ti]
driver   : nvidia-430 - distro non-free
driver   : nvidia-440 - distro non-free recommended
driver   : nvidia-390 - distro non-free 
driver   : xserver-xorg-video-nouveau - distro free builtin
 
== cpu-microcode.py ==
driver   : intel-microcode - distro free

从中可以看到,这里有一个设备是 GTX 1050 Ti ,对应的驱动是 NVIDIA - 430, 440, 390 ,而推荐是安装 440 版本的驱动。\


Deepin:

  1. 打开启动器,找到显卡驱动管理器(自带,没有的话在Deepin应用商店内安装)。
  2. 选择 使用闭源驱动,在Deepin系统提示下,经过若干次数的重启系统,即可完成闭源驱动的切换。查看系统默认的闭源驱动版本号是否满足需求,如果驱动版本太低,需要更新驱动。
  3. 更新 Nvidia 闭源驱动:Nvidia 官网选择对应显卡的驱动,下载 Nvidia-Linux-x86_64-440.36.run (此版本号要与Deepin闭源驱动版本一致或兼容)文件到本地,高版本会覆盖低版本的驱动,因此不用卸载以前的低版本驱动。
  4. 在 Deepin 桌面按下 Ctrl + Alt + F4 进入控制台界面(黑命令行模式),输入用户名和密码登录,接下来是至关重要的一步:关闭图形界面
sudo service lightdm stop

或者

sudo telinit 3

cd 进入 Nvidia-Linux-x86_64-440.36.run 文件所在的路径,给安装包加权限:

sudo chmod a+x NVIDIA-Linux-x86_64-440.36.run
sudo bash ./NVIDIA-Linux-x86_64-440.36.run

⭐️⭐️⭐️⭐️根据系统提示进行操作,重新安装 440.36 版本的驱动, 不出意外的话就能顺利更新闭源驱动,但是这一步通常会遇到系统报错,由于没有及时记录报错信息,此处仅仅描述一种我曾遇到的报错,大意是:不能同时使用两套安装 NVIDIA-Linux-x86_64-440.36.run 的方式,需要手动删除一种。解决方案是:cd 进入系统报错提示的路径中,rm 删除掉其中一种安装 run 的文件,回到 NVIDIA-Linux-x86_64-440.36.run 所在位置重新运行 sudo bash ./NVIDIA-Linux-x86_64-440.36.run 即可。正是这一步操作,解决了我无数次都装不上 Nvidia 驱动的难题,此处暂时只遇到这一种异常,解决之后就可以顺畅更新 Nvidia 驱动。⭐️⭐️⭐️⭐️


step 2 : 安装驱动

Ubuntu:

你可以选择,安装所有推荐的驱动,如下命令

$ sudo ubuntu-drivers autoinstall

你也可以选择,只安装其中一个驱动,命令如下

$ sudo apt install nvidia-440

OK 驱动安装完成,重新启动,查看系统配置 —> 详细信息 —> 关于 ,图形处理是否对应于自己的独立显卡。

参考:《真实机下 ubuntu 18.04 安装GPU +CUDA+cuDNN 以及其版本选择(亲测非常实用)


Deepin :

Deepin 可以通过系统自带的显卡驱动管理器查看

通过以下链接,在 Nvidia 官网上查看对应 Linux 系统驱动型号的 cudatoolkit 型号

https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html

4. 通过 Anaconda 安装 Pytorch ,Tensorflow-gpu

安装 Anaconda :

bash Anaconda3-2019.10-Linux-x86_64.sh

执行完,检验 Anaconda 是否安装成功:

conda --version

如果发现 Ubuntu 提示没有 conda 命令,则需要进一步配置 Anaconda 的路径:

$ export PATH=~/anaconda3/bin:$PATH
$ source ~/.bashrc

再次测试!

创建 Anaconda 虚拟环境

关于虚拟环境参考:《Anaconda环境安装GPU版本Pytorch

Anaconda 成功安装后,可以使用 conda 创建虚拟工作环境:

$ conda create -n your_env_name python=3.7

激活虚拟环境:

$ conda activate your_env_name 

虚拟环境中也可以添加 conda 国内源:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --set show_channel_urls yes

使用 conda 安装 pytorch,首先需要在 PyTorch 官网查看适合系统的版本号:

复制以上命令在本地运行:

$ conda install pytorch torchvision cudatoolkit=10.1 -c pytorch

Note: 由于一开始更换了国内源,此时使用 conda 安装速度会非常快,如果异常缓慢需要检查是否成功更换源!

$ conda install tensorflow-gpu
或
$ conda install pytorch torchvision cudatoolkit=10.0

Tensorflow-gpu 或 Pytorch 成功安装后,可以进行以下的测试:

5. GPU 环境测试

>>> import torch
>>> print(torch.cuda.is_available())
True

或者

>>> import tensorflow as tf
>>> print(tf.test.is_gpu_available())
True

Congratulation !!!

torch.cuda.is_available() = False 的解决办法:

  • 去 NVIDIA 官网查看 gcc 版本号是否匹配,重新安装对应的 gcc ,g++ 之后重新使用 conda 安装 PyTorch
2016-11-27 09:29:23 wspba 阅读数 3483

由于实验室的项目需求,需要使用RBM(受限制玻尔兹曼机)、DBN(深信度网络)等深度学习的网络模型,于是学习和使用了Toronto大学提供的DeepNet深度学习框架。
DeepNet是Toronto大学的Nitish Srivastava博士开发的一款利用Python实现基于GPU的一些深度学习算法的框架,主要包括以下深度学习算法:
1.Feed-forward Neural Nets
2.Restricted Boltzmann Machines
3.Deep Belief Nets
4.Autoencoders
5.Deep Boltzmann Machines
6.Convolutional Neural Nets

该框架的实现需要cudamat和cuda-convnet的支持。
以下将在Linux环境下搭建DeepNet深度学习框架的过程分享给大家。

1.Linux版本是Ubuntu16.04。

2.下载安装Python。
Python使用的是Anaconda2 4.4.1,因为它集成了许多Python关于计算的第三方库,使用起来非常方便,将Anaconda2的环境变量添加到~/.bashrc文件中去。

cd /home/pb
vi ./bashrc
在最下行添加
export PATH="/home/pb/anaconda2/bin:$PATH"

3.CUDA安装。
我们的GPU是GTX1080,官网上下载CUDA8.0,下载地址:https://developer.nvidia.com/cuda-toolkit,安装好CUDA toolkit和SDK之后,将相关的环境变量添加到~/.bashrc文件中去。

export CUDA_BIN=/usr/local/cuda-8.0/bin
export CUDA_LIB=/usr/local/cuda-8.0/lib64
export PATH=${CUDA_BIN}:$PATH
export LD_LIBRARY_PATH=${CUDA_LIB}:$LD_LIBRARY_PATH

4.Google Protocol Buffers安装。
我们使用的是release版本,地址为https://github.com/google/protobuf/releases,找到相应版本,我们使用的是protoc-3.1.0-linux-x86_64.zip。下载解压后,将bin目录下的protoc放到/usr/local/bin/,将include目录下的google文件夹放到/usr/local/inculde/。然后将相关的环境变量添加好。

export PATH="/usr/local/bin:$PATH"
测试protocol buffers有没有安装好可以使用以下命令:
protoc -version
会出现:
libprotoc 3.1.0

5.基本的环境变量已经配置好,现在下载DeepNet,下载地址:https://github.com/nitishsrivastava/deepnet
下载解压后包含三个文件夹:cudamat,deepnet,eigenmat
其中deepnet文件夹中包含了训练、可视化以及基本网络和相应的层等Python代码。
eigenmat文件夹中主要文件是eigenmat.cc,当训练时使用的是CPU时,模型调用eigenmat。
cudamat文件夹中主要文件是cudamat.cu,当训练时使用的是GPU是,模型调用cudamat。
具体内容将在以后的文章中提出。


6.编译cudamat。

cd cudamat
make

7.编译eigenmat。
需要安装eigen,官网下载解压到根目录下,添加相应环境变量,然后再到/eigenmat目录中,make就好了。使用CPU的需要进行此步,因为我们使用的是GPU,没有用到CPU,因此跳过此步。

8.添加DeepNet相应的环境变量。

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$/home/pb/deepnet-master/cudamat
export PYTHONPATH=$PYTHONPATH:/home/pb/deepnet-master
如果使用CPU,还需要将eigenmat目录添加到环境变量中。

9.测试DeepNet。
下载MNIST数据集,下载地址:http://www.cs.toronto.edu/~nitish/deepnet/mnist.tar.gz
cd到deepnet/deepnet/examples目录下运行:

python setup_examples.py <path to mnist dataset> <output path>
这句话主要是配置数据集的路径以及输出路径,然后进入到/deepnet/examples中的任意一个文件夹,如/home/pb/deepnet-master/deepnet/examples/rbm中执行:
./runall.sh
这就开始训练RBM模型了。



2017-06-25 20:57:20 xiaopihaierletian 阅读数 322

本文所使用的的ubuntu的环境为16.04,为了安装的顺利,请先安装opencv,详见:Linux下安装OpenCV 3.0

1. 安装依赖项

建议不要一次安装这么多,以免出错可以排除错误:

sudo apt-get install git
sudo apt-get install libprotobuf-dev libleveldb-dev 
sudo apt-get install libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install python-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

2. 下载caffe源码

# 下载caffe源码
git clone https://github.com/BVLC/caffe.git
cd caffe 
cp Makefile.config.example Makefile.config //复制一个Makefile.config.example 并命名为Makefile.config
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4

3. 配置Makefile文件

修改默认的配置。打开文件:sudo gedit Makefile.config,注意:这里需要命令行打开,如果只是在对应文件中右击使用gedit打开的话,可能看不到完整的内容。

这里只是用CPU模式,打开Makefile.config文件 
1. 去掉CPU_ONLY:=1前面的#符号 
2. 去掉OPENCV_VERSION:=3

编译测试:其中sudo make -j4为编译命令,参数 -j 后可以添加数字,为启动多核编译,速度更快,这里默认为1。看到如图所示,则为编译成功,编译成功后的文件存放于~/caffe/build目录下,并且会在根目录生成.build_release文件夹。

sudo make -j4  
sudo make test
sudo make runtest
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

4. 出错解决方法

如果出现fatal error: hdf5.h: 找不到的话:

在Makefile.config文件的第85行,添加/usr/include/hdf5/serial/ 到 INCLUDE_DIRS,也就是把下面第一行代码改为第二行代码。

打开文件:sudo gedit Makefile.config

即将:
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
改为:
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4

在Makefile文件的第173行,把 hdf5_hl 和hdf5修改为hdf5_serial_hl 和 hdf5_serial,也就是把下面第一行代码改为第二行代码

打开文件:sudo gedit Makefile

即将:
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5
改为:
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4

在进行重新编译:

sudo make -j4
sudo make test
sudo make runtest
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

则最后的运行截图可以看到安装成功了:

这里写图片描述

依赖包简介

  刚才过程中通过apt安装了多个依赖包,这里对这些依赖包的作用进行简介。

ProtoBuff

  ProtoBuff是由google公司开发的一种可以实现内存与非易失存储介质交换的协议接口,Caffe源码中大量使用ProtoBuffer进行权值和模型参数灯载体。例如,有人喜欢使用TXT存储参数,有人喜欢用BIN存储参数,一个项目中不一样的参数管理会带来很多问题。ProtoBuffer工具很好地解决了这个问题,用户只要建立统一的参数描述文件(proto),然后利用protoc编译就能让协议细节等关键部分代码自动生成。caffe中使用ProtoBuff进行序列化。

Boost

  著名的C++准标准库,功能强大,这个不用过多介绍。

glog & gflag

  google公司的库,gflag提供命令行参数解析的作用,glog库是用于记录应用程序日志的实用库,提供基于C++标准输入输出流形式的接口。

libatlas

  提供卷积神经网络中用到的矩阵,向量的计算。

HDF5

  HDF是能高效存储和分发科学数据的新型数据格式。它可以存储不同类型的图像和数码数据的文件,并且可以在不同类型的机器上传输,同时还有能统一处理这种文件格式的函数库。Caffe训练模型可以选择保存为HDF5格式或默认的ProtoBuffer格式。

OpenCV

  世界上最流行的开源计算机视觉库,包含大量图像处理函数。

LMDB和LEVELDB

  提供数据管理,将Caffe中不同的原始数据,如jpeg,二进制数据转换为统一的key-value存储。大部分请况下LMDB已经满足使用,但是为了与旧版本兼容,仍然引入例LEVELDB。

Snappy

  压缩和解压缩的C++库。



更正:

# Whatever else you find you need goes here.下面的
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib
修改为:
INCLUDE_DIRS :=  $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial
//这是因为ubuntu16.04的文件包含位置发生了变化,尤其是需要用到的hdf5的位置,所以需要更改这一路径


cd /usr/lib/x86_64-linux-gnu

\\然后根据情况执行下面两句:
sudo ln -s libhdf5_serial.so.10.1.0 libhdf5.so
sudo ln -s libhdf5_serial_hl.so.10.0.2 libhdf5_hl.so
没有更多推荐了,返回首页