安装Python

python3是通过Homebrew安装的,默认安装的是3.7.0版本,但TensorFlow目前只能在3.43.53.6上安装,因此首先需要安装3.6版本的python

首先运行命令

brew unlink python3

然后通过https://github.com/Homebrew/homebrew-core/commits/master/Formula/python.rb

找到要需要安装的python版本,我这里选择python:3.6.5_1 bottle,再用如下命令安装

brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python.rb

此时输入

python3 --version

发现得到

Python 3.6.5

则安装成功,/usr/local/Cellar/python中有3.6.5_13.7.0两个文件夹。

安装Virtualenv

TensorFlow的官方教程推荐使用Virtualenv的方式安装TensorFlow

Virtualenv是一个与其他Python开发相互隔离的虚拟Python环境,它无法干扰同一计算机上的其他Python程序,也不会受其影响。要开始使用TensorFlow,只需要“激活”虚拟环境。总而言之,Virtualenv提供一种安全可靠的机制来安装和运行TensorFlow

Virtualenvwrapper则是对Virtualenv提供了简易的命令行封装,可以更方便地管理虚拟环境。

首先安装VirtualenvVirtualenvwrapper

pip3 install virtualenv
pip3 install virtualenvwrapper

然后查找virtualenvwrapper.sh的位置:

which virtualenvwrapper.sh

得到

/usr/local/bin/virtualenvwrapper.sh

安装完成后先设置WORKON_HOME,即环境的存储路径,并且运行source /usr/local/bin/virtualenvwrapper.sh,注意,如果你的virtualenvvirtualenvwrapper安装在Homebrew安装的Python3中,还需要设置VIRTUALENVWRAPPER_PYTHON路径,否则会报No module named 'virtualenvwrapper'的错误。

export WORKON_HOME=~/myLibs/pyenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python3
source /usr/local/bin/virtualenvwrapper.sh

export命令和source命令加入到~/.bash_profile文件中,每次打开终端就无需初始化了。

一些常用的命令

workon                显示所有的环境名称
workon 环境名 进入/切换到该环境
deactivate 返回到系统环境
mkvirtualenv 环境名 新建环境
rmvirtualenv 移除环境

安装TensorFlow

安装

接下来安装TensorFlow,参考官方安装教程

首先输入下面的命令创建Virtualenv环境:

virtualenv --system-site-packages -p python3 ~/myLibs/pyenvs/tensorflow

然后输入下面命令激活Virtualenv环境:

cd ~/myLibs/pyenvs/tensorflow
source ./bin/activate # If using bash, sh, ksh, or zsh

执行上述source命令后,提示符应该会变成如下内容:

(tensorflow)$

接下来将TensorFlow及其所需的所有软件包安装到活动Virtualenv环境中:

(tensorflow)$ pip3 install --upgrade tensorflow

稍等片刻,TensorFlow就会安装完毕。

注意:每次在新的shell中使用TensorFlow时,都必须激活Virtualenv环境

如果Virtualenv环境当前未处于活动状态(即提示符不是(tensorflow) $),需调用以下命令:

cd ~/myLibs/pyenvs/tensorflow
source ./bin/activate

或者,找到activate文件所在的目录即~/myLibs/pyenvs/tensorflow/bin,在当前工作目录下直接执行下面命令也可快速进入虚拟环境,更方便快捷:

source ~/myLibs/pyenvs/tensorflow/bin/activate

进入虚拟环境后命令提示符将变成如下所示,则表示的tensorflow环境已处于活动状态:

(tensorflow) $

Virtualenv环境处于活动状态时,就可以从该shell运行TensorFlow程序了。

用完TensorFlow后,可以通过发出以下命令来停用此环境:

(tensorflow)$ deactivate

提示符将恢复为默认提示符。

测试

下面再运行一个简短的TensorFlow程序来测试其是否正确安装。

首先激活

shell中调用Python,如下所示:

$ python3

Python交互式shell中输入以下几行简短的程序代码:

>>> # python
>>> import tensorflow as tf
>>> hello = tf.constant('Hello, TensorFlow!')
>>> sess = tf.Session()
>>> print(sess.run(hello))

如果系统输出以下内容,则说明TensorFlow已加被正确安装:

Hello, TensorFlow!

如果发生错误,你就需要继续折腾了。

用PyCharm测试

新建PyCharm项目,一般需要做一番配置才可运行TensorFlow项目。

打开Preference,按照如下步骤操作即可。







卸载

如果需要卸载TensorFlow,只需移除之前创建的~/myLibs/pyenvs/tensorflow文件夹即可。

参考

macOS10.13.2配置TensorFlow的更多相关文章

  1. mac book pro macOS10.13.3安装qt、qt creator C++开发环境,qt5.11.1,并解决cmake构建:qt mac this file is not part of any project the code

    因为之前在Ubuntu下使用的是qtcreator开发,现在想在mac上装一个系统,因为许久未装了,还是花了点时间,不如写个博客,下次就更快安装了.在Mac OS X下使用Qt开发,需要配置Qt库和编 ...

  2. windows下Anaconda3配置TensorFlow深度学习库

    Anaconda3(python3.6)安装tensorflow Anaconda3中安装tensorflow3是非常简单的,仅需通过 pip install tensorflow 测试代码: imp ...

  3. mysql 5.7.13 安装配置方法图文教程(win10) (转)

    http://www.jb51.net/article/87152.htm ***************************** MySQL是一款关系型数据库管理系统,是由Oracle旗下公司M ...

  4. 使用亚马逊云服务器EC2做深度学习(三)配置TensorFlow

    这是<使用亚马逊云服务器EC2做深度学习>系列的第三篇文章. (一)申请竞价实例  (二)配置Jupyter Notebook服务器  (三)配置TensorFlow  (四)配置好的系统 ...

  5. hadoop生态搭建(3节点)-13.mongodb配置

    # 13.mongodb配置_副本集_认证授权# ==================================================================安装 mongod ...

  6. TensorFlow:在PyCharm中配置TensorFlow

    在本地配置好TensorFlow后,如何在PyCharm中配置TensorFlow呢? 只需将当前的Python编译环境配置为TensFlow安装路径中的Pyhton环境,具体操作如下: 1. 打开‘ ...

  7. linux 配置tensorflow 全过程记录

    前几天刚下一个deepin系统,是基于linux 内核的,界面的设计有些mac的feel 感觉还是挺不错的,之后就赶紧配置了一下tensorflow ,尽管之前配置过,但是这次还是遇到点儿问题,所以说 ...

  8. JUnit4.13环境配置

    Junit 4.13环境配置 JUnit是一个强大的单元测试工具.它可以针对某一个特定类的所有方法进行精确打击.这个东西具体怎么使用,留在以后说.这次给大家说说idea下配置JUnit环境的方法. 1 ...

  9. mysql 5.7.13 安装配置方法(linux)-后期部分运维

    mysql 5.7.13 安装配置方法图文教程(linux) 学习了:https://www.cnblogs.com/zhao1949/p/5947938.html /usr/local/mysql是 ...

随机推荐

  1. 对于CAN ID的理解

    本文主要讲的是自己对于CAN ID的理解,希望对需要的人有帮助,本文以通俗的方式来理解,不涉及到具体CAN通信. 在接触CAN之前,应该接触过IIC通信,在IIC通信中,在同一条IIC通信总线上每个d ...

  2. 洛谷P4630 铁人两项--圆方树

    一道很好的圆方树入门题 感谢PinkRabbit巨佬的博客,讲的太好啦 首先是构建圆方树的代码,也比较好想好记 void tarjan(int u) { dfn[u] = low[u] = ++dfn ...

  3. enumerate() 函数

    enumerate() 函数用于将一个可遍历的数据对象(如列表.元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中. 具体参考博客http://www.runoob. ...

  4. Exp3 免杀原理与实践

    一.实验过程 1.编码器 (1)使用msf编码器,直接生成meterpreter可执行文件(跟Exp2中生成backdoor.exe的过程一样,生成后门文件),送到Virscan.VirusTotal ...

  5. Java基础知识拾遗(四)

    IO SequenceInputStream,允许链接多个InputStream对象.在操作上该类从第一个InputStream对象进行读取,知道读取完全部内容,然后切换到第二个InputStream ...

  6. wpf编写一个简单的PDF转换的程序

    wpf 调用Spire.Pdf将PDF文件转换为其他文件模式 首先在Nuget里下载该第三方包Spire.Pdf. 然后可以编写程序 //这里我调用的是解析成流模式,这是因为我要使用ProgressB ...

  7. 深入理解Java设计模式之观察者模式

    前言 观察者,即时observer,总结来说就是一个当一个被观察的对象的状态发生变化时,会通知相应的观察者对象.   观察者模式定义了四种角色:抽象主题.具体主题.抽象观察者.具体观察者 1.抽象主题 ...

  8. 第二节:SSL证书的申请、配置(IIS通用)及跳转Https请求的两种方式

    一. 相关概念介绍 1. SSL证书服务 SSL证书服务由"服务商"联合多家国内外数字证书管理和颁发的权威机构.在xx云平台上直接提供的服务器数字证书.您可以在阿里云.腾讯云等平台 ...

  9. Python——built-in module Help: math

    Help on built-in module math: NAME math DESCRIPTION This module is always available. It provides acc ...

  10. AIC与BIC

    首先看几个问题 1.实现参数的稀疏有什么好处? 一个好处是可以简化模型.避免过拟合.因为一个模型中真正重要的参数可能并不多,如果考虑所有的参数作用,会引发过拟合.并且参数少了模型的解释能力会变强. 2 ...