背景

听说谷歌的第二代机器学习的框架tensorflow开源了,我也心血来潮去探探大牛的产品.怎奈安装就折腾了一天,现在整理出来备忘.

tensorflow官方网站给出的安装步骤很简单:

# Only CPU-version is available at the moment.
$ pip install https://storage.googleapis.com/tensorflow/mac/tensorflow-0.5.0-py2-none-any.whl

安装pip

用到了一个pip的工具,查了一下pip类似RedHat里面的yum,安装Python包非常方便.

好吧,那就装一个pip.pip的安装方法也很简单,就是前提需要先安装python.然后去下载pip的安装包,pip安装命令如下:

qyfmac$ tar zxvf pip-7.1.2.tar.gz
qyfmac$ cd pip-7.1.2
qyfmac$ python setup.py install

安装时报错了:

qyfmac$ python setup.py install

running install
Checking .pth file support in /Library/Python/2.7/site-packages/
error: can't create or remove files in install directory The following error occurred while trying to add or remove files in the
installation directory: [Errno 13] Permission denied: '/Library/Python/2.7/site-packages/test-easy-install-38643.pth' The installation directory you specified (via --install-dir, --prefix, or
the distutils default setting) was: /Library/Python/2.7/site-packages/ Perhaps your account does not have write access to this directory? If the
installation directory is a system-owned directory, you may need to sign in
as the administrator or "root" account. If you do not have administrative
access to this machine, you may wish to choose a different installation
directory, preferably one that is listed in your PYTHONPATH environment
variable. For information on other options, you may wish to consult the
documentation at: https://pythonhosted.org/setuptools/easy_install.html Please make the appropriate changes for your system and try again.

里面有个Permission denied意思是权限不足,我们加个sudo继续执行.

qyfmac$ sudo python setup.py install

安装完后执行命令pip freeze列出安装的packages验证一下pip安装好没.

qyfmac$ pip freeze
altgraph==0.10.2
bdist-mpkg==0.5.0
bonjour-py==0.3
macholib==1.5.1
matplotlib==1.3.1
modulegraph==0.10.4
numpy==1.10.1
py2app==0.7.3
...

列出了好多包,我唯一没搞懂的就是我什么时候装了这么多包.

安装tensorflow

到了我们的主角出场了.执行安装命令安装tensorflow.

qyfmac$ pip install https://storage.googleapis.com/tensorflow/mac/tensorflow-0.5.0-py2-none-any.whl

悲剧依旧发生了,googleapis.com这个鬼要弄把梯子才能访问,下载各种超时.

黄天不负苦心人,有一有心人已经下好并上传的了百度云 http://pan.baidu.com/s/1ntjaMnf 密码:sznb.

下载下来安装之.

qyfmac$ pip install --upgrade tensorflow-0.5.0-py2-none-any.whl

安装virtualenv

virtualenv是python的沙箱工具.我们毕竟是在自己机器上做实验,为了不来回修改各种环境变量,我们一般还是弄个沙箱完比较好.测试完直接删除就行,不用再去改各种配置文件.

用pip命令来安装:

qyfmac$ sudo pip install --upgrade virtualenv

安装好后创建一个工作目录,我直接在home里创建了个文件夹.

qyfmac$ virtualenv --system-site-packages ~/tensorflow

然后进入目录激活沙箱.

qyfmac$ cd ~/tensorflow
qyfmac$ source bin/activate
(tensorflow) qyfmac$

在virtualenv里安装tensorflow

把下载下来的tensorflow-0.5.0-py2-none-any.whl文件放到~/tensorflow目录里.

进入沙箱后,执行命令来安装tensorflow在沙箱中.

(tensorflow) qyfmac$ pip install --upgrade tensorflow-0.5.0-py2-none-any.whl

运行tensorflow

我是在virtualenv里运行的.直接在系统里执行方式是一样的.

照着官方文档敲了个简单例子.

(tensorflow) qyfmac$ python
Python 2.7.10 (default, Aug 22 2015, 20:33:39)
[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.0.59.1)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
>>> hello = tf.constant('Hello,TensorFlow!')
>>> sess = tf.Session()
>>> print sess.run(hello)
Hello, TensorFlow!
>>>

在敲see = tf.Session()这行时会报一个错

can't determine number of CPU cores: assuming 4
I tensorflow/core/common_runtime/local_device.cc:25] Local device intra op parallelism threads: 4
can't determine number of CPU cores: assuming 4
I tensorflow/core/common_runtime/local_session.cc:45] Local session inter op parallelism threads: 4

可以先不用理会,不影响最终执行结果.

参考

pdf文件下载:http://pan.baidu.com/s/1c1corG8

关于作者

学习tensorflow之mac上安装tensorflow的更多相关文章

  1. 在 Mac OS X 上安装 TensorFlow

    在 Mac OS X 上安装 TensorFlow 这个文档说明了如何在 Mac OS X 上安装 TensorFlow. 注意:从 1.2 版本开始,在 Mac OS X 上 TensorFlow ...

  2. Windows上安装tensorflow 详细教程

    原博客转载自:https://www.cnblogs.com/lvsling/p/8672404.html 一, 前言:本次安装tensorflow是基于Python的,安装Python的过程不做说明 ...

  3. 在Ubuntu 18.04上安装Tensorflow

    我们将经历几个阶段,安装cuda-9.0,cudnn和tensorflow cpu以及tensorflow gpu版本.最后我们将用cuda-9.0安装pytorch.在MARVEl电影中黑寡妇的“我 ...

  4. 在 Ubuntu 上安装 TensorFlow (官方文档的翻译)

    本指南介绍了如何在 Ubuntu 上安装 TensorFlow.这些指令也可能对其他 Linux 变体起作用, 但是我们只在Ubuntu 14.04 或更高版本上测试了(我们只支持)  这些指令. 一 ...

  5. 通过Anaconda在Ubuntu16.04上安装 TensorFlow(GPU版本)

    一. 安装环境 Ubuntu16.04.3 LST GPU: GeForce GTX1070 Python: 3.5 CUDA Toolkit 8.0 GA1 (Sept 2016) cuDNN v6 ...

  6. Win10上安装TensorFlow(官方文档翻译)

    一.推荐两个网站 TensorFlow官方文档:https://www.tensorflow.org/install/install_windows TensorFlow中文社区:http://www ...

  7. 【pycharm】pycharm上安装tensorflow,报错:AttributeError: module 'pip' has no attribute 'main' 解决方法

    pycharm上安装tensorflow,报错:AttributeError: module 'pip' has no attribute 'main' 解决方法 解决方法: 在pycharm的安装目 ...

  8. 在 Windows 上安装 TensorFlow(转载)

    在 Windows 上安装 TensorFlow windows下配置安装Anaconda+tensorflow Spyder——科学的Python开发环境 Windows7 安装TensorFlow ...

  9. Git学习系列之Windows上安装Git详细步骤(图文详解)

    前言 最初,Git是用于Linux下的内核代码管理.因为其非常好用,目前,已经被成功移植到Mac和Windows操作系统下. 鉴于大部分使用者使用的是Windows操作系统,故,这里详细讲解Windo ...

随机推荐

  1. C#互斥体——Mutex

    Mutex对象是一个同步基元,可以用来做线程间的同步. 若多个线程需要共享一个资源,可以在这些线程中使用Mutex同步基元.当某一个线程占用Mutex对象时,其他也需要占用Mutex的线程将处于挂起状 ...

  2. ACM-东北大学程序设计竞赛-网络赛(2016.04.16)

    Problem: A Time limit: 1s    Mem limit: 64 MB    AC/Submission: 0/0    Discuss Back   Ranklist  Stat ...

  3. js制作点击会自动隐藏的导航栏(固定在在头部的)

    想必大家应该见过这样的特效,本来头部是固定在网页的最上方的,点一下缩进去,再点一下 又可以缩回来,这种效果怎么实现的呢,我今天就做了一个.菜鸟勿喷. @charset "utf-8" ...

  4. C#对SQL Server数据库的备份与还原

    备份数据库: string connectionString = "server=服务器名称;database=数据库名;uid=登入名;pwd=登入密码";         // ...

  5. Bootstrap Navbar应用及源码解析

    目的: 用Bootstrap Navbar component 实现一个响应式导航 理解Bootstrap Navbar component是如何工作的(不包括collepse.js) 清楚自己添加一 ...

  6. php 简单权限管理实现

    权限管理介绍.与简单实现思想 权限管理 此函数为模块访问权限管理 实现思路为:根据传进来的权限值,进入不同的权限获取区间,然后根据模块名字判断是否有这个模块的访问权限 使用说明:在每一个模块开始之前调 ...

  7. jquery制作论坛或社交网站的每天打卡签到特效

    效果:http://hovertree.com/texiao/jquery/50/ 现在许多社区,购物等网站都设置签到功能,打开可以收获经验.虚拟币等,提高用户粘性,增加浏览量,是一个不错的功能.本文 ...

  8. XmlReader和XElement组合之读取大型xml文档

    简介 在.NET framework 中存在大量操作xml数据的类库和api,但在.NET framework 3.5后我们的首选一般就是linq to xml. linq to xml操作xml数据 ...

  9. 使用js批量选中功能实现更改数据库中的status状态值(批量展示)

    我们在开发项目的时候经常会在后台管理时用到批量展示功能来动态的修改数据库的值.下面以修改数据库的status状态值来实现批量展示功能.批量选中功能引用js来实现.前端html代码: <table ...

  10. table中设置border的问题

    今天在修改table样式的时,想给tr加个border-bottom,一开始用的颜色比较浅,我还以为看电脑太久眼花,结果换了比较深的颜色后,border-bottom真的没有出来.   忽然想起在ht ...