X

tensortFlow安装和开发环境配置

古人云,工欲善其事必先利其器,想要开始一个TensorFlow程序,一个好的开发工具是必不可少的。古人又云,万事开头难。如果你之前没有任何Python工程经验,你会发现看了很多入门文章,却不知道如何下手。今天就介绍下如何把TensorFlow工程环境搭建起来,剩下的就靠自己实践啦。
其实运行TensorFlow工程也就是运行一个Python工程,我大概看了下Python语法,用起来跟php、java没什么两样,大概是一些基本的数据类型,循环,条件等等,于是你可以使用pycharm很轻易的写出一段hello world!出来,但是你怎么去运行TensorFlow呢?

    原来TensorFlow只不过是一个依赖包,就像我们的java里的一个jar包一样,提供的是一个库里的一个功能,所以我们这里把Python的依赖搞清楚,也就解决了我们的工程环境问题。

    python的依赖管理

    说到Python的依赖管理,不得不提到pip,所有的依赖包都可以使用pip install 来安装,这点类似于java里的maven仓库,java通过pom.xml文件来管理jar包,然后自动从远程仓库把jar包给你下载到本地。同样的道理,pip install会把你的包下载到你的python的 site-packages里,所以你去那个路径下找你的安装包就行了。

    接着你使用官方的介绍文档开始安装TensorFlow,只有这个写的是最清楚明白的,https://www.tensorflow.org/install/install_mac?hl=zh-cn#ValidateYourInstallation。文章推荐你使用Virtualenv的安装方式来安装,那么Virtualenv是个什么东西呢?

    Virtualenv从名字就可以看出是一个虚拟的环境。这里的一个背景是,python对依赖包有多个版本时候的冲突问题。如果你一个工程依赖的是这个包的1.0,另外一个工程依赖的是2.0,结果就杯具了,因为他安装在同一个位置,导致包冲突。java里的maven仓库通过不同的路径很好的解决了这个问题,不知道python为什么不能多个版本?所以virtualenv就可以让你一个工程一个环境,互相不冲突。详细的介绍 https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001432712108300322c61f256c74803b43bfd65c6f8d0d0000

    接下来,你按照官方Virtualenv的方式,安装了你的TensorFlow,我们可以写一个程序来验证一下?结果你发现,import tensorflow as tf 就挂了。 真是命途多舛啊。
    不过没关系,多半是那个"ImportError: No module named protobuf".这个错误,只需要执行如下命令。(在Virtualenv下执行,不要deactivate), 
  
        pip uninstall protobuf
        pip install protobuf
        pip install --upgrade protobuf==3.0.0a3

    这个时候多半会遇到另外一个问题,那就是

 
TypeError: __init__() got an unexpected keyword argument ‘serialized_options'
 
这个时候执行
    pip install -U protobuf

多半就可以了,参考文章 :https://blog.csdn.net/qq_41185868/article/details/82890135

 

那么如何在我们的pycharm里运行我们的TensorFlow程序呢?

只需要设置你的Project interperter到你的Virtualenv那个目录下的python环境即可。可以看到我已经载入了很多依赖,这个时候pycharm可以解析这些依赖,你import的时候就能正常工作了。

    接下来你就可以到你的pycharm里练习这里的代码了。

https://developers.google.com/machine-learning/crash-course/first-steps-with-tensorflow/programming-exercises?hl=zh-cn

 

 

Categories: TensortFlow
龙安_任天兵: 不忘初心,方得始终!