- Python计算机视觉与深度学习实战
- 郭卡 戴亮编著
- 1202字
- 2025-02-24 11:09:48
1.1 sklearn环境配置
如果你使用的Python环境是Anaconda,那么默认已经安装了sklearn。考虑到有些读者并没有使用Anaconda,这里还是介绍一下如何使用pip安装sklearn及其依赖库。
1.1.1 环境要求
本书中使用的sklearn版本号为0.21.3,该版本对环境有如下的要求:
- Python版本号大于等于3.5;
- NumPy版本号大于等于1.11.0;
- SciPy版本号大于等于0.17.0;
- joblib版本号大于等于0.11;
- Matplotlib版本号大于等于1.5.1;
- scikit-image版本号大于等于0.12.3;
- pandas版本号大于等于0.18.0。
如果你的Python版本是Python 3.4及以下,请使用sklearn 0.20以下的版本。
1.1.2 安装方法
安装sklearn时,只需执行以下命令:
pip install scikit-learn
此时pip会自动安装sklearn的依赖库。如果想批量指定依赖库的版本,可以写一个requirements.txt文件,其内容如下:
scipy==0.17.0
joblib==0.11
matplotlib==1.5.1
scikit-image==0.12.3
pandas==0.18.0
然后使用如下指令一次性安装:
pip install -r requirements.txt
至于NumPy库,如果你想提升计算性能,建议下载与自己的Python版本对应的NumPy库和MKL库。
1.1.3 修改pip源
在使用pip的过程中,经常会出现下载速度缓慢,或者干脆无法下载的情况。就像下面这样,速度非常慢,或者一直提示Retrying
:
100% |████████████████████████████████| 5.9MB 13kB/s
Collecting numpy>=1.11.0 (from scikit-learn->sklearn)
Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken
by 'ReadTimeoutError("HTTPSConnectionPool(host='pypi.org', port=443): Read timed out. (read timeout=15)")': /simple/numpy/
如果你在使用pip进行下载和安装的过程中出现了上述情况,那么尝试将pip源修改为国内源,可以大幅提高下载速度。
在Windows环境下修改pip源的方法如下。
(1) 在资源管理器中,输入%appdata%
,会自动进入AppData/Roaming文件夹。
(2) 在这个文件夹中新建一个pip文件夹。
(3) 在pip文件夹下新建pip.ini文件。
(4) 在pip.ini文件中输入如下内容:
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
(5) 再次使用pip,即可享用国内源超高的下载速度:
H:\MachineLearning-Python >pip install numpy
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting numpy
Downloading https://pypi.tuna.tsinghua.edu.cn/packages/bd/51/7df1a3858ff0465f760b482514f1292836f8be08d84aba411b48dda72fa9/numpy-1.17.2-cp37-cp37m-win_amd64.whl (12.8MB)
100% |████████████████████████████████| 12.8MB 1.7MB/s
Installing collected packages: numpy
Successfully installed numpy-1.17.2
修改之后,速度直接提升至原来的一百多倍。若上述源的速度还是不够快,可以切换成其他国内源。目前,国内的pip源主要有下面几个。
- 阿里云:http://mirrors.aliyun.com/pypi/simple/。
- 豆瓣:http://pypi.douban.com/simple/。
- 清华大学:https://pypi.tuna.tsinghua.edu.cn/simple/。
- 中国科学技术大学:http://pypi.mirrors.ustc.edu.cn/simple/。
在Linux系统下修改pip源的操作和前面类似。以Ubuntu为例,只需执行以下指令:
mkdir ~/.pip
vim ~/.pip/pip.conf
然后写入pip源的内容即可:
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
1.1.4 安装Jupyter Notebook
Jupyter Notebook是一种网页形式的编程工具,能够在网页中直接编写和运行代码,并实时显示代码的运行结果。同时Jupyter Notebook支持Markdown语法,可以将代码说明和代码混合在一起。
对于机器学习工作者来说,使用Jupyter Notebook一般出于以下3个目的。
- 编写小段需要图像展示的案例。
- 分阶段运行代码,检测代码中的错误(这对于计算机视觉算法来说尤其方便)。
- 在服务器上远程编写代码。给予 Jupyter Notebook的网页服务的特性,我们可以很轻松地在自己的计算机上访问服务器上运行的Jupyter Notebook。
Jupyter Notebook的安装过程很简单,可以直接使用pip安装(Anaconda中自带Jupyter Notebook):
pip install jupyter
安装完成之后,在终端或cmd.exe中输入:
jupyter notebook
此时Jupyter Notebook会自动打开计算机中的默认浏览器,可以看到如图1-2所示的网页。

图 1-2 Jupyter Notebook
点击New→Python 3之后,就会自动创建一个Notebook,如图1-3所示。

图 1-3 Notebook
进入Notebook之后,就可以在代码块中编写代码了。如图1-4所示,借助“魔法命令”%matplotlib inline
,就可以轻松地在Notebook中做图形展示了。

图 1-4 Jupyter Notebook编程示例
因为工具操作简单,这里不再赘述,本书后面用到Jupyter Notebook的部分会单独说明。