深度學習開發環境
在本章中,我們將學習如何爲Python深度學習設置環境。 我們需要安裝以下軟件來製作深度學習算法。
- Python 2.7+
- Scipy以及Numpy
- Matplotlib
- Theano
- Keras
- TensorFlow
強烈建議通過Anaconda發行版安裝Python,NumPy,SciPy和Matplotlib。 它配備了所有這些軟件包。
需要確保這些類型的軟件安裝正確。使用以下命令行 -
$ python
Python 3.6.3 |Anaconda custom (32-bit)| (default, Oct 13 2017, 14:21:34)
[GCC 7.2.0] on linux
接下來,可以導入所需的庫並打印它們的版本 -
C:\Users\Administrator>python
Python 3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 17:00:18) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
>>> print (numpy.__version__)
1.14.5
>>>
Theano,TensorFlow和Keras的安裝
在開始安裝軟件包 - Theano,TensorFlow和Keras之前,我們需要確認是否安裝了pip。 Anaconda的包裹管理系統被稱爲pip。
要確認pip
的安裝,請在命令行中輸入pip
,它會顯示這個命令的使用方法 -
C:\Users\Administrator>pip
Usage:
pip <command> [options]
Commands:
install Install packages.
download Download packages.
uninstall Uninstall packages.
freeze Output installed packages in requirements format.
list List installed packages.
show Show information about installed packages.
check Verify installed packages have compatible dependencies.
config Manage local and global configuration.
search Search PyPI for packages.
wheel Build wheels from your requirements.
hash Compute hashes of package archives.
completion A helper command used for command completion.
help Show help for commands.
General Options:
-h, --help Show help.
--isolated Run pip in an isolated mode, ignoring environment variables and user configuration.
-v, --verbose Give more output. Option is additive, and can be used up to 3 times.
-V, --version Show version and exit.
-q, --quiet Give less output. Option is additive, and can be used up to 3 times (corresponding to
WARNING, ERROR, and CRITICAL logging levels).
--log <path> Path to a verbose appending log.
--proxy <proxy> Specify a proxy in the form [user:passwd@]proxy.server:port.
--retries <retries> Maximum number of retries each connection should attempt (default 5 times).
--timeout <sec> Set the socket timeout (default 15 seconds).
--exists-action <action> Default action when a path already exists: (s)witch, (i)gnore, (w)ipe, (b)ackup,
(a)bort).
--trusted-host <hostname> Mark this host as trusted, even though it does not have valid or any HTTPS.
--cert <path> Path to alternate CA bundle.
--client-cert <path> Path to SSL client certificate, a single file containing the private key and the
certificate in PEM format.
--cache-dir <dir> Store the cache data in <dir>.
--no-cache-dir Disable the cache.
--disable-pip-version-check
Don't periodically check PyPI to determine whether a new version of pip is available for
download. Implied with --no-index.
--no-color Suppress colored output
確認安裝了pip
以後,可以通過執行以下命令來安裝TensorFlow和Keras -
$ pip install theano
$ pip install tensorflow
$ pip install keras
通過執行以下代碼行來確認Theano的安裝 -
$ python –c 「import theano; print (theano.__version__)」
輸出結果如下 -
C:\Users\Administrator>python -c "import theano; print (theano.__version__)"
WARNING (theano.configdefaults): g++ not available, if using conda: `conda install m2w64-toolchain`
E:\Program Files\Python36\lib\site-packages\theano\configdefaults.py:560: UserWarning: DeprecationWarning: there is no c++ compiler.This is deprecated and with Theano 0.11 a c++ compiler will be mandatory
warnings.warn("DeprecationWarning: there is no c++ compiler."
WARNING (theano.configdefaults): g++ not detected ! Theano will be unable to execute optimized C-implementations (for both CPU and GPU) and will default to Python implementations. Performance will be severely degraded. To remove this warning, set Theano flags cxx to an empty string.
WARNING (theano.tensor.blas): Using NumPy C-API based implementation for BLAS functions.
1.0.2
``
通過執行以下代碼行來確認 Tensorflow 的安裝 -
```shell
$ python –c 「import tensorflow; print(tensorflow.__version__)」
輸出結果如下 -
C:\Users\Administrator>python -c "import tensorflow; print(tensorflow.__version__)"
1.8.0
``
通過執行以下代碼行來確認 Keras 的安裝 -
```shell
$ python –c 「import keras; print (keras.__version__)」
輸出結果如下 -
`shell C:\Users\Administrator> python -c "import keras; print (keras.__version__)" Using TensorFlow backend. 2.2.0