安装Tensorflow

                    版权声明:本文为博主原创文章,未经博主允许不得转载。                        https://blog.csdn.net/Cs_hnu_scw/article/details/79695347                    </div>
                                                <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-3019150162.css">
                                    <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-3019150162.css">
            <div class="htmledit_views" id="content_views">
                                        <h3>&nbsp; &nbsp; &nbsp;现在越来越多的人工智能和机器学习以及深度学习,强化学习出现了,然后自己也对这个产生了点兴趣,特别的进行了一点点学习,就通过这篇文章来简单介绍一下,关于如何搭建Tensorflow以及如何进行使用。建议的话,还是要学习了一点Python基础知识和Linux知识是最好的!</h3>

版本:Windows7

一:安装Anaconda和Tensorflow

步骤:

1:从官方网站下载Anaconda

https://www.anaconda.com/download/

2:进行软件安装(这个和普通的没什么特别区别)

注意一点:

3:安装完成Anaconda之后进行环境变量的测试

进入到windows中的命令模式:

(1)检测anaconda环境是否安装成功:conda --version

(2)检测目前安装了哪些环境变量:conda info --envs

(3)对于Anaconda中安装一个内置的python版本解析器(其实就是python的版本)

        查看当前有哪些可以使用的python版本:conda search  --full -name python

    (备注:如果是用比较新的版本的话,就使用conda search  --full --name python       它们的name的前面是两个‘-’)

        安装python版本(我这里是安装的3.5的版本,这个根据需求来吧):conda create --name tensorflow python=3.5

(4)激活tensflow的环境:activate tensorflow(注意:这个是在后序安装成功之后才能进行的,否则会提示错误)

(5)检测tensflow的环境添加到了Anaconda里面:conda info --envs(注意:基于后序安装成功之后才进行的,否则会提示错误)

(6)检测当前环境中的python的版本:python --version

(7)退出tensorflow的环境:deactivate

(8)切换到tensorflow的环境:activate tensorflow      

上面的这些基本就可以对于Anaconda有一个比较简单的了解,其实它就类似于JDK的一些操作,比如我们查看jdk的版本,也可以用java --version ,所以说对于Anaconda去安装tensorflow是比较简单的原因也正是这样,也就是是给我们提供了一个基础的依赖环境,这样就方便我们进行后面的安装操作;

Anaconda的官方开发文档,可以看看,还是官网的东西更加好:

https://docs.anaconda.com/anaconda/user-guide/getting-started

https://anaconda.org/

4:进行正式的安装Tensorflow

注意事项:根据Tensorflow的官方文档,可以得到安装tensorflow的一个命令是下面:

pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.0.0-cp35-cp35m-win_x86_64.whl

但是,如果我们在cmd中,直接进行这样的话,有可能是不能够成功的,开始也不知道为什么,后面发现是跟电脑的cpu和显卡有点关系,所以,采取后面的方法进行安装;

5:通过命令:pip install --upgrade --ignore-installed tensorflow

剩下的就是慢慢的等待安装的过程啦

温馨提示:(1)如果在这个命令之后,有提示说需要你升级你的pip的版本,那么你就根据上面的提示进行命令安装就可以了

6:等待完成之后,确认是否安装成功

(1)打开之前安装的Anaconda

这两个都可以,我这里说一下使用Anaconda Prompt的方式;

方法一:步骤:①直接点击进入,就会显示如下的内容:

②切换到tensorflow的环境

③进入python编辑环境

④然后编写一个使用的代码:

方法二:通过使用Anaconda中的spyder的编辑器

通过这个的方式的话,更加简单,直接编写上面的代码,然后进行运行就可以啦,我这里就不多介绍了。。。

7:OK,到这里的话,基本上从安装到成功就已经实现了~~~~

温馨提示:如果你发现,你的conda和tensorflow环境都是安装成功的,但是一用测试代码进行跑的时候就出问题了,那么请注意,这个原因你由于你在安装tensorflow的时候,是直接在cmd下,而不是在你用conda激活的一个环境,所以导致,tensorflow并没有直接嵌入到conda环境,所以,就导致无法导入模块的一个错误;

解决方法:(1)只需要在activate tensorflow      ----------注意:这个环境是第三步中的第3点里面创建的;

(2)然后再使用第五步中的命令就可以了  

二:将Tensorflow环境嵌入到编辑器中

环境:Tensorflow和Pycharm编辑器

步骤:

1:下载Pycharm软件,,这个的话下载安装都很简单,所以就不多说了

2:使用Pycharm创建一个项目

3:设置项目的相关内容

温馨提示:注意上面的Interpreter的选择,因为我们现在要测试的是tensorflow嵌入到我们的IDE,方便我们开发,所以这个python解析器就是要选择我们之前安装tensorflow目录下的解析器,否则的话,我们之后是使用不了tensorflow的模块的内容的哦。。。特别要注意。。。当然,如果这里不选择,那么在创建工程之后还是可以修改的,后面我会说;

4:创建一个py文件,用于编写测试代码

5:运行程序代码

OKOK,,,这就说明我们的环境已经整合完成啦。。。。大功告成

温馨提示:有时候我们会发现,我们引入了tensorflow模块之后,那就会报错,这个原因有如下可能:

(1)tensorflow没有安装成功,这样的话,就需要重新按照我的步骤去了!

(2)IDE中的python解析器,没有使用tensorflow中安装的那个,所以导致无法识别

这个解决方案有两种:

第一种:就是创建工程的时候就选择正确的解析器,也就是我上面所使用的方法

第二种:就是在项目工程里面进行修改配置:

步骤:1:选择File----》setting

2:

3:添加新的解析器

4:找到我们安装的Anadonda中的env中的tensorflow中的python.exe

5:点击apply应用,然后重启我们的IDE,这样的话就不会报无法找到tensorflow的模块的错误了。

版本:Linux(Ubuntu14.0.1)

三:Linux环境安装Tensorflow(通过Anaconda方式)

步骤:(1)下载Anaconda的Linux版本   https://www.anaconda.com/download/#linux

从官网的路径进行下载,一般都很慢,所以,大家可以去这个地址进行下载(或者在进行留言也可以):https://download.csdn.net/download/cs_hnu_scw/10389323

(2)运行下载好的Anaconda,找到下载的目录,然后执行命令:bash XXXXXXXXX(就是Anaconda文件的名字)

(3)一直等待安装完成即可;

当出现下面这个的时候:

强烈注意一点:在安装的时候,会提示你是否要将这个添加到环境变量中,最好选择Yes,要不然每次都要进行额外的手动添加,非常的不方便,所以强烈建议直接添加到环境变量中;

(4)当执行完成上面的步骤之后,对Anaconda 的环境进行测试;

执行命令:conda --version (作用:查看当前Anaconda的版本)

如果,出现对应的安装版本,那么就表示安装成功,可以继续后面的安装步骤。

(5)添加tensorflow的环境。执行命令:conda create -n tensorflow python=3.5(版本的话,我个人比较喜欢3.X+版本)。当执行完成之后,就根据提示,进行输入yes就可以了,慢慢等待。

(6)激活环境,执行命令:source activate tensorflow (作用:进入到tensorflow的环境)

(7)激活tensorflow的环境,执行命令:

pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.8.0rc0-cp27-none-linux_x86_64.whl

千万要注意一个地方:如果你安装的python的版本是2.7.那么就用上面的地址,即可,如果你用了3.5版本,那么久需要对应的修改为如下链接:(其他版本类似修改)

pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.12.1-cp35-cp35m-linux_x86_64.whl

(8)执行完之后,剩下的就只有等待了,,,对于出现的提示,全部都是“yes”即可。

(9)安装完成之后,进行测试。

具体步骤:

1:在tensorflow的环境下,执行命令:python      (作用:表示进入python环境)

2:然后输入代码(这个其实和windows安装的时候测试时一样):


 
  1. import tensorflow as tf
  2. hello = tf.constant( 'first tensorflow')
  3. sess = tf.Session()
  4. print sess.run(hello)

如果:输出first tensorflow ,那么就表示安装成功了。

补充内容:

1:当需要退出python环境,即执行Ctrl+D或者输入quit即可

2:退出tensorflow环境,source deactivate

3:激活tensorflow环境,source activate tensorflow

四:Pycharm整合tensorflow环境

(1)下载Pycharm,这个就自己到官网下载Linux的社区版本即可,然后对其下载的文件进行相应的解压命令处理就可以了,另外的话,注意一点,在Linux中运行Pycharm不是直接点击就运行,而是需要找到对应的目录下(bin目录),然后执行命令:sh pycharm.sh 即可运行Pycharm。

(2)这个其实和windows的整合方式是一样的,只是说tensorflow的路径是不一样的而已,所以,大家可以参考上面对于Windows版本的详细配置过程即可,这里就不多说了。

---------------------------------------------------------------------------------------------------------------------------------

五:Tensorflow的案例实践

(1)案列实践:通过百度云盘下载我分享的内容即可,里面的内容都是封装好的,所以应该能看懂

项目链接:https://pan.baidu.com/s/1-TelzkLHodDNsdX6G82ZOg       密码:b05p

温馨提示:(1)在运行这个代码的时候,会出现ImportError: No module named 'matplotlib',这是因为你python中缺少了这个包,所以需要进行额外添加;或者进入tensorflow的环境,然后通过pip install matplotlib

解决办法:进入cmd,然后conda install matplotlib ,,然后等安装成功即可,这时候就会找到从而解决这个问题;

(2)手写数字的识别案例:

数据:https://pan.baidu.com/s/1UC6uBPPOBzZhYvNV93RgNw

代码:


 
  1. #!/usr/bin/python
  2. # -*- coding:utf-8 -*-
  3. # @Time : 2018/3/30 0030 15:20
  4. # @Author : scw
  5. # @File : writenumbercompute.py
  6. # 描述:进行手写数字的识别的实例分析
  7. import tensorflow as tf
  8. from tensorflow.examples.tutorials.mnist import input_data
  9. # 获取数据
  10. mnist = input_data.read_data_sets( "E:/tensorflowdata/MNIST_data/",one_hot= True)
  11. print( '训练集信息:')
  12. print(mnist.train.images.shape,mnist.train.labels.shape)
  13. print( '测试集信息:')
  14. print(mnist.test.images.shape,mnist.test.labels.shape)
  15. print( '验证集信息:')
  16. print(mnist.validation.images.shape,mnist.validation.labels.shape)
  17. # 构建图
  18. sess = tf.InteractiveSession()
  19. x = tf.placeholder(tf.float32,[ None,784])
  20. W = tf.Variable(tf.zeros([ 784,10]))
  21. b = tf.Variable(tf.zeros([ 10]))
  22. y = tf.nn.softmax(tf.matmul(x,W) + b)
  23. y_ = tf.placeholder(tf.float32,10])
  24. cross_entropy = tf.reduce_mean(-tf.reduce_sum(y_ * tf.log(y),reduction_indices=[ 1]))
  25. train_step = tf.train.GradientDescentOptimizer( 0.5).minimize(cross_entropy)
  26. # 进行训练
  27. tf.global_variables_initializer().run()
  28. for i in range( 1000):
  29. batch_xs,batch_ys = mnist.train.next_batch( 100)
  30. train_step.run({x: batch_xs,y_: batch_ys})
  31. # 模型评估
  32. correct_prediction = tf.equal(tf.argmax(y,1),tf.argmax(y_,1))
  33. accuracy = tf.reduce_mean(tf.cast(correct_prediction,tf.float32))
  34. print( 'MNIST手写图片准确率:')
  35. print(accuracy.eval({x: mnist.test.images,y_: mnist.test.labels}))

(3)拨号键与短信息图标的识别

功能描述:主要是实现对于拨号键图标与短信息键图标的一个识别,作为一个简单的分类Demo。

百度云地址:链接:https://pan.baidu.com/s/1MC7Recml5laTsrHBQ94NcA               密码:nwxj

(4)人脸捕捉和识别

功能描述:对于某个特定的人物进行捕捉,并且能识别是否是训练中的人脸,作为一个人脸识别的Demo。

由于这个数据集太多了,百度云不让传,所以,如果有需要的同学,可以留言,我会每天都进行查看消息的。

github地址:https://github.com/qq496616246/FaceCheckPython.git

或者git@github.com:qq496616246/FaceCheckPython.git

(5)简单的网页爬虫

功能描述:非常简单,容易上手的网页爬虫小Demo。

百度云地址:链接:https://pan.baidu.com/s/1FzIzmfYON9pUpms3GyVQqQ           密码:5di1

六:安装的一些额外库的方法

(1)安装cv2:pip install opencv-python

(2)安装人脸识别的库:pip install dlib == 18.17.100

(3)安装机器学习的库:pip install sklearn

(4)安装scipy库:pip install scipy

(5)安装numpy库:pip install numpy

(6)安装Pillow图像库:pip install Pillow

(7)安装matplotlib绘图库:pip install matplotlib

(8)升级pip:python -m pip install -U pip

(9)安装word2vec:必须先安装Cython,其次pip install word2vec (如果提示你没有对应的文件,那么说明你电脑没有c++的编辑环境(windows默认不带),所以先安装一个c++的编译软件,比如VS,Dev-App都可以)可以参考如下博客:

https://blog.csdn.net/BEYONDMA/article/details/88381650

七:常见的一些问题汇总

(1)问题:在cmd中,输入conda 命令,提示conda不是内部命令

解决方法:在环境变量(系统的Path)中添加:你的Anaconda安装目录下面的Scripts这个目录,比如我的就是,

D:\anacondadownload\Scripts

(2)

原文地址:https://blog.csdn.net/pary__for

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Python中的函数(二) 在上一篇文章中提到了Python中函数的定义和使用,在这篇文章里我们来讨论下关于函数的一些更深的话题。在学习C语言函数的时候,遇到的问题主要有形参实参的区别、参数的传递和改变、变量的作用域。同样在Python中,关于对函数的理解和使用也存在这些问题。下面来逐一讲解。一.函
Python中的字符串 可能大多数人在学习C语言的时候,最先接触的数据类型就是字符串,因为大多教程都是以&quot;Hello world&quot;这个程序作为入门程序,这个程序中要打印的&quot;Hello world&quot;就是字符串。如果你做过自然语言处理方面的研究,并且用Python
Python 面向对象编程(一) 虽然Python是解释性语言,但是它是面向对象的,能够进行对象编程。下面就来了解一下如何在Python中进行对象编程。一.如何定义一个类 在进行python面向对象编程之前,先来了解几个术语:类,类对象,实例对象,属性,函数和方法。 类是对现实世界中一些事物的封装,
Python面向对象编程(二) 在前面一篇文章中谈到了类的基本定义和使用方法,这只体现了面向对象编程的三大特点之一:封装。下面就来了解一下另外两大特征:继承和多态。 在Python中,如果需要的话,可以让一个类去继承一个类,被继承的类称为父类或者超类、也可以称作基类,继承的类称为子类。并且Pytho
Python中的函数(一) 接触过C语言的朋友对函数这个词肯定非常熟悉,无论在哪门编程语言当中,函数(当然在某些语言里称作方法,意义是相同的)都扮演着至关重要的角色。今天就来了解一下Python中的函数用法。一.函数的定义 在某些编程语言当中,函数声明和函数定义是区分开的(在这些编程语言当中函数声明
在windows下如何快速搭建web.py开发框架 用Python进行web开发的话有很多框架供选择,比如最出名的Django,tornado等,除了这些框架之外,有一个轻量级的框架使用起来也是非常方便和顺手,就是web.py。它由一名黑客所创建,但是不幸的是这位创建者于2013年自杀了。据说现在由
将Sublime Text 2搭建成一个好用的IDE 说起编辑器,可能大部分人要推荐的是Vim和Emacs,本人用过Vim,功能确实强大,但是不是很习惯,之前一直有朋友推荐SUblime Text 2这款编辑器,然后这段时间就试了一下,就深深地喜欢上这款编辑器了...
Python中的模块 有过C语言编程经验的朋友都知道在C语言中如果要引用sqrt这个函数,必须用语句&quot;#include&lt;math.h&gt;&quot;引入math.h这个头文件,否则是无法正常进行调用的。那么在Python中,如果要引用一些内置的函数,该怎么处理呢?在Python中
Python的基础语法 在对Python有了基础的认识之后,下面来了解一下Python的基础语法,看看它和C语言、java之间的基础语法差异。一.变量、表达式和语句 Python中的语句也称作命令,比如print &quot;hello python&quot;这就是一条语句。 表达式,顾名思义,是
Eclipse+PyDevʽjango+Mysql搭建Python web开发环境 Python的web框架有很多,目前主流的有Django、Tornado、Web.py等,最流行的要属Django了,也是被大家最看好的框架之一。下面就来讲讲如何搭建Django的开发环境。一.准备工作 需要下载的
在windows下安装配置Ulipad 今天推荐一款轻便的文本编辑器Ulipad,用来写一些小的Python脚本非常方便。 Ulipad下载地址: https://github.com/limodou/ulipad http://files.cnblogs.com/dolphin0520/u...
Python中的函数(三) 在前面两篇文章中已经探讨了函数的一些相关用法,下面一起来了解一下函数参数类型的问题。在C语言中,调用函数时必须依照函数定义时的参数个数以及类型来传递参数,否则将会发生错误,这个是严格进行规定的。然而在Python中函数参数定义和传递的方式相比而言就灵活多了。一.函数参数的
在Notepad++中搭配Python开发环境 Python在最近几年一度成为最流行的语言之一,不仅仅是因为它简洁明了,更在于它的功能之强大。它不仅能够完成一般脚本语言所能做的事情,还能很方便快捷地进行大规模的项目开发。在学习Python之前我们来看一下Python的历史由来,&quot;Pytho
Python中的条件选择和循环语句 同C语言、Java一样,Python中也存在条件选择和循环语句,其风格和C语言、java的很类似,但是在写法和用法上还是有一些区别。今天就让我们一起来了解一下。一.条件选择语句 Python中条件选择语句的关键字为:if 、elif 、else这三个。其基本形式如
关于raw_input( )和sys.stdin.readline( )的区别 之前一直认为用raw_input( )和sys.stdin.readline( )来获取输入的效果完全相同,但是最近在写程序时有类似这样一段代码:import sysline = sys.stdin.readline()
初识Python 跟学习所有的编程语言一样,首先得了解这门语言的编程风格和最基础的语法。下面就让我们一起来了解一下Python的编程风格。1.逻辑行与物理行 在Python中有逻辑行和物理行这个概念,物理行是指在编辑器中实际看到的一行,逻辑行是指一条Python语句。在Python中提倡一个物理行只
当我们的代码是有访问网络相关的操作时,比如http请求或者访问远程数据库,经常可能会发生一些错误,有些错误可能重新去发送请求就会成功,本文分析常见可能需要重试的场景,并最后给出python代码实现。
1.经典迭代器 2.将Sentence中的__iter__改成生成器函数 改成生成器后用法不变,但更加简洁。 3.惰性实现 当列表比较大,占内存较大时,我们可以采用惰性实现,每次只读取一个元素到内存。 或者使用更简洁的生成器表达式 4.yield from itertools模块含有大量生成器函数可
本文介绍简单介绍socket的常用函数,并以python-kafka中的源码socketpair为例,来讲解python socket的运用
python实践中经常出现编码相关的异常,大多网上找资料而没有理解原理,导致一次次重复错误。本文对常用Unicode、UTF-8、GB2312编码的原理进行介绍,接着介绍了python字符类型unicode和str以及常见编解码错误UnicodeEncodeError和UnicodeDEcodeEr