热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python可以在苹果系统上装吗_在MacOSX装不上TensorFlow?看了这篇就会装

雷锋网按:本文原作者Enachan。本文原载于作者的GitHub。译者投稿,雷锋网(公众号:雷锋网)版权所有。这个文档说明了如何在Mac

雷锋网按:本文原作者Enachan。本文原载于作者的GitHub。译者投稿,雷锋网(公众号:雷锋网)版权所有。

这个文档说明了如何在 Mac OS X 上安装 TensorFlow。注意:从 1.2 版本开始,在 Mac OS X 上 TensorFlow 不再支持 GPU。

确定如何安装 TensorFlow

你可以选择一种方式安装 TensorFlow,支持下面的几种选择:virtualenv

"本地" pip

Docker

从源代码安装,更专业有单独的文档记录

我们建议使用 virtualenv 安装。virtualenv是一个和其它 Python 项目开发隔离的虚拟 Python 环境,在同一台机器上不会干扰也不会被其它程序影响。virtualenv 安装过程中,你不仅仅安装了 TensorFlow 还有它的所有依赖包。(事实上这很简单)要开始使用 TensorFlow,你需要 “启动” virtualenv 环境。总而言之,virtualenv 提供了一个安全可靠的 TensorFlow 安装和运行机制。

本地 pip 安装 TensorFlow 不经过任何容器或者虚拟环境系统直接装到了系统上,由于本地 pip 安装没被关闭,pip 安装会干扰或者影响系统上其它有 Python 依赖的安装。而且,如果要通过本地 pip 安装,你需要禁用系统完整性保护(SIP)。然而,如果你了解 SIP,pip 和 你的 Python 环境,本地 pip 安装相对容易执行。

Docker 可使 TensorFlow 的安装完全脱离于机器上的其它已存在的包,Docker 容器包括 TensorFlow 和它的所有依赖。注意 Docker 镜像可能很大(几百 M)。如果你已将 TensorFlow 集成到使用了 Docker 的大型应用架构中可以选择 Docker 安装。

选择 Anaconda,你可以使用 conda 创建一个虚拟环境,我们建议使用 pip install 命令而不是 coda install 命令安装 TensorFlow。注意:coda 包是社区而不是官方支持,也就是说,TensorFlow 团队既不测试也不维护 conda 包,如果使用风险自己承担。

使用 virtualenv 安装

按照以下步骤安装 TensorFlow:打开终端(一个 shell),你将在这个终端中执行随后的步骤

通过以下命令安装 pip 和 virtualenv:$ sudo easy_install pip

$ sudo pip install --upgrade virtuale

3. 执行以下任一命令创建虚拟环境:$ virtualenv --system-site-packages targetDirectory # for Python 2.7

$ virtualenv --system-site-packages -p python3 targetDirectory # for Python 3.n

targetDirectory 因虚拟环境根路径而异,我们的命令假使 targetDirectory 是 ~/tensorflow,但你可以选择任一目录。

4. 执行任一命令激活虚拟环境:$ source ~/tensorflow/bin/activate # If using bash, sh, ksh, or zsh

$ source ~/tensorflow/bin/activate.csh # If using csh or tcs

上面的 source 命令应该将提示符改成了下面这样:(tensorFlow)$

5. 如果已经安装了 pip 8.1 或者更新的版本,执行以下任一命令在激活的虚拟环境中安装 TensorFlow 及其所有依赖:$ pip install --upgrade tensorflow # for Python 2.7

$ pip3 install --upgrade tensorflow # for Python 3.n

如果前面的命令执行成功了,跳过步骤 6;如果失败了,再执行步骤 6。

6. 可选,如果步骤 5 失败了(一般是因为你使用了低于 8.1 版本的 pip),执行以下任一命令在激活的虚拟环境中安装 TensorFlow:$ pip install --upgrade tfBinaryURL # Python 2.7

$ pip3 install --upgrade tfBinaryURL # Python 3.n

tfBinaryURL 是 Tensorflow 包的 URL,准确的 tfBinaryURL 值因操作系统和 Python 版本而异,在 [这里](#TensorFlow Python 包 URL) 找到和你系统相关的 tfBinaryURL 值。例如,你要在 Mac OS X 上安装 Python 2.7 对应的 Tensorflow 版本,在虚拟环境中安装 Tensorflow 就执行下面的命令:$ pip3 install --upgrade \

https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.2.1-py2-none-any.whl

如果安装过程中遇到麻烦,参考常见安装问题。

下一步

安装完成后,验证你的安装是否工作正常。

注意,每打开一个新的 shell 使用 TensorFlow 都必须激活虚拟环境。如果当前虚拟环境没有被激活(也就是提示符不是 tensorflow),执行以下任一命令:$ source ~/tensorflow/bin/activate # bash, sh, ksh, or zsh

$ source ~/tensorflow/bin/activate.csh # csh or tcsh

你的提示符变成下面这样说明 tensorflow 环境已经激活:(tensorflow)$

当虚拟环境激活后,你可以在这个 shell 中运行 TensorFlow 程序。如果你不再使用 TensorFlow,可以通过下面命令退出环境:(tensorflow)$ deactivate

提示符将会恢复到默认的(在 PS1 中定义的)。

卸载 TensorFlow

如果你想卸载 TensorFlow,简单地移除你创建的目录。例如:$ rm -r ~/tensorflow

使用本地 pip 安装

我们已经将 TensorFlow 二进制文件上传到了 PyPI,因此你可以通过 pip 安装, REQUIRED_PACKAGES section of setup.py 文件列出了 pip 将要安装或升级的包。

必备: Python

要安装 TensorFlow,你的系统必须依据安装了以下任一 Python 版本:Python 2.7

Python 3.3+

如果你的系统还没有安装符合以上版本的 Python,现在安装。

安装 Python,你可能需要禁用系统完整性保护(SIP)来获得从 Mac App Store 外安装软件的许可。

必备: pip

Pip 安装和管理 Python 写的软件包,如果你要使用本地 pip 安装,系统上必须安装下面的任一 pip 版本:pip, for Python 2.7

pip3, for Python 3.n.

pip 或者 pip3 可能在你安装 Python 的时候已经安装了,执行以下任一命令确认系统上是否安装了 pip 或 pip3:$ pip -V # for Python 2.7

$ pip3 -V # for Python 3.n

我们强烈建议使用 pip 或者 pip3 为 8.1 或者更新的版本安装 TensorFlow,如果没有安装,执行以下任一命令安装或更新:$ sudo easy_install --upgrade pip

$ sudo easy_install --upgrade six

安装 TensorFlow

假设你的 Mac 上已经装好了必备的程序,按照以下步骤执行:执行以下任一命令安装 TensorFlow:$ pip install tensorflow # Python 2.7; CPU support

$ pip3 install tensorflow # Python 3.n; CPU support

如果上面的命令执行完成,现在可以验证你的安装了。

2. (可选的) 如果步骤 1 失败了,执行下面的命令安装最新版本 TensorFlow:$ sudo pip install --upgrade tfBinaryURL # Python 2.7

$ sudo pip3 install --upgrade tfBinaryURL # Python 3.n

tfBinaryURL 是 Tensorflow 包的 URL,准确的 tfBinaryURL 值因操作系统和 Python 版本而异,在这里找到和你系统相关的 tfBinaryURL 值。例如,你要在 Mac OS X 上安装 Python 2.7 对应的 Tensorflow 版本,在虚拟环境中安装 Tensorflow 就执行下面的命令:$ sudo pip3 install --upgrade \

https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.2.1-py2-none-any.whl

如果以上命令运行失败,参考 安装问题。

下一步

安装完成后,验证你的安装是否工作正常。

卸载 TensorFlow

如果要卸载 TensorFlow,执行下面的命令:$ pip uninstall tensorflow

$ pip3 uninstall tensorflow

使用 Docker 安装

按照以下步骤使用 Docker 安装 TensorFlow:

1. 按照 文档 在你的机器上安装 Docker

2. 启动任一个包含 TensorFlow 镜像的 Docker 容器

本节剩下部分解释如何启动 Docker 容器。

要启动包含 TensorFlow 镜像的 Docker 容器,执行以下命令:$ docker run -it -p hostPort:containerPort TensorFlowImage

where:-p hostPort:containerPort 是可选的,如果你想从 shell 运行 TensorFlow 程序忽略这个选项。如果你想从 Jupyter notebook 运行 TensorFlow 程序,hostPort 和 containerPort 都设置为 8888。如果你想在镜像中运行 TensorBoard,再添加一个-p参数,hostPort 和 containerPort 都设置为 6006。

TensorFlowImage 是需要的,它用于指定 Docker 容器,你必须指定接下来的任一一个:gcr.io/tensorflow/tensorflow: TensorFlow 二进制镜像,gcr.io/tensorflow/tensorflow:latest-devel: TensorFlow 二进制镜像加源码。

gcr.io 是 Goole 的容器注册表 (?),注意部分 TensorFlow 也可以从 dockerhub 获取。

例如,下面的命令可以在 Docker 容器中启动一个 TensorFlow CPU 镜像,然后你可以在镜像的 shell 中运行 TensorFlow 程序:$ docker run -it gcr.io/tensorflow/tensorflow bash

以下命令也可以在 Docker 容器中启动一个 TensorFlow CPU 镜像,然而,在这个 Docker 镜像中,你可以在 Jupyter notebook 中运行 TensorFlow 程序:$ docker run -it -p 8888:8888 gcr.io/tensorflow/tensorflow

Docker 将会先下载 TensorFlow 镜像然后启动它。

下一步

现在可以验证你的安装了。

使用 Anaconda 安装

Anaconda 安装只是社区而非官方支持

按照以下步骤在 Anaconda 环境中安装 TensorFlow:

1. 按照 Anaconda 下载站点 说明下载安装 Anaconda

2. 执行以下命令创建名为 tensorflow 的 conda 环境:$ conda create -n tensorflow

3. 执行以下命令激活 conda 环境:$ source activate tensorflow

(tensorflow)$ # Your prompt should change

4. 执行以下命令在你的 conda 环境中安装 TensorFlow:(tensorflow)$ pip install --ignore-installed --upgrade TF_PYTHON_URL

TF_PYTHON_URL 是TensorFlow Python包 的 URL,例如,以下命令是安装 Python 2.7 CPU-only 版本的 TensorFlow:(tensorflow)$ pip install --ignore-installed --upgrade \

https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.2.1-py2-none-any.whl

验证你的安装

要验证你的 TensorFlow 安装,操作以下步骤:保证你的环境可以运行 TensorFlow 程序

运行一个小的 TensorFlow 程序

准备你的环境

如果你使用本地 pip, virtualenv 或者 Anaconda 安装,操作以下步骤:打开一个终端

如果你使用 virtualenv 或 Anaconda 安装,激活你的容器

如果你安装了 TensorFlow 源码,进到任何一个处了包含 TensorFlow 源码的目录

如果通过 Docker 安装,启动一个运行 bash 的 Docker 容器,例如:$ docker run -it gcr.io/tensorflow/tensorflow bash

运行一个小的 TensorFlow 程序

在一个 shell 中执行 Python:$ python

在 python 交互式 shell 中输入以下小程序:# Python

import tensorflow as tf

hello = tf.constant('Hello, TensorFlow!')

sess = tf.Session()print(sess.run(hello))

如果系统输出以下内容,你可以开始写 TensorFlow 程序了:Hello, TensorFlow!

如果系统输出错误信息而不是欢迎语,参考 常见安装问题。

常见安装问题

我们依据 Stack Overflow 记录 TensorFlow 安装问题和相应的解决方法。下面的表格包括 Stack Overflow 常见的安装问题回复链接,如果你遇到的错误信息或者其它安装问题不在表格中,请在 Stack Overflow 上搜索。如果 Stack Overflow 上没有你搜索的错误信息,提一个新问题并且打上 tensorflow 标签。Stack Overflow LinkError Message42006320ImportError: Traceback (most recent call last):File “…/tensorflow/core/framework/graph_pb2.py”, line 6, in from google.protobuf import descriptor as _descriptorImportError: cannot import name ‘descriptor’

33623453IOError: [Errno 2] No such file or directory: ‘/tmp/pip-o6Tpui-build/setup.py’

35190574SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed

42009190Installing collected packages: setuptools, protobuf, wheel, numpy, tensorflow Found existing installation: setuptools 1.1.6 Uninstalling setuptools-1.1.6: Exception: … [Errno 1] Operation not permitted: ‘/tmp/pip-a1DXRT-uninstall/…/lib/python/_markerlib’

33622019ImportError: No module named copyreg

37810228During a pip install operation, the system returns:OSError: [Errno 1] Operation not permitted

33622842An import tensorflow statement triggers an error such as the following:Traceback (most recent call last): File “”, line 1, in File “/usr/local/lib/python2.7/site-packages/tensorflow/init.py”, line 4, in from tensorflow.python import * … File “/usr/local/lib/python2.7/site-packages/tensorflow/core/framework/tensorshapepb2.py”, line 22, in serialized_pb=_b(‘\n,tensorflow/core/framework/tensor_shape.proto\x12\ntensorflow\”d\n\x10TensorShapeProto\x12-\n\x03\x64im\x18\x02 \x03(\x0b\x32 .tensorflow.TensorShapeProto.Dim\x1a!\n\x03\x44im\x12\x0c\n\x04size\x18\x01 \x01(\x03\x12\x0c\n\x04name\x18\x02 \x01(\tb\x06proto3’) TypeError: __init() got an unexpected keyword argument ‘syntax’

42075397A pip install command triggers the following error:…You have not agreed to the Xcode license agreements, please run’xcodebuild -license’ (for user-level acceptance) or’sudo xcodebuild -license’ (for system-wide acceptance) from within aTerminal window to review and agree to the Xcode license agreements…. File “numpy/core/setup.py”, line 653, in get_mathlib_info raise RuntimeError(“Broken toolchain: cannot link a simple C program”)RuntimeError: Broken toolchain: cannot link a simple C program

TensorFlow Python 包 URL

一些安装方法需要 TensorFlow Python 包的 URL,值与三个方面有关 (?):操作系统

Python 版本

本节记录了 Mac OS 安装相关的值

Python 2.7https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.2.1-py2-none-any.whl

Python 3.4, 3.5, or 3.6https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.2.1-py3-none-any.whl

Protobuf pip package 3.1

如果你没有遇到 protobuf pip 包相关的问题可以跳过本节。

** 注意:** 如果你的 TensorFlow 运行很慢,可能是和 protobuf pip 包有关的问题。

TensorFlow pip 包依赖 protobuf pip 3.1 版本的包,从 PyPI 下载的 protobuf pip 包(在调用 pip install protobuf 时)是一个仅包含 Python 的库,其中包含执行速度比 C++ 实现慢 10 ~ 50 倍的原始序列化 / 反序列化的 Python 实现。 Protobuf 还支持包含基于快速 C++ 的原语解析的 Python 包的二进制扩展,此扩展在标准的仅 Python 专用 pip 包中不可用,我们为 protobuf 创建了一个包含二进制扩展名的自定义二进制 pip 包。要安装自定义二进制 protobuf pip 包,请调用以下命令之一:for Python 2.7:$ pip install --upgrade \

https://storage.googleapis.com/tensorflow/mac/cpu/protobuf-3.1.0-cp27-none-macosx_10_11_x86_64.whl

for Python 3.n:$ pip3 install --upgrade \

https://storage.googleapis.com/tensorflow/mac/cpu/protobuf-3.1.0-cp35-none-macosx_10_11_x86_64.whl

安装这些 protobuf 包将会覆盖已安装的包,注意二进制 pip 包已经支持大于 64M 的 protobufs,修复了如下报错:[libprotobuf ERROR google/protobuf/src/google/protobuf/io/coded_stream.cc:207]

A protocol message was rejected because it was too big (more than 67108864 bytes).

To increase the limit (or to disable these warnings), seeCodedInputStream::SetTotalBytesLimit() in google/protobuf/io/coded_stream.h.

雷锋网版权文章,未经授权禁止转载。详情见转载须知。

90



推荐阅读
  • 本文将详细介绍如何注册码云账号、配置SSH公钥、安装必要的开发工具,并逐步讲解如何下载、编译 HarmonyOS 2.0 源码。通过本文,您将能够顺利完成 HarmonyOS 2.0 的环境搭建和源码编译。 ... [详细]
  • Docker 中创建 CentOS 容器并安装 MySQL 进行本地连接
    本文详细介绍了如何在 Docker 中创建 CentOS 容器,并在容器中安装 MySQL 以实现本地连接。文章内容包括镜像拉取、容器创建、MySQL 安装与配置等步骤。 ... [详细]
  • 秒建一个后台管理系统?用这5个开源免费的Java项目就够了
    秒建一个后台管理系统?用这5个开源免费的Java项目就够了 ... [详细]
  • 本文介绍了如何使用 Node.js 和 Express(4.x 及以上版本)构建高效的文件上传功能。通过引入 `multer` 中间件,可以轻松实现文件上传。首先,需要通过 `npm install multer` 安装该中间件。接着,在 Express 应用中配置 `multer`,以处理多部分表单数据。本文详细讲解了 `multer` 的基本用法和高级配置,帮助开发者快速搭建稳定可靠的文件上传服务。 ... [详细]
  • 体积小巧的vsftpd与pureftpd Docker镜像在Unraid系统中的详细配置指南:支持TLS加密及IPv6协议
    本文详细介绍了如何在Unraid系统中配置体积小巧的vsftpd和Pure-FTPd Docker镜像,以支持TLS加密和IPv6协议。通过这些配置,用户可以实现安全、高效的文件传输服务,适用于各种网络环境。配置过程包括镜像的选择、环境变量的设置以及必要的安全措施,确保了系统的稳定性和数据的安全性。 ... [详细]
  • 在开发过程中,我最初也依赖于功能全面但操作繁琐的集成开发环境(IDE),如Borland Delphi 和 Microsoft Visual Studio。然而,随着对高效开发的追求,我逐渐转向了更加轻量级和灵活的工具组合。通过 CLIfe,我构建了一个高度定制化的开发环境,不仅提高了代码编写效率,还简化了项目管理流程。这一配置结合了多种强大的命令行工具和插件,使我在日常开发中能够更加得心应手。 ... [详细]
  • 提升 Kubernetes 集群管理效率的七大专业工具
    Kubernetes 在云原生环境中的应用日益广泛,然而集群管理的复杂性也随之增加。为了提高管理效率,本文推荐了七款专业工具,这些工具不仅能够简化日常操作,还能提升系统的稳定性和安全性。从自动化部署到监控和故障排查,这些工具覆盖了集群管理的各个方面,帮助管理员更好地应对挑战。 ... [详细]
  • Docker入门指南:初探容器化技术
    Docker入门指南:初探容器化技术摘要:Docker 是一个使用 Go 语言开发的开源容器平台,旨在实现应用程序的构建、分发和运行的标准化。通过将应用及其依赖打包成轻量级的容器,Docker 能够确保应用在任何环境中都能一致地运行,从而提高开发和部署的效率。本文将详细介绍 Docker 的基本概念、核心功能以及如何快速上手使用这一强大的容器化工具。 ... [详细]
  • Docker 环境下 MySQL 双主同步配置指南
    本文介绍了如何在 Docker 环境中配置 MySQL 的双主同步,包括目录结构的创建、配置文件的编写、容器的创建与设置以及最终的验证步骤。 ... [详细]
  • com.sun.javadoc.PackageDoc.exceptions()方法的使用及代码示例 ... [详细]
  • 大家好,我是李白。本文将分享一个从零开始的全栈项目,涵盖了设计、前端、后端和服务端的全面学习过程。通过这个项目,我希望能够帮助初学者更好地理解和掌握全栈开发的技术栈。 ... [详细]
  • Dell Latitude 5290 2-in-1 平板电脑黑苹果体验评测
    本文基于notebookcheck的详细数据和个人实际使用体验,对Dell Latitude 5290 2-in-1平板电脑进行评测。评测内容包括外观设计、散热性能、基准测试、游戏表现和续航能力等方面,旨在为读者提供全面的参考。 ... [详细]
  • 在Windows系统中安装TensorFlow GPU版的详细指南与常见问题解决
    在Windows系统中安装TensorFlow GPU版是许多深度学习初学者面临的挑战。本文详细介绍了安装过程中的每一个步骤,并针对常见的问题提供了有效的解决方案。通过本文的指导,读者可以顺利地完成安装并避免常见的陷阱。 ... [详细]
  • 本文介绍了如何在 Windows 系统上利用 Docker 构建一个包含 NGINX、PHP、MySQL、Redis 和 Elasticsearch 的集成开发环境。通过详细的步骤说明,帮助开发者快速搭建和配置这一复杂的技术栈,提升开发效率和环境一致性。 ... [详细]
  • 大家好,全新的技术专栏《从零开始掌握容器云网络实战》正式上线。该专栏将系统地介绍容器云网络的基础知识、核心技术和实际应用案例,帮助读者全面理解和掌握容器云网络的关键技术与实践方法。 ... [详细]
author-avatar
手机用户2602889447
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有