闲置资源再利用:个人电脑上畅玩 TensorFlow

前言

眼下 github 社区最火的开源项目莫过于 tensorflow (后简称TF),但是在云上玩 TF 存在成本高,部署难诸多问题。腾讯公司提供的 Tesla 是个不错的解决方案,也存在资源竞争,数据上传麻烦,调试不便等问题,倘若在虚拟机环境自己搭建环境,又存在 GPU 支持等问题。本文介绍一种基于 windows 平台下搭建 TF 运行和开发环境,带大家畅玩 TF 。

一、个人电脑玩TF的理由

之所以选择在个人电脑上玩TF最主要的原因成本低廉+取材简单,对于非专业人士也都可以搞个人工智能来取悦自己。具体而言,还有以下几个理由:

门槛低

目前市面上90%个人电脑采用windows系统,工具软件多,开发上手简单容易,而且TF平台不同于以往的计算平台如spark/hadoop等,对windows支持相对比较友好。采用Python运行环境,软件安装也十分方便,不会受到IDC的各种网络限制。

GPU支持

大部分个人电脑基本配备了nvidia的独显(不要问我ATI显卡为啥不行),像笔者平时很少玩3D游戏,显卡基本都在闲置,将TF跑在GPU上提升资源利用率,还可以一边训练模型一边工作,丝毫不会受到影响。

IDE支持

目前TF主工程目录的python代码超过20W行,若没有一个好的IDE支持,通过裸奔方式编写/阅读代码简直就是一件不可思议的事情。window平台下有许多优秀的python开发IDE提供语法高亮,代码补全,跳转调试功能,非常好用,例如Sublime、PyCharm、Eclipse等等。

二、个人电脑玩TF的姿势

2.1 安装TF

第一步: 下载安装Python工具

官网推荐安装3.5.x版本:下载工具,安装过程一路向西。

第二步: 升级pip(不升级的可能安装TF包失败)

> python -m pip install -U pip

(如果出现网络请设置HTTPS_PROXY/HTTP_PROXY环境变量)

第三步: 安装VS2015 Redistributable

下载链接

第四步: 下载TensorFlow安装包

带 GPU 功能下载链接 ( 推荐 )

单 CPU 功能下载链接 ( 不推荐 )

第五步: 安装TensorFlow安装包

> cd /d (PATH)

> pip install tensorflow_gpu-1.2.0rc0-cp35-cp35m-win_amd64.whl

2.2 安装Cuda

首先,要确保机器本身显卡计算能力在3.5以上:查询链接。

接着,需要安装两个软件:CUDA Toolkit和cuDNN

CUDA Tookit: 下载链接( 选择版本8.1 )

cuDNN: 下载链接( 选择版本5.1 )

先安装Tookit,然后将cuDNN压缩文件解压到Tookit安装目录中,bin对应bin。

最后,验证cuda是否安装成功:(两个方法)

方法1: 安装GPU-Z软件(推荐方法)

查看GPU状态(出现cuda就说明成功了)

方法2: 命令行方式

> cd /d (PATH)\CUDA\v8.0\extras\demo_suite>

> deviceQuery.exe

发现在部分笔记本安装完之后找不到设备(GeForce940M)的情况,后通过<font color=Orange>在nvidia官网下载最新版本显卡驱动</font>解决。

2.3 安装PythonIDE

PyCharm和Sublime都是非常不错python开发IDE,前者是JetBrains公司出品,保持JetBrains家族一贯的特色,简单易用但系统开销大。我更愿意使用Sublime3,再带上几个插件轻装上阵(网络问题可通过代理解决)。

CTags插件:代码自动跳转,必装

SublimeREPL插件:代码调试工具,必装

SublimeCodeIntel插件:代码补全工具,必装

Autopep8插件: 代码排版,选装

Pylinter插件: 规范代码风格,语法检查,选装

2.4 畅玩TF

编码: 自动补全

阅码: 自动跳转

调试: 方便快捷

首先,在官网下载模型进行mnist本地训练

接着,再来一个诗和远方(感谢 hansion 提供的 demo,单核机器需要1天的工作在办公电脑45分钟内训练完,CPU运行正常,不影响正常作业。仅仅GPU有点忙,风扇哥,你要使劲点摇)

写在最后

之前搭建过spark/hadoop/xgboost分布式环境,相对而言,TF环境搭建更加简单容易,文档也相对更加完善,它更适合后台以外的开发同学操作机器学习,就我自己而言算是才开始进入TF领地,期待后面通过实战进一步强化对TF的认识,顺带也锻炼一下自己的爱机。

参考文档

TensorFlow社区

NVidia中国

sublime社区

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

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

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏深度学习那些事儿

关于Ubuntu16.04上N卡驱动导致滚动屏幕卡顿问题

屏幕显示正常,但是在打开网页或者进行跑深度学习程序的时候画面会发生一卡一下的情况,严重时出现类似于死机的情况。查看系统monitor并不现实显存和内存爆表,于是...

1.5K60
来自专栏云上大文件传输

镭速RaySync VS FTP 系列(10) - 腾讯云达拉斯到腾讯云广州

更多测试信息: 腾讯云海外数据中心到腾讯云广州-文件传输对比评测集合

23180
来自专栏云上大文件传输

镭速RaySync VS FTP 系列(1) - 腾讯云美西到腾讯云广州

更多测试信息: 腾讯云海外数据中心到腾讯云广州-文件传输对比评测集合

26950
来自专栏ThoughtWorks

被踢出去的用户

在还没有掌握全部证据之前就下结论会犯严重的错误,会使判断带有偏见。——《血字的研究》

7920
来自专栏CreateAMind

模拟赛车torcs论文翻译

摘要:本手册介绍了模拟赛车锦标赛的比赛软件,在进化计算领域和计算智能与游戏领域的大型会议上举办的国际比赛。 它提供了架构的概述、安装软件的说明以及运行包中提供的...

15420
来自专栏JackieZheng

可视化工具gephi源码探秘(二)---导入netbeans

  在上篇《可视化工具gephi源码探秘(一)》中主要介绍了如何将gephi的源码导入myeclipse中遇到的一些问题,此篇接着上篇而来,主要讲解当下通过my...

28980
来自专栏流媒体人生

流媒体协议介绍(rtp/rtcp/rtsp/rtmp/mms/hls)

         Real-time Transport Protocol)是用于Internet上针对多媒体数据流的一种传输层协议。RTP协议详细说明了在互联...

85930
来自专栏企鹅号快讯

如何与深度学习服务器优雅的交互?

有没有想到小夕今天会发文章呢?( ̄∇ ̄)有木有超级想小夕呢( ̄∇ ̄) 小夕在前面写了一堆纯理论和半理论的文章,不要怕,这次来一篇纯工程的tricks集合! 如果...

38490
来自专栏云上大文件传输

镭速RaySync VS FTP 系列(8) - 腾讯云澳洲到腾讯云广州

更多测试信息: 腾讯云海外数据中心到腾讯云广州-文件传输对比评测集合

24290
来自专栏菩提树下的杨过

扫盲文章:AMF,RTMP,RTMPT,RTMPS

AMF AMF(是Action Message Format的缩写)是在flash和flex中与远程服务端交换数据的一种格式. 它是二进制格式,Flash应用与...

32250

扫码关注云+社区

领取腾讯云代金券