美文网首页我爱编程
Mac在anaconda下安装tensorflow记录2018-

Mac在anaconda下安装tensorflow记录2018-

作者: 开子的私家地 | 来源:发表于2018-06-10 20:47 被阅读13次

    前言

    如果直接用anaconda的界面安装,会出现warn(没法CPU加速),网友说pip下载也会遇到这个问题安装tensorflow后验证时出现warning2018-06-09
    参考了[1],发现我的Macbook Pro不支持GPU加速(需N卡且满足要求),显卡是Intel Iris Plus Graphics 640。
    想用Mac加速的可以参考[2]。
    想安装Anaconda配置py2/py3环境参考另一篇文章Mac下sublime配置Anaconda(python2 & python3)环境2018-05-03

    安装过程(方法1)

    下载官方的tensorflow源码

    参考[3]使用git clone的形式,注意:下载速度很慢,100K

    (python36) KaideMacBook-Pro:~ tangkaisky$ git clone https://github.com/tensorflow/tensorflow
    

    然后出错

    (python36) KaideMacBook-Pro:~ tangkaisky$ git clone https://github.com/tensorflow/tensorflow
    Cloning into 'tensorflow'...
    remote: Counting objects: 365769, done.
    remote: Compressing objects: 100% (7/7), done.
    error: RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 50
    fatal: The remote end hung up unexpectedly
    fatal: early EOF
    fatal: index-pack failed
    

    所以参考[4]用export设置环境变量,对应版本查看https://github.com/tensorflow/tensorflow/,查找适合的版本

    image.png
    我指定了CPU版本
    (python36) KaideMacBook-Pro:~ tangkaisky$ export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.6.0-py3-none-any.whl
    

    安装tensorflow

    # pip install
    (python36) KaideMacBook-Pro:~ tangkaisky$ pip install --ignore-installed --upgrade $TF_BINARY_URL
    

    测试安装

    # python
    # coding: utf-8
    import tensorflow as tf 
    hello = tf.constant('Hello, Tensorflow!')
    sess = tf.Session()
    print(sess.run(hello))
    

    运行成功,但出现I 信息:意思是tensorflow觉得电脑CPU还行,可以使用速度更快的模式

    2018-06-10 19:57:03.579167: I tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
    b'Hello, Tensorflow!'
    

    解决方案

    参考[5][6][7]里说的
    大概意思是tensorflow默认不进行CPU拓展,像SSE4.1, SSE4.2, AVX, AVX2, FMA。这个地方还有争议,就是即使加上这些拓展速度也慢于GPU,所以中大型机器学习训练应该在GPU上执行。
    所以可以直接忽略掉INFO级别信息就好,搞定。

    import os
    os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
    

    可参看另一篇文章安装tensorflow后验证时出现warning2018-06-09

    安装过程(方法2)

    参考[8][9],只完成安装bazel,未全部完成。
    这个方法可以解决上述警告,开启所有CPU拓展,但应该可行~

    安装bazel

    注:我先激活了python36的环境才进行以下操作,但安装bazel是不需要进入激活环境的。

    (base) KaideMacBook-Pro:~ tangkaisky$ source activate python36
    (python36) KaideMacBook-Pro:~ tangkaisky$ brew install bazel
    

    报错:因为需要依赖Java 1.8

    bazel: Java 1.8 is required to install this formula.
    JavaRequirement unsatisfied!
    You can install with Homebrew-Cask:
     brew cask install homebrew/cask-versions/java8
    You can download from:
     https://www.oracle.com/technetwork/java/javase/downloads/index.html
    

    安装java8

    (python36) KaideMacBook-Pro:~ tangkaisky$ brew cask install homebrew/cask-versions/java8
    

    再次安装bazel

    (python36) KaideMacBook-Pro:~ tangkaisky$ brew install bazel
    

    参考

    [1]osx苹果电脑安装TensorFlow(GPU)
    [2]在我的Macbook Pro上安装能使用GPU加速的Theano
    [3]Mac下使用源码编译安装TensorFlow CPU版本
    [4]Mac上Anaconda+Tensorflow安装
    [5]https://blog.csdn.net/CliuGeek/article/details/78836598
    [6]安装Python3.5和Tensorflow中遇到的问题 - CSDN博客
    [7]https://github.com/tensorflow/tensorflow/issues/8037
    [8]TensorFlow CPU环境 SSE/AVX/FMA 指令集编译
    [9]https://www.tensorflow.org/install/install_sources

    相关文章

      网友评论

        本文标题:Mac在anaconda下安装tensorflow记录2018-

        本文链接:https://www.haomeiwen.com/subject/vxyxeftx.html