一、配置虚拟机
配置系统环境
下载 CentOS7 64 镜像
http://mirrors.163.com/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1611.iso
安装 VirtualBox,新建虚拟机(Linux类型),加载虚拟磁盘,运行虚拟机。从镜像安装系统。
安装Virtualbox AddOn,以支持与寄主系统互通。
https://my.oschina.net/jsk/blog/289275
替换yum源
cd /etc/yum.repos.d
mv CentOS-Base.repo CentOS-Base.repo.backup
curl http://mirrors.163.com/.help/CentOS7-Base-163.repo > CentOS-Base.repo
安装虚拟机增强包
http://www.linuxidc.com/Linux/2016-08/134292.htm
yum install -y gcc gcc-devel gcc-c++ gcc-c++-devel make kernel
kernel-devel
安装wget、tmux、vim、zsh、pip
yum install wget tmux vim zsh pip
替换终端
http://blog.csdn.net/yangcs2009/article/details/45720193
查看终端:cat /etc/shells
更改终端:chsh -s /bin/zsh
修改分辨率
http://www.gnu.org/software/grub/manual/html_node/Simple-configuration.html#Simple-configuration
http://www.360doc.com/content/12/0501/23/834950_207994643.shtml
当前通过直接修改 /boot/grub2/grub.cfg 实现(添加vga=789
),不是太优雅。
打通内网
进过反复试验,MAC下似乎无法通过nat端口映射,只能再添加一个主机直连的虚拟网卡。
通过主机直联的私有网段默认为192.168.99.XXX。
同时,关闭系统防火墙:
service firewalld stop
systemctl disable firewalld.service
配置机器学习环境
共享文件
设置VirtualBox共享宿主主机文件,拷贝课程文件至 ~。
共享的目录位于 /media
下载并安装anaconda
参考: http://www.cnblogs.com/piperck/p/5156493.html
cd ~
wget https://repo.continuum.io/archive/Anaconda3-4.4.0-Linux-x86_64.sh
bash Anaconda3-4.4.0-Linux-x86_64.sh
别忘了添加anaconda的目录到zsh的$PATH
分别配置Anaconda环境
参考:http://www.jianshu.com/p/d2e15200ee9b
fast.ai课程(Lesson1~Lesson7.ipyb)官方使用的环境是Python2(通过配置Python3也可以),而Deepdream使用的是Python3,为了便利我们至少需要建两个环境。
1、 初始自带的 root 环境 ,使用 Python2.7版本,我们将这个环境配置为可执行Fast.AI课程文件(硬盘空间充足的话最好新建一个环境,以免以来的库版本被修改)。
删除anaconda默认环境的karas版本,使用旧版本(anaconda不提供,需要通过pip安装)。
source activate root
conda uninstall keras(必要时执行两次,分别卸载不同版本的keras)
pip install keras==1.2.2(如果发现已经安装,最好先卸载再安装一遍)
继续通过conda install,安装所有运行课程中缺失的包。
2、 我们再 新建 fastai3 环境 ,使用 Python3.5.2 版本,供折腾。
通过课程目录下的配置文件,安装相关依赖包。
conda env create -f ~/fast.ai/fastai3.yml
这个环境安装好应该也可以运行Fast.AI课程,未经测试。
注意:
- 每个登录终端,当前激活的conda环境不一致,需要通过
conda info -e
确认。 - 通过conda、pip命令安装的包只影响当前环境。
配置jupyter
设置请参考:jupyter document
jupyter notebook --generate-config
vim .jupyter/jupyter_notebook_config.py
修改配置文本以达成以下目的:
- 允许root运行notebook
- 允许空密码
- 禁用自动生成token
- 绑定IP到0.0.0.0(避免只有本机才可访问)
- 修改端口到888
此外,Anaconda 4.1.0之后,在notebook图形界面中可 选择ipyhon内核 (可以不用事先activate对应的环境了)。并且会记住每个notebook最后一次选择的内核版本。
详情请见stackoverflow
需要分别配置每个Conda环境的ipython kernels,使之在notebook中可选:
source activate root
conda install notebook ipykernel
ipython kernel install --user
source activate fastai3
conda install notebook ipykernel
ipython kernel install --user
进入jupyter后,打开notebook,通过菜单 Kernel > Change kernal 可切换该notebook对应的内核。
配置theano
vim ~/.theanorc
,手工敲入并保存(要是用ssh终端,可以复制粘贴):
[global]
device = cpu
floatX = float32
[cuda]
root = /usr/local/cuda
配置keras
vim ~/.keras/keras.json
,修改配置如下:
{
"image_dim_ordering": "th",
"epsilon": 1e-07,
"floatx": "float32",
"backend": "theano"
}
二、其它说明
1、本系统未考虑安全性,仅限学习使用,请勿用于生产环境!
2、欢迎转载、修改、分享本文及虚拟机,但请注明出处。
3、感谢 fast.ai 的无私分享!
虚拟机下载,请移步: Fast.AI课程文件、教学视频及学习环境虚拟机下载分享