如何安装 Keras

Keras 是一个基于 Python 的高级神经网络 API,能够在用于机器学习的顶级 TensorFlow、CNTK 或 Theano 框架上运行。 可以说,Keras 充当了 Python 深度学习库。 Keras 的创建强调用户友好,因为它背后的主要原则是“为人类而不是机器设计”。 Keras 的核心数据结构是 模型,或一种组织图层的方式。

虽然有多种框架可供使用,但 Keras 官方建议使用 TensorFlow。 考虑到这一点,本教程将涵盖:

  • Keras 和 TensorFlow 的区别
  • 如何安装 Python
  • 如何安装 TensorFlow
  • 如何安装 Keras

有什么不同?

如前所述,Keras 运行在 TensorFlow, CNTK, 或者 西阿诺 构架。 它们之间的主要区别在于 Keras 是一个具有高级 API 并使用 Python 构建的神经网络库。 这些选项使产品更加用户友好。 同时,TensorFlow 也是许多其他任务的开源库。

先决条件

此外,这些框架还需要安装 Python。 如果您没有在服务器上设置 Python 或启用任何框架,只需按照以下步骤开始。

在 CentOS 上安装 Python

安装 Python 的第一步是确保我们的系统是最新的。 我们将使用 yum 包管理器更新我们的系统。 接下来,我们将安装 yum-utils。 yum-utils 是管理 yum 存储库、安装调试包和源包所需的工具和软件的集合。

[root@host ~]# yum update
[root@host ~]# yum install yum-utils

第二步是安装 CentOS Software Collection (SCL)。 通过启用 SCL 存储库,我们将可以访问最新版本的编程语言,以及基础存储库中不提供的其他帮助。 SCL 还允许我们安装最新版本的 Python 3.x,与当前默认的 Python v2.7.5 版本并行,因此 yum 等系统工具将继续按预期工作。

[root@host ~]# yum install centos-release-scl

我们可以通过运行以下命令轻松确认 Python 已安装。 版本号将在安装了默认版本的 Python 完成后显示。

[root@host ~]# python --version 
Python 2.7.5

我们可以看到,当前安装的 Python 版本不是最新版本。 因此,我们需要使用以下命令对其进行升级。

[root@host ~]# yum install rh-python35

接下来,安装主 SCL 包(其名称与 Software Collection 的名称相同)并更新 Python 更新。

[root@host]# scl enable /etc/scl/conf/rh-python35 bash

然后我们可以通过运行这个命令来确认更新的版本

[root@host ]# python --version
Python 3.5.1

升级完成后,我们确认服务器上可以使用 Python,我们可以继续安装其中一个框架。

安装 TensorFlow

因为 TensorFlow 需要最新版本的 PIP(Python 包安装程序),所以我们需要通过运行下一条命令来更新它。

[root@host3 ~]# pip install --upgrade pip
You are using pip version 7.1.0, however version 20.0.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
Collecting pip
  Downloading https://files.pythonhosted.org/packages/54/0c/d01aa759fdc501a58f431eb594a17495f15b88da142ce14b5845662c13f3/pip-20.0.2-py2.py3-none-any.whl (1.4MB)
    100% |████████████████████████████████| 1.4MB 481kB/s 
Installing collected packages: pip
  Found existing installation: pip 7.1.0
    Uninstalling pip-7.1.0:
      Successfully uninstalled pip-7.1.0
Successfully installed pip-20.0.2

接下来,我们要更新我们的设置工具,以防止在使用标准设置工具时出现以下错误。

  • 错误:markdown 3.2.1 要求 setuptools>=36,但您将拥有不兼容的 setuptools 18.0.1。
  • 错误:张量板 2.1.1 要求 setuptools>=41.0.0,但您将拥有不兼容的 setuptools 18.0.1。
  • 错误:google-auth 1.11.2 要求 setuptools>=40.3.0,但您将拥有不兼容的 setuptools 18.0.1。
pip install --upgrade setuptools
Collecting setuptools
  Downloading setuptools-46.0.0-py3-none-any.whl (582 kB)
     |████████████████████████████████| 582 kB 1.5 MB/s 
Installing collected packages: setuptools
  Attempting uninstall: setuptools
    Found existing installation: setuptools 18.0.1
    Uninstalling setuptools-18.0.1:
      Successfully uninstalled setuptools-18.0.1
Successfully installed setuptools-46.0.0
[root@host conf]#

接下来,我们可以继续为 CPU 和 GPU 安装当前稳定版本的 TensorFlow。

[root@host3 ~]# pip install tensorflow
Collecting tensorflow
  Downloading tensorflow-2.1.0-cp35-cp35m-manylinux2010_x86_64.whl (421.8 MB)
     |████████████████████████████████| 421.8 MB 15 kB/s 
Collecting keras-applications>=1.0.8
  Downloading Keras_Applications-1.0.8-py3-none-any.whl (50 kB)
     |████████████████████████████████| 50 kB 17.9 MB/s 
Collecting gast==0.2.2
  Downloading gast-0.2.2.tar.gz (10 kB)
Collecting opt-einsum>=2.3.2
  Downloading opt_einsum-3.2.0-py3-none-any.whl (63 kB)
     |████████████████████████████████| 63 kB 7.6 MB/s 
Collecting termcolor>=1.1.0
  Downloading termcolor-1.1.0.tar.gz (3.9 kB)
Collecting six>=1.12.0
  Downloading six-1.14.0-py2.py3-none-any.whl (10 kB)
Collecting numpy<2.0,>=1.16.0
  Downloading numpy-1.18.1-cp35-cp35m-manylinux1_x86_64.whl (19.9 MB)
     |████████████████████████████████| 19.9 MB 6.2 kB/s 
Collecting wheel>=0.26; python_version >= "3"
  Downloading wheel-0.34.2-py2.py3-none-any.whl (26 kB)
Collecting protobuf>=3.8.0
  Downloading protobuf-3.11.3-cp35-cp35m-manylinux1_x86_64.whl (1.3 MB)
     |████████████████████████████████| 1.3 MB 76.8 MB/s 
Collecting tensorflow-estimator<2.2.0,>=2.1.0rc0
  Downloading tensorflow_estimator-2.1.0-py2.py3-none-any.whl (448 kB)
     |████████████████████████████████| 448 kB 77.3 MB/s 
Collecting google-pasta>=0.1.6
  Downloading google_pasta-0.1.8-py3-none-any.whl (57 kB)
     |████████████████████████████████| 57 kB 18.0 MB/s 
Collecting wrapt>=1.11.1
  Downloading wrapt-1.12.1.tar.gz (27 kB)
Collecting grpcio>=1.8.6
  Downloading grpcio-1.27.2-cp35-cp35m-manylinux2010_x86_64.whl (2.7 MB)
     |████████████████████████████████| 2.7 MB 71.3 MB/s 
Collecting absl-py>=0.7.0
  Downloading absl-py-0.9.0.tar.gz (104 kB)
     |████████████████████████████████| 104 kB 88.2 MB/s 
Collecting scipy==1.4.1; python_version >= "3"
  Downloading scipy-1.4.1-cp35-cp35m-manylinux1_x86_64.whl (26.0 MB)
     |████████████████████████████████| 26.0 MB 69.9 MB/s 
Collecting keras-preprocessing>=1.1.0
  Downloading Keras_Preprocessing-1.1.0-py2.py3-none-any.whl (41 kB)
     |████████████████████████████████| 41 kB 651 kB/s 
Collecting tensorboard<2.2.0,>=2.1.0
  Downloading tensorboard-2.1.1-py3-none-any.whl (3.8 MB)
     |████████████████████████████████| 3.8 MB 79.3 MB/s 
Collecting astor>=0.6.0
  Downloading astor-0.8.1-py2.py3-none-any.whl (27 kB)
Collecting h5py
  Downloading h5py-2.10.0-cp35-cp35m-manylinux1_x86_64.whl (2.8 MB)
     |████████████████████████████████| 2.8 MB 76.5 MB/s 
Requirement already satisfied: setuptools in /opt/rh/rh-python35/root/usr/lib/python3.5/site-packages (from protobuf>=3.8.0->tensorflow) (18.0.1)
Collecting google-auth-oauthlib<0.5,>=0.4.1
  Downloading google_auth_oauthlib-0.4.1-py2.py3-none-any.whl (18 kB)
Collecting google-auth<2,>=1.6.3
  Downloading google_auth-1.11.2-py2.py3-none-any.whl (76 kB)
     |████████████████████████████████| 76 kB 19.0 MB/s 
Collecting werkzeug>=0.11.15
  Downloading Werkzeug-1.0.0-py2.py3-none-any.whl (298 kB)
     |████████████████████████████████| 298 kB 72.9 MB/s 
Collecting markdown>=2.6.8
  Downloading Markdown-3.2.1-py2.py3-none-any.whl (88 kB)
     |████████████████████████████████| 88 kB 26.9 MB/s 
Collecting requests<3,>=2.21.0
  Downloading requests-2.23.0-py2.py3-none-any.whl (58 kB)
     |████████████████████████████████| 58 kB 20.8 MB/s 
Collecting requests-oauthlib>=0.7.0
  Downloading requests_oauthlib-1.3.0-py2.py3-none-any.whl (23 kB)
Collecting pyasn1-modules>=0.2.1
  Downloading pyasn1_modules-0.2.8-py2.py3-none-any.whl (155 kB)
     |████████████████████████████████| 155 kB 83.1 MB/s 
Collecting cachetools<5.0,>=2.0.0
  Downloading cachetools-4.0.0-py3-none-any.whl (10 kB)
Collecting rsa<4.1,>=3.1.4
  Downloading rsa-4.0-py2.py3-none-any.whl (38 kB)
Collecting urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1
  Downloading urllib3-1.25.8-py2.py3-none-any.whl (125 kB)
     |████████████████████████████████| 125 kB 73.9 MB/s 
Collecting certifi>=2017.4.17
  Downloading certifi-2019.11.28-py2.py3-none-any.whl (156 kB)
     |████████████████████████████████| 156 kB 80.8 MB/s 
Collecting chardet<4,>=3.0.2
  Downloading chardet-3.0.4-py2.py3-none-any.whl (133 kB)
     |████████████████████████████████| 133 kB 87.7 MB/s 
Collecting idna<3,>=2.5
  Downloading idna-2.9-py2.py3-none-any.whl (58 kB)
     |████████████████████████████████| 58 kB 20.3 MB/s 
Collecting oauthlib>=3.0.0
  Downloading oauthlib-3.1.0-py2.py3-none-any.whl (147 kB)
     |████████████████████████████████| 147 kB 82.4 MB/s 
Collecting pyasn1<0.5.0,>=0.4.6
  Downloading pyasn1-0.4.8-py2.py3-none-any.whl (77 kB)
     |████████████████████████████████| 77 kB 8.7 MB/s 
Installing collected packages: numpy, six, h5py, keras-applications, gast, opt-einsum, termcolor, wheel, protobuf, tensorflow-estimator, google-pasta, wrapt, grpcio, absl-py, scipy, keras-preprocessing, oauthlib, urllib3, certifi, chardet, idna, requests, requests-oauthlib, pyasn1, pyasn1-modules, cachetools, rsa, google-auth, google-auth-oauthlib, werkzeug, markdown, tensorboard, astor, tensorflow
    Running setup.py install for gast ... done
    Running setup.py install for termcolor ... done
    Running setup.py install for wrapt ... done
    Running setup.py install for absl-py ... done
Successfully installed absl-py-0.9.0 astor-0.8.1 cachetools-4.0.0 certifi-2019.11.28 chardet-3.0.4 gast-0.2.2 google-auth-1.11.2 google-auth-oauthlib-0.4.1 google-pasta-0.1.8 grpcio-1.27.2 h5py-2.10.0 idna-2.9 keras-applications-1.0.8 keras-preprocessing-1.1.0 markdown-3.2.1 numpy-1.18.1 oauthlib-3.1.0 opt-einsum-3.2.0 protobuf-3.11.3 pyasn1-0.4.8 pyasn1-modules-0.2.8 requests-2.23.0 requests-oauthlib-1.3.0 rsa-4.0 scipy-1.4.1 six-1.14.0 tensorboard-2.1.1 tensorflow-2.1.0 tensorflow-estimator-2.1.0 termcolor-1.1.0 urllib3-1.25.8 werkzeug-1.0.0 wheel-0.34.2 wrapt-1.12.1
[root@host conf]# 

为了确认我们的安装成功,我们可以运行以下两个命令之一。

[root@host conf]# pip show tensorflow
Name: tensorflow
Version: 2.1.0
Summary: TensorFlow is an open source machine learning framework for everyone.
Home-page: https://www.tensorflow.org/
Author: Google Inc.
Author-email: [email protected]
License: Apache 2.0
Location: /opt/rh/rh-python35/root/usr/lib64/python3.5/site-packages
Requires: google-pasta, six, tensorflow-estimator, termcolor, wrapt, keras-applications, absl-py, keras-preprocessing, numpy, tensorboard, scipy, grpcio, astor, wheel, gast, protobuf, opt-einsum
Required-by: 
[root@host conf]#

或者

[root@host ~]# pip list | grep tensorflow
tensorflow 2.1.0
tensorflow-estimator 2.1.0
[root@host conf]#

安装完成后,我们就可以开始创建我们的虚拟环境了。 关于如何配置这个软件的说明超出了本文的范围,但可以在官方中找到 TensorFlow 文档。

安装 Keras

点安装

有两种安装 Keras 的方法。 第一种是使用 Python PIP 安装程序或使用标准 GitHub 克隆安装。 我们将使用 PIP 安装程序安装 Keras,因为这是推荐的安装程序。

[root@host ~]# pip install keras
Collecting keras
  Downloading Keras-2.3.1-py2.py3-none-any.whl (377 kB)
     |████████████████████████████████| 377 kB 1.5 MB/s 
Requirement already satisfied: scipy>=0.14 in /opt/rh/rh-python35/root/usr/lib64/python3.5/site-packages (from keras) (1.4.1)
Requirement already satisfied: h5py in /opt/rh/rh-python35/root/usr/lib64/python3.5/site-packages (from keras) (2.10.0)
Requirement already satisfied: six>=1.9.0 in /opt/rh/rh-python35/root/usr/lib/python3.5/site-packages (from keras) (1.14.0)
Requirement already satisfied: keras-preprocessing>=1.0.5 in /opt/rh/rh-python35/root/usr/lib/python3.5/site-packages (from keras) (1.1.0)
Requirement already satisfied: numpy>=1.9.1 in /opt/rh/rh-python35/root/usr/lib64/python3.5/site-packages (from keras) (1.18.1)
Collecting pyyaml
  Downloading PyYAML-5.3.tar.gz (268 kB)
     |████████████████████████████████| 268 kB 6.4 MB/s 
Requirement already satisfied: keras-applications>=1.0.6 in /opt/rh/rh-python35/root/usr/lib/python3.5/site-packages (from keras) (1.0.8)
Building wheels for collected packages: pyyaml
  Building wheel for pyyaml (setup.py) ... done
  Created wheel for pyyaml: filename=PyYAML-5.3-cp35-cp35m-linux_x86_64.whl size=44228 sha256=60be7547ea2c16c5d689381cf523c6ce9bf7c03e55cc81a8dd9b830a16fc22cd
  Stored in directory: /root/.cache/pip/wheels/4d/28/ad/d9c3d2a22dbe17b0d7019bbe876af34feabf61a214973481e9
Successfully built pyyaml
Installing collected packages: pyyaml, keras
Successfully installed keras-2.3.1 pyyaml-5.3
[root@host conf]#

我们再次检查已安装版本的输出。

[root@host conf]# pip list | grep Keras
Keras                2.3.1     
Keras-Applications   1.0.8     
Keras-Preprocessing  1.1.0     
[root@host conf]#

Git 克隆安装

这是使用 GitHub 源代码的 Keras 的替代安装方法。 (这假设您已经安装了 Git 并且可以正常工作。)首先,使用以下 git 命令克隆 Keras。

[root@host ~]# git clone https://github.com/keras-team/keras.git

然后,cd 进入 Keras 文件夹并运行安装命令。

[root@host ~]# cd keras
[root@host ~]# python setup.py install

因为 Keras 使用 TensorFlow 作为其主要的张量操作库,所以一旦我们第一次运行 Keras,就可以使用 Keras 特定的配置文件来配置它的后端框架。 文件的位置可以在这里找到。

$HOME/.keras/keras.json 

默认配置文件将类似于以下信息。

{
    “image_data_format”: “channels_last”,
    “epsilon”: 1e-07,
    “floatx”: “float32”,
    “backend”: “tensorflow”
}

当我们将后端字段修改为“cntk”、“theano”或“tensorflow”时,Keras 将在下次运行任何更新的 Keras 代码时使用新的配置设置。

结论

深度学习带来了机器素养的新时代,它改进了当前的功能。 Keras 和 TensorFlow 等框架允许我们在私人环境中试验机器学习,这让其背后的技术离家更近了。

虽然本文可能看起来需要许多配置,但 Liquid Web 可以为您提供帮助。 我们可以使用我们广泛的备份存储和 Cloud 服务器备份选项。 该服务为您和您客户的数据提供全天候保护。

给我们打电话 800.580.4985,或打开 聊天 或与我们联系,与我们知识渊博的解决方案或经验丰富的托管顾问之一交谈,了解您今天如何利用这些技术!