前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Tensorflow简述和初步上手

Tensorflow简述和初步上手

作者头像
云时之间
发布2018-04-11 13:40:43
9320
发布2018-04-11 13:40:43
举报
文章被收录于专栏:云时之间云时之间

AI这个概念好像突然就火起来了,年初大比分战胜李世石的AlphaGo成功的吸引了大量的关注,但其实看看你的手机上的语音助手,相机上的人脸识别,今日头条上帮你自动筛选出来的新闻,还有各大音乐软件的歌曲“每日推荐”……形形色色的AI早已进入我们生活的方方面面。深刻的影响了着我们,可以说,这是一个AI的时代。

其实早在去年年底,谷歌就开源了其用来制作AlphaGo的深度系统Tensorflow,相信有不少同学曾经对着这款强大的机器学习系统蠢蠢欲动,但虽然有关Tensorflow的教程其实不少,甚至谷歌官方就在Tensorflow的官网给出了一份详细的教程,也有网站已经将其翻译成了中文,但它仍然是有门槛的,尤其是对于对计算机及编程语言了解不深的同学,可能看着页面上凭空给出的代码陷入懵逼。

在参考了众多的教程后,再加上我使用tensorflow的一些经验,于是我希望写一篇文章来可以真正的从0开始,让更多的人感受到机器学习的乐趣。并且希望让大家在学习Google开发定制的tensorflow的过程中,可以让自己成为机器学习,神经网络的大牛,同时也会在海量的信息当中获益。

首先我们应该先了解下什么是tensorflow?

TensorFlow是谷歌基于DistBelief进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理。Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流图的计算,TensorFlow为张量从图象的一端流动到另一端计算过程。TensorFlow是将复杂的数据结构传输至人工智能神经网中进行分析和处理过程的系统。ensorFlow让我们可以先绘制计算结构图,也可以称是一系列可人机交互的计算操作,然后把编辑好的Python文件转换成更高效的C++,并在后端进行计算.

为什么要使用Tensorflow?

通过上述的描述,我们可以发现,TensorFlow无可厚非地能被认定为神经网络中最好用的库之一.它擅长的任务就是训练深度神经网络.通过使用TensorFlow我们就可以快速的入门神经网络,大大降低了深度学习(也就是深度神经网络)的开发成本和开发难度. TensorFlow的开源性,让所有人都能使用并且维护,巩固它.使它能迅速更新,提升.这也就是我们为什么使用Tensorflow的原因。

————————————————————————————————

Tensorflow安装:

1:官方关于Tensorflow安装的说明(需要访问外国网站)

2:安装Tensorflow时需要注意的几点:

MacOS,Linux,Windows系统均已支持Tensorflow

确定你的python版本

你的GPU是NVIDIA,就可以安装GPU版本的Tensorflow;你的GPU不是NVIDIA也没有关系,安装CPU版本的就好了。不过还是建议安装Gpu版本,因为我自己在使用CPU版本,效率过低,等待时间过长,所以不建议使用。

正式安装开始:

关于Tensorflow的安装方式有很多,比如官网提供的,pip安装,Docker安装,从安装源安装等等。但是从这几种方法比较来看,使用PIP方法安装是最为简单有效的方式,所以,在这个安装的过程中,我会使用Pip方法在Linux,MAC和Windows上进行安装。

————————————————————————

1:Linux和Mac安装

第一步:因为使用的是pip安装方法,所以在安装之前一定要确保你的pip已经安装到了你的电脑上,如果你还没安装pip,你也可以在terminal窗口运行:

2:安装CPU版本:

在安装前请注意,你需要8.1或者更高版本的pip才可以顺利安装,如果你的pip版本满足要求,请运行下面的代码,就可以完成了安装CPU版本的Tensorflow。

3:Gpu版本

如果你要安装Gpu版本,先选择一个合适的版本在你的terminal中执行

然后根据自己的Python版本在terminal中执行语句。

———————————————

Windows安装:

因为在前几期tensorflow更新后已经支持了Windows的版本,但是现在还只支持Python3.5的64位版本,并且还需要安装numpy,请安装后进行操作:

首先,先让我们在command窗口中执行:

如果遇到错误

尝试下载安装Windows的Microsoft Visual C++ 2015 redistributable update 3 64 bit.就能解决这个问题.

———————————————————————

当我们安装后,让我们尝试下是否安装成功,

首先在Python编辑器中输入:

import tensorflow

然后运行一下发现是否安装正确

如果在日后你需要升级版本,我建议的方式是,

先将先在你的terminal删除原有的版本,

然后重新进行安装教程。

———————————————————————

我在使用当中遇到的一些坑:

1:在官网下载的最新的ubuntu16版本,但是安装后发现tensorflow GPU版本所需的cuda7.5只有ubuntu14和15两个版本的,往上查阅,有人使用cuda8运行成功的例子,但是为了保险起见还是将重新安装ubuntu14.04版本。

tensorflow的安装没有什么问题,按照教程中的步骤即可,需要注意的是有cpu和gpu两个版本,如果只是体验下那么cpu版本就足够了,gpu版本需要cuda toolkit的支持,下载地址https://developer.nvidia.com/cuda-downloads,选择平台-系统-版本-安装类型,我选择的是ubuntu14.04版本的runfile,下载至本机。

cuda安装的同时会安装nvidia的显卡驱动,这会引起一些列问题,如桌面不显示,循环登录等,正确的安装步骤如下(来源http://blog.5ibc.net/p/41547.html)

运行sudo apt-get install build-essential

开始时,用正常的GUI登录,没有log循环问题。不需要创建xorg.conf,如果有的话,删掉sudo rm /etc/X11/xorg.conf(备份更好)。如果是刚重装好,是没有这个文件的。

禁用nouveau,创建/etc/modprobe.d/blacklist-nouveau.conf,写入:

blacklist nouveau

option nouveau modeset=0

然后sudo update-initramfs -u

重启电脑,在出现登录界面时,登录tty1,按Ctrl + Alt + F1,在文本模式中登录。

关闭桌面服务sudo service lightdm stop。这步对于安装Nvidia驱动至关重要

运行.run文件,不要覆盖opengl,sudo ./your_cuda_file_name.run --no-opengl-libs

在安装过程中,

Accept EULA conditions

Say YES to installing the NVIDIA driver

SAY YES to installing CUDA Toolkit + Driver

Say YES to installing CUDA Samples

安装完成,check device nodes : Check if /dev/nvidia* files exist。如果没有的话sudo modprobe nvidia

重启桌面服务sudo service lightdm start。此时能够登录,没有login-loop问题。

设置环境变量

在/etc/ld.so.conf.d/建立cuda.conf的文件,写入

/usr/local/your_cuda_file_name/lib64

然后sudo ldconfig

添加PATH,为了长久添加,在/etc/profile加入

export PATH=/usr/local/your_cuda_file_name/bin:$PATH

立即生效,source /etc/profile

注意:直接在终端export PATH=/usr/local/your_cuda_file_name/bin:$PATH是暂时的

验证驱动版本和CUDA版本:

cat /proc/driver/nvidia/version

nvcc -V

Create CUDA Samples.运行make时间较长…

进入NVIDIA_CUDA-7.5_Samples/bin/x86_64/linux/release/做一下两个标准检测:

./deviceQuery:查看显卡信息

./bandwidthTest:检查是否工作正常

都能够PASS

Reboot. Everything should be ok.

—————————————————————————————

同时,春节马上就要到了,祝大家新年快乐,在下一年里万事顺利。欢迎给出建议。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017.01.25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
人脸识别
腾讯云神图·人脸识别(Face Recognition)基于腾讯优图强大的面部分析技术,提供包括人脸检测与分析、比对、搜索、验证、五官定位、活体检测等多种功能,为开发者和企业提供高性能高可用的人脸识别服务。 可应用于在线娱乐、在线身份认证等多种应用场景,充分满足各行业客户的人脸属性识别及用户身份确认等需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档