Re: [请益]未来的学习方向

楼主: oopFoo (3d)   2019-02-25 14:29:49
※ 引述《flightheory (飞行原理)》之铭言:
: 真正熟悉是C#, 摸了两年已经很有心得, PM很放心我写的C#程式, 尤其是WPF和XAML部分.
: 但无论如何, 既然你提到了Python和C#, 这两个我都接触过, 就来试着与你讨论讨论.
: 先讲结论, 个人看法不建议同时学Python和C#, 两者必须二择一. 因为两者差异太大了.
: Python的好处是你很容易用Keras和Tensorflow做出深度学习的东西, 学习门槛很低. 但
: Python程式的速度不快, 以前我用CPU跑CNN, 要在周五下班前开始让程式跑, 等周一上班
: 才来看结果. 现在用1060 6GB的GPU来跑, 所花时间虽然是1/30, 但跟我希望的还是太慢.
: 所以我打算把手头上的医材做到差不多时, 改用C#&CNTK来跑深度学习. 以我对C#的理解
: 速度一定比Python快许多.
Neural Network吃的是floating point的运算速度。简单看一个连结
https://bit.ly/2XmAWpR
1060的fp32是4.4tflops。intel第一个1tflops的cpu是i9-7980XE。虽然各总差异,但大致上nn一定要用GPU是毋庸置疑的。
Pytorch, Keras, Tensorflow, CNTK的gpu运算都是架在Cuda上,应该说是cuDNN上(n的proprietary library)。所有dl/ml的training时间,99%都在gpu里,你Python换c#一点都不会有任何影响。
N公司非常狡诈,我们知道fp16在大部分NN运算就够了,N就把10xx的fp16运算crippled,这一代的fp16是f32的1/64。让你乖乖买昂贵的AI专用卡。还好Rtx这一代,因为TensorCore原因(4x4Matrix),稍微解放fp16,所以你用Rtx2060的fp16 MixedMode,运算速度可跟1080ti一拼。
AMD gpu不好用,因为他没有cuDNN。OpenCL没有人开发clDNN,AMD又另外搞ROCM/HIP,Intel搞MKL-DNN,没有整合努力。你现在要运算快又便宜就是选RTX2060,除非你的dataset太大。
: 当初有人问我为何辞去公职? 难道不怕公司怎么了? 我说我相信AI会红个十年, 等AI退烧
: 而公司又怎么了, 我也60岁可以退休, 所以就给它拼个十年看看, 或许真的能高雄发大财
我们现在有点像在dk效应的谷底。看一些美国论坛,一堆Engineers讲30年,Level5的自驾车还要30年,虽然某某大教授(NN的权威)说他乐观的估计2032年有机会。
我非常看好现在的AI,但是还是需要很多钱,很多人力,很多的研究,希望大家不要被将要来的AI Winter洗出去。
Software is eating the World,这还是未来的趋势。
作者: flightheory (飞行原理)   2019-02-25 19:31:00
感谢!毕竟我还是DL的新手,各种意见都值得一听。那再请问一下,如果跳过CNTK,直接用CUDA,是否能加快速度?
楼主: oopFoo (3d)   2019-02-25 20:24:00
不会。Framework主要功能就是Job Manager,真正的work都是cuDNN在作。要快,就是烧钱。https://bit.ly/2NqIGT6还不错的gpu for deep learning推荐。
作者: gigayaya (gigayaya)   2019-02-25 21:04:00
1060 6g CP真的高
作者: flightheory (飞行原理)   2019-02-25 21:27:00
感谢大大, 看来我下个目标是再弄到一块1066.
作者: Apache (阿帕契)   2019-02-25 22:04:00
C++写起来麻烦 CUDA写起来更麻烦 所以才要做Python API而且自己搞的东西没有社群来帮你解答维护debug
作者: f496328mm (为什么会流泪)   2019-02-26 01:22:00
再弄一块 GPU 玩双 GPU,要再快就架分布式
作者: lemon651 (小明)   2019-02-26 04:28:00
GPU云端租一块就行了阿...

Links booklink

Contact Us: admin [ a t ] ucptt.com