macOS10.13.2配置TensorFlow
安装Python
python3是通过Homebrew安装的,默认安装的是3.7.0版本,但TensorFlow目前只能在3.4,3.5,3.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_1和3.7.0两个文件夹。
安装Virtualenv
TensorFlow的官方教程推荐使用Virtualenv的方式安装TensorFlow。
Virtualenv是一个与其他Python开发相互隔离的虚拟Python环境,它无法干扰同一计算机上的其他Python程序,也不会受其影响。要开始使用TensorFlow,只需要“激活”虚拟环境。总而言之,Virtualenv提供一种安全可靠的机制来安装和运行TensorFlow。
Virtualenvwrapper则是对Virtualenv提供了简易的命令行封装,可以更方便地管理虚拟环境。
首先安装Virtualenv和Virtualenvwrapper:
pip3 install virtualenv
pip3 install virtualenvwrapper
然后查找virtualenvwrapper.sh的位置:
which virtualenvwrapper.sh
得到
/usr/local/bin/virtualenvwrapper.sh
安装完成后先设置WORKON_HOME,即环境的存储路径,并且运行source /usr/local/bin/virtualenvwrapper.sh,注意,如果你的virtualenv和virtualenvwrapper安装在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文件夹即可。
参考
- 在 macOS 上安装 TensorFlow
- Mac下安装Python虚拟环境Virtualenv
- No module named 'virtualenvwrapper'
- 为什么pycharm中无法import tensorflow?
macOS10.13.2配置TensorFlow的更多相关文章
- 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库和编 ...
- windows下Anaconda3配置TensorFlow深度学习库
Anaconda3(python3.6)安装tensorflow Anaconda3中安装tensorflow3是非常简单的,仅需通过 pip install tensorflow 测试代码: imp ...
- mysql 5.7.13 安装配置方法图文教程(win10) (转)
http://www.jb51.net/article/87152.htm ***************************** MySQL是一款关系型数据库管理系统,是由Oracle旗下公司M ...
- 使用亚马逊云服务器EC2做深度学习(三)配置TensorFlow
这是<使用亚马逊云服务器EC2做深度学习>系列的第三篇文章. (一)申请竞价实例 (二)配置Jupyter Notebook服务器 (三)配置TensorFlow (四)配置好的系统 ...
- hadoop生态搭建(3节点)-13.mongodb配置
# 13.mongodb配置_副本集_认证授权# ==================================================================安装 mongod ...
- TensorFlow:在PyCharm中配置TensorFlow
在本地配置好TensorFlow后,如何在PyCharm中配置TensorFlow呢? 只需将当前的Python编译环境配置为TensFlow安装路径中的Pyhton环境,具体操作如下: 1. 打开‘ ...
- linux 配置tensorflow 全过程记录
前几天刚下一个deepin系统,是基于linux 内核的,界面的设计有些mac的feel 感觉还是挺不错的,之后就赶紧配置了一下tensorflow ,尽管之前配置过,但是这次还是遇到点儿问题,所以说 ...
- JUnit4.13环境配置
Junit 4.13环境配置 JUnit是一个强大的单元测试工具.它可以针对某一个特定类的所有方法进行精确打击.这个东西具体怎么使用,留在以后说.这次给大家说说idea下配置JUnit环境的方法. 1 ...
- mysql 5.7.13 安装配置方法(linux)-后期部分运维
mysql 5.7.13 安装配置方法图文教程(linux) 学习了:https://www.cnblogs.com/zhao1949/p/5947938.html /usr/local/mysql是 ...
随机推荐
- 对于CAN ID的理解
本文主要讲的是自己对于CAN ID的理解,希望对需要的人有帮助,本文以通俗的方式来理解,不涉及到具体CAN通信. 在接触CAN之前,应该接触过IIC通信,在IIC通信中,在同一条IIC通信总线上每个d ...
- 洛谷P4630 铁人两项--圆方树
一道很好的圆方树入门题 感谢PinkRabbit巨佬的博客,讲的太好啦 首先是构建圆方树的代码,也比较好想好记 void tarjan(int u) { dfn[u] = low[u] = ++dfn ...
- enumerate() 函数
enumerate() 函数用于将一个可遍历的数据对象(如列表.元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中. 具体参考博客http://www.runoob. ...
- Exp3 免杀原理与实践
一.实验过程 1.编码器 (1)使用msf编码器,直接生成meterpreter可执行文件(跟Exp2中生成backdoor.exe的过程一样,生成后门文件),送到Virscan.VirusTotal ...
- Java基础知识拾遗(四)
IO SequenceInputStream,允许链接多个InputStream对象.在操作上该类从第一个InputStream对象进行读取,知道读取完全部内容,然后切换到第二个InputStream ...
- wpf编写一个简单的PDF转换的程序
wpf 调用Spire.Pdf将PDF文件转换为其他文件模式 首先在Nuget里下载该第三方包Spire.Pdf. 然后可以编写程序 //这里我调用的是解析成流模式,这是因为我要使用ProgressB ...
- 深入理解Java设计模式之观察者模式
前言 观察者,即时observer,总结来说就是一个当一个被观察的对象的状态发生变化时,会通知相应的观察者对象. 观察者模式定义了四种角色:抽象主题.具体主题.抽象观察者.具体观察者 1.抽象主题 ...
- 第二节:SSL证书的申请、配置(IIS通用)及跳转Https请求的两种方式
一. 相关概念介绍 1. SSL证书服务 SSL证书服务由"服务商"联合多家国内外数字证书管理和颁发的权威机构.在xx云平台上直接提供的服务器数字证书.您可以在阿里云.腾讯云等平台 ...
- Python——built-in module Help: math
Help on built-in module math: NAME math DESCRIPTION This module is always available. It provides acc ...
- AIC与BIC
首先看几个问题 1.实现参数的稀疏有什么好处? 一个好处是可以简化模型.避免过拟合.因为一个模型中真正重要的参数可能并不多,如果考虑所有的参数作用,会引发过拟合.并且参数少了模型的解释能力会变强. 2 ...