- Python計算機視覺與深度學習實戰
- 郭卡 戴亮編著
- 1202字
- 2021-08-27 20:19:04
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的部分會單獨說明。
- Java程序設計(慕課版)
- 零基礎搭建量化投資系統:以Python為工具
- Mobile Application Development:JavaScript Frameworks
- Mastering ServiceStack
- 大學計算機基礎實驗教程
- 深入淺出Java虛擬機:JVM原理與實戰
- Arduino開發實戰指南:LabVIEW卷
- Python漫游數學王國:高等數學、線性代數、數理統計及運籌學
- Mastering openFrameworks:Creative Coding Demystified
- HoloLens與混合現實開發
- Beginning C++ Game Programming
- Go語言高級編程(第2版)
- Flutter for Beginners
- Lucene 4 Cookbook
- Visual FoxPro程序設計(第二版)