macOS10.13.2配置TensorFlow

摘要:
Python Python 3是通过Homebrew安装的。默认安装版本为3.7.0。然而,TensorFlow目前只能安装在3.4、3.5和3.6上,因此需要先安装python的3.6版本。安装VirtualenvTensorFlow的官方教程建议使用Virtualenv安装TensorFlow。简而言之,Virtualenv提供了一种安全可靠的机制来安装和运行TensorFlow。接下来,运行一个简短的TensorFlow程序来测试它是否安装正确。使用PyCharm测试创建新的PyCharm项目。通常,您需要在运行TensorFlow项目之前进行一些配置。

安装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,按照如下步骤操作即可。
pycharm1
pycharm2
pycharm3
pycharm4

卸载

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

参考

免责声明:文章转载自《macOS10.13.2配置TensorFlow》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇学习笔记:oracle学习一:oracle11g体系结构之服务器结构、数据字典去掉谷歌浏览器输入框的默认黄色背景下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Python 100行代码实现2048小游戏

首先我们来看看我们效果图:  这是最简版后期可以去优化,后端自己写一个可视化页面,或者配上一个前端,可以使我们的程序变得更绚丽。 下面我们开始我们的代码 一、构造一个把0元素移至末尾的函数 [2, 4, 0, 2] --> [2, 4, 2, 0] 1 def zero_end(): 2 """ 3 0元素移至到末尾 4...

Linux之文档与目录结构

Linux文件系统结构 Linux目录结构的组织形式和Windows有很大的不同。首先Linux没有“盘(C盘、D盘、E盘)”的概念。已经建立文件系统的硬盘分区被挂载到某一个目录下,用户通过操作目录来实现磁盘读写。 Linux不像Windows那样的系统目录,Linux使用正斜杠"/"而不是反斜杠""来标识目录。 Windows目录: Linux目录:...

python基础知识5——赋值与深浅拷贝——整数和字符串,列表元组字典

深浅copy      和很多语言一样,Python中也分为简单赋值、浅拷贝、深拷贝这几种“拷贝”方式。 在学习过程中,一开始对浅拷贝理解很模糊。不过经过一系列的实验后,我发现对这三者的概念有了进一步的了解。 一、赋值 赋值算是这三种操作中最常见的了,我们通过一些例子来分析下赋值操作: str例 1 >>> a = 'hello' 2 &...

python爬虫学习---爬取微软必应翻译(中英互译)

  前言本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。作者:OSinooO        本人属于python新手,刚学习的 python爬虫基础迫不及待地想试一试,看了论坛里大佬们写的在线翻译爬虫程序,想着自己把它写出来,以下是我爬微软翻译的过程,作为笔记记录下来: 1.获取信...

Python实战---制作专属有声小说(调用百度语音合成接口)

这一次的目标是使用百度云的人工智能接口,实现文字转语音的实时转换,将小说文字转换成语音朗读出来。 百度云接口调用 百度的这个接口对于我们普通用户非常友好,他的很多功能都是免费的,而且我们每天可以免费调用这个接口五千次,非常适合我们玩转这些功能。 注册百度云账号 首先打开百度云语音合成模块接口地址 打开网址后点击《立即使用》选项,然后会出现登录的选项界面。如...

django之数据库表的单表查询

一、添加表记录 对于单表有两种方式 # 添加数据的两种方式 # 方式一:实例化对象就是一条表记录 Frank_obj = models.Student(name ="海东",course="python",birth="2000-9-9",fenshu=80) Frank_obj.save() # 方式二: mo...