如不雅仅仅是入门和进修,CPU或GPU完全不影响你对代码和框架的进修。运行MNIST或CIFAR之类的玩具数据集,它们的差距并不大年夜。以我的机械为例,运行自带的CIFAR demo,i7 CPU和GTX 1080 Ti的速度分别是770 pics/s和2200 pics/s。GPU大年夜概有不到三倍的机能优势。所以,差距其实也没多大年夜。
这里还有一个小桥绫桥,就是想用CPU版本的Tensorflow,最好不要用pip下载的方法,而是自行编译。因为在开辟机上编译时,它会主动打开所有支撑的加快指令集(SSE4.1/SSE4.2/AVX/AVX2/FMA),大年夜而使CPU的运算大年夜大年夜加快。根据我们的测试,在打开全部加快指令集的情况下,练习速度大年夜概会有30%的晋升,而猜测的速度大年夜概能晋升一倍。
而谜底也往往偏向于:
当然,如不雅真想用一个复杂模型去处理实际的临盆问题,模型的复杂度和数据量都不是CIFAR如许的玩具数据集可以比较的。如不雅用我们的一个临盆模型来运行CIFAR数据集,其他参数和前提完全雷同,它在i5/i7/960/GTX1080/GTX1080Ti下的速度分别是:19/25/140/460/620(单位pics/s,越大年夜越好)。这里就能看出差距了,1080Ti大年夜概是i7 CPU的25倍。而在模型上线应用(inference)时,GPU也会有10-20倍的机能优势。模型越复杂,GPU的优势越明显。
综合来看,如不雅仅仅是入门时代的进修,我建议先不消专门购买带GPU的机械;而是先用你现有的机械,应用CPU版本,去进修框架和一些基本。比及你对基本已经控制得比较扎实,那么天然就会形成跑一些更复杂的模型和更“真实”的数据的设法主意,这时刻再推敲买一块GPU,以缩短练习时光。
不过,如不雅显卡预算刚好卡在5000-6000的档位,双1070也有它的优势。比如,可以进修应用多显卡并行计算的用法,在不焦急的时刻可以用两块显卡同时跑两个不合的义务,归并起来就相当于有了16G的显存等等。推敲到这些身分,双1070切实其实是最合适入门进修的选择——如不雅买不起双1080/双TITAN的话(笑)。
如不雅你有计算用标记本来作为主力学惯用机,我的建议是:最好不要,除非你应用Linux的经验很丰富,或是不计算用GPU加快。很多标记本在安装Liunx后会出现驱动方面的问题,并且应用GPU加快时的高热量也会异常影响体系的稳定性。如不雅没有很丰富的经验,经常会在一个小问题上卡掉落几个小时宝贵的进修时光。
然后,要不要来尝尝第一个模型?
在Tenforflow安装完成后,我们可以用这种方法来最快地把第一个CIFAR demo跑起来:
OK,只需几分钟来下载数据,我们就能看到我们的第一个“图像辨认模型”正在练习了。
练习过程中我们可以看到log中在赓续地输出loss信息,但除了想要跟踪loss之外,我们还欲望看到当前练习模型的辨认精确率到底若何,这就不是cifar10_train.py这个脚本可以或许供给的了。我们还须要履行
这个脚本会赓续地验证比来的检查点的辨认精确率。
如不雅应用GPU的话,就会发明练习脚本运行起来之后,所有的显存都已被这个过程占满;再启动验证脚本的话,就会报错一大年夜堆的内存不足(OOM),这是Tensorflow的机制决定的,它会默认占据所有显卡的所有显存,而不管本身是否真能用到那么多。
解决这个问题的办法也很简单。
拭魅战阶段的学惯用机设备
起首,我们可以指定Tensorflow应用哪几块显卡进行练习。要做到这一点,可以在履行较本前,用敕令行指定情况变量:
个中的“0,2”就是欲望应用的GPU编号,大年夜0开端,用逗号分隔开。
或者在代码中创建一个GPUOption,设置visible_device_list=‘0,2’,也能起到同样的效不雅。
不论选择哪本教材、哪个框架,在方才接触机械进修的时刻,必定会接触到MNIST。它是由Yann LeCun所建立的手写数字库,每条数据是固定的784个字节,由28x28个灰度像素构成,大年夜概长成如许:
我小我的经验,实用于“很少一部分人”之外的那“很大年夜一部分人”,也就是说,他们最多知道深度进修是什么意思,神经收集又是什么概念,却并未真正体系地进修接触过这个范畴。
然后,我们还可以限制Tensorflow所用的显存,使其动态增长而非一启动就占满。办法和膳绫擎的类似,在代码中创建一个GPUOption,并设置allow_growth=True即可。
最后,也是最初
在经历过如斯漫长、苦楚但也充斥乐趣的进修和实践之后,你应当可以算是机械进修的一个业内人士了。但这并不料味这条门路已经走到了尽头,恰好相反,在完成这一切之后,你才方才踏出了机械进修大年夜业生活的第一步。
在今朝这个阶段,业内还处于算法红利期,新的算法、新的模型层出不穷,仅仅在CV范畴,天天就有二三十篇paper被宣布到arXiv上,每年的顶会顶刊收录的结不雅都在大年夜幅度刷新上一年甚至上一个月的记录。
打好基本之后,跟踪论文并复现、进修和思虑,如许的义务将成为你现阶段的一项日常功课,如不雅你已经进入或是决定进入这个行业的话。因为稍有懈怠,便要面对着被时代摈弃、跟不上节拍的情况。所以,到这一步,对于有些仁攀来说是一个停止,而对另一些仁攀来说,则才方才是开端。
Tensorflow给出了CIFAR的例程:
这条路,我在走,很多人在走,那么,你来吗?
【编辑推荐】
- 对于机械进修,到底钙揭捉?择哪种编程说话
- AI、区块链和机械人:技巧会让将来的工作产生什变更?
- 最周全的百度NLP天然说话处理技巧解析
推荐阅读
腾讯高级工程师自述:我为什么选择离开管理岗位?_技术栈微信半月刊第06期
Tech Neo技巧沙龙 | 11月25号,九州云/ZStack与您一路商量云时代收集界线治理实践 【义务编辑:陶家龙 TEL:(010)68476606】【义务编辑:陶家龙 TEL:(010)68476606】【义务编辑:陶家>>>详细阅读
本文标题:转型AI的励志故事,从非科班到拿下阿里云栖一等奖,他经历的坑足够你学习100天
地址:http://www.17bianji.com/lsqh/38897.html
1/2 1