在我们的日常生活中,往往会遇到如何深度学习电脑的问题,常常会不知道怎么处理,下面就让小编为大家提供一下解决这种问题的方法,希望能够给大家提供一定的帮助。
方法/步骤
1、首先,使得在觊皱筠桡CUDA中建立第一批深度学习库非常简单。但对于AMDOpenCL,这样的强大标准库并不存在。现实是,现在A卡并没聍铝遒灰有好用的深度学习库——所以一般人只能选N卡。即便将来有了OpenCL库,我仍会接着用N卡。原因很简单:GPU通用计算,或者说GPGPU的社群基本上是围绕着CUDA转的,而没有多少人钻研OpenCL。因此,在CUDA社区,你可以立刻获得好的开源方案和代码建议。
2、然后,对于深度学习,即便这项技术及其产业尚在襁褓之中,英伟达可谓是全面出击。老黄的投入并没有白费。那些现在才投入资金、精力,想要赶上深度学习风口的公司,由于起步晚,离英伟达的距离有老大一截。当前,使用任何除NVIDIA-CUDA之外的软硬件组合玩深度学习,简直是故意跟自己过不去。
3、然后,至于英特尔XeonPhi,官方宣传是你能用标准的C语言代码,并轻松把代码转化为加速的XeonPhi代码。该功能听着不错——你也许会想着可以借助海量的C语言资源。但实际情况是,只有非常少数的C语言代码有支持,而且大部分能用的C代码会非常非常的慢。因此,它其实比较鸡肋。
4、然后,在一个XeonPhi集群工作站搞研究,这期间的经历不忍回想,一把辛牵乡估瓞酸泪:无法运行单位测试,因为XeonPhiMKL和PythonNumpy不兼容;我不得紧鋈笆珀不重构大部分的代码,因为XeonPhi编译器无法对模板做恰当的reduction,比如说对switchstatement;我不得不修改C界面,因为XeonPhi编译器不支持一些C++11功能。
5、然后,所有这些迫使我在心酸沮丧中重写代码,并且没有单位测试。这过程极度漫长,堪称地狱般的经历。
6、最后,直到我的代码终于成功执行,但所有东西速度都很慢。有一些问题,搞不清是bug还是线程调度程序的原因,总之如果张量大小接连发生改变,性能就会大幅降低。举个例子,如果你有大小不同的全连接层或dropout层,XeonPhi比CPU还要慢。我在独立矩阵乘法上重现了这个问题,并发给英特尔,但没有回音。