求教下 tensorflow 入门要什么基础吗?很难么? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
PaulKK
V2EX    程序员

求教下 tensorflow 入门要什么基础吗?很难么?

  •  
  •   PaulKK 2017-11-09 21:45:13 +08:00 9403 次点击
    这是一个创建于 2981 天前的主题,其中的信息可能已经有所发展或是发生改变。
    今天下午跟同事聊到这事,一个经理群里发了个消息,问问有没有会 TensorFlow 的程序员,用一个月,7.5W ,
    之前有了解过应该是 Google 的一个智能机器学习方面的框架,是不是必须具备高数算法之类的基础啊?
    40 条回复    2017-11-11 14:17:23 +08:00
    upczww
        1
    upczww  
       2017-11-09 21:54:18 +08:00 via Android
    会用 Python, 懂神经网络,机器学习
    Curtion
        2
    Curtion  
       2017-11-09 22:00:27 +08:00 via Android
    不是很了解,不过在群里看见他们聊卷积的时候我就知道我没戏了。。毕竟拉式变化我都还不会
    wdlth
        3
    wdlth  
       2017-11-09 22:01:27 +08:00
    TensorFlow 是工具,具体还得看算什么,7.5W 中 7.0W 是给算力的,0.5W 是给人力的……
    takato
        4
    takato  
       2017-11-09 22:10:55 +08:00
    7.5W- -?我觉得可以 Pass,随便写个东西,收益都大于 7.5w
    geekboy
        5
    geekboy  
       2017-11-09 22:28:20 +08:00 via Android
    @takato 随便写个什么?
    nichijou
        6
    nichijou  
       2017-11-09 22:48:48 +08:00
    @takato 给跪
    mpich
        7
    mpich  
       2017-11-09 23:13:06 +08:00
    .。。认真的吗,我有 TF 比较大的线上 NLP 经验。。。PyTorch 和 Keras 也都可以。。。。难是不难,主要是 debug 费事,它是一个静态图。。。。
    zj299792458
        8
    zj299792458  
       2017-11-10 00:18:07 +08:00
    @takato 给月入 10 万大佬跪了,还缺人么
    SingeeKing
        9
    SingeeKing  
    PRO
       2017-11-10 00:41:51 +08:00
    @zj299792458 人家十万是日薪
    YvesX
        10
    YvesX  
       2017-11-10 01:53:12 +08:00 via iPhone
    机器学习这事儿,数学基础肯定是要有一些的。有数学理解才能明白自己是在干嘛,有数学积累才能想到合适的工具与方法,对数学融会贯通才能有所开创。
    dangyuluo
        11
    dangyuluo  
       2017-11-10 02:08:15 +08:00   3
    数学基础么,以 Tensorflow 搭神经网络为例,首先是线性代数,看一下神经网络的 BP 算法,了解一下为什么 sum 能以向量的形式展示,学一下矩阵微分,某点的梯度算法。Batch or online learning,然后自己手推(手推不是真的用手,用 Matlab 也可以)一下前几步迭代的过程。你就知道神经网络是怎么运作的了。
    卷积神经网络 CNN 的话我觉得纯属业内人士为了看似高端而采用的名词,无非是加了传统图像处理里的特征提取层,和信号里的卷积关系不大的。

    剩下的就是 Tensorflow 的语法了,什么是 session,balabala 的。
    dangyuluo
        12
    dangyuluo  
       2017-11-10 02:08:44 +08:00
    Google tensorflow playground,超好玩。
    PaulKK
        13
    PaulKK  
    OP
       2017-11-10 06:40:08 +08:00
    @Curtion 短短一句话,我竟然两个名词没听过,看来没戏了
    PaulKK
        14
    PaulKK  
    OP
       2017-11-10 06:43:18 +08:00
    @dangyuluo 如果真心想学习的话,你建议怎么入门?有好的经验可以分享下吗?
    PaulKK
        15
    PaulKK  
    OP
       2017-11-10 06:44:23 +08:00
    @takato 就要自己做产品了,记得以前很火的有个,上传照片然后显示你的年龄,好像就是用 TensorFlow 做的
    artandlol
        16
    artandlol  
       2017-11-10 07:06:26 +08:00 via iPhone
    现在大部分都用 cuda 的 gpu 去跑
    比如做图片分类或者文字图片音乐生成都很耗计算的吧
    p2pCoder
        17
    p2pCoder  
       2017-11-10 07:22:43 +08:00 via Android
    要不先买 显卡?
    coolmenu
        18
    coolmenu  
       2017-11-10 07:31:50 +08:00
    主要是矩阵分析,最优化的一些算法,但是统计学还是要扎实一些
    p2pCoder
        19
    p2pCoder  
       2017-11-10 07:34:10 +08:00 via Android
    高数 线代 概率论先复习下,线代用的最多,其次是概率论,微积分也有很多理论涉及
    kuhung
        20
    kuhung  
       2017-11-10 08:03:09 +08:00 via Android
    基础有三:高数、现代和显卡然后开始调 bug 吧
    bashbot
        21
    bashbot  
       2017-11-10 09:45:45 +08:00   2
    都不用的,哪有那么复杂。
    日常工作的标准流程是确定问题类型,然后去找相关的论文或代码,看看用什么网络结构做的,然后在 TF 里面写一个看看效果。
    TF 里面常用的算法都实现了,用起来就像搭积木。了解算法可以让你更灵活,不了解就照抄别人。
    难的是还没有好的解决方法的问题,或者没有数据集,或者没有 GPU 算力。

    每天重复调参很无聊的,毕竟理论基础不完备,很多时候也是跑出来看结果,说不清楚道理的。
    谁能说清楚,我要拜师!
    rogwan
        22
    rogwan  
       2017-11-10 10:08:48 +08:00 via Android
    @bashbot 哈哈,时间有限,来不及深究 ... 很多库不都是拿来先用了再说么,掣肘了,才会去研究内部思路,tf 这个级别的大库,比小库复杂度高多了
    takato
        23
    takato  
       2017-11-10 10:26:39 +08:00 via iPhone
    建议玩 pytorch,Tensorflow 整体上不适合研究使用,而适合“工业生产”
    而很多 AI 并不需要那么“工业”的
    PaulKK
        24
    PaulKK  
    OP
       2017-11-10 10:33:30 +08:00
    @bashbot
    @p2pCoder
    @coolmenu
    @kuhung
    @takato 谢谢指教,受益了,感觉要走的路挺多的啊
    winglight2016
        25
    winglight2016  
       2017-11-10 11:02:35 +08:00
    @bashbot 个人感觉目前 NN 都是属于玄学,基本解决思路是每个算法都试一遍,那个成功率高再细调
    geek123
        26
    geek123  
       2017-11-10 11:06:35 +08:00
    heliumhgy
        27
    heliumhgy  
       2017-11-10 11:30:03 +08:00
    @Curtion CNN 的卷积和积分变换的卷积不是一个东西。。。而且就算是积分变换的卷积,也不过只是一个算子罢了,没必要虚,就和加分乘法一样,只不过性质多一些而已
    yang2yang
        28
    yang2yang  
       2017-11-10 11:37:46 +08:00
    感觉人工智能真的是火啊,,
    graetdk
        29
    graetdk  
       2017-11-10 13:32:18 +08:00
    7 万多?我给你找一打
    PaulKK
        30
    PaulKK  
    OP
       2017-11-10 16:49:03 +08:00
    @geek123 好的,多谢!!!
    PaulKK
        31
    PaulKK  
    OP
       2017-11-10 16:49:32 +08:00
    @yang2yang 趋势所在啊
    lonelygo
        32
    lonelygo  
       2017-11-10 17:08:25 +08:00
    @PaulKK
    1、Python、C++任意一门手艺过关,最好是 Python ;英语还行,看文档能不太费时间;
    2、有一个 Nvidia GPU 的电脑,GPU 不要太差,显存大一点可以节约很多时间;
    3、跟着官方教程把几个训练都走一遍,走的过程起码熟悉了大致 TF 在干嘛,也能理解基本的超参数、过拟合等;
    4、models/research/ 下面有很多已经做出来的例子了,基本涵盖了深度学习主流的应用场景,结合自己准备上手的领域,看代码,run 起来;
    5、过程中看看“花书”等还不算非常难到看不懂的书,补基础;
    6、到这里基本算是知道门在哪里了,就看自己的方向和学习毅力了;
    wuyuchenshishabi
        33
    wuyuchenshishabi  
       2017-11-10 17:28:13 +08:00
    @takato 写个啥?自动交易的程序?
    genius2k
        34
    genius2k  
       2017-11-10 23:19:13 +08:00
    @dangyuluo 有什么推荐的书吗?
    inflationaaron
        35
    inflationaaron  
       2017-11-10 23:36:44 +08:00
    AWS 开 spot,V100 一个小时就$0.5,没有 Nvidia 显卡也能做实验。
    Ruin
        36
    Ruin  
       2017-11-11 10:02:05 +08:00
    建议先学习机器学习原理,推荐 Coursera 上的课程: https://www.coursera.org/learn/machine-learning
    NumberFairy
        37
    NumberFairy  
       2017-11-11 10:53:27 +08:00
    其实,现在入门这块的很多,经常跑些实验是最好的。先用 tensorflow 去写,然后尝试理解其中的原理。如果有条件的话,可以看看 Andrew Ng 的机器学习视频,经典中的经典,但是比较枯燥,做好心理准备。
    PaulKK
        38
    PaulKK  
    OP
       2017-11-11 11:19:19 +08:00
    @lonelygo 很详细,太感谢了!!
    crackhopper
        39
    crackhopper  
       2017-11-11 14:15:37 +08:00
    取决于 tensorflow 干啥。

    如果就是弄个能用的模型,能搞点简单的设计和调参,看看基础的神经网络就能搞了。http://deeplearning.stanford.edu/wiki/index.php/UFLDL_Tutorial。然后把 model zoo 里面的模型都了解了解,相关论文看一看(不用都看懂,很多论文内容都是胡扯,真正有用的部分不多),跑一跑实验。

    如果是开发实现算法和部署 tensorflow,我觉得偏向于纯工程的吧。如果实现算法得会 CUDA 编程,部署什么的,其实现在有 container 也没那么麻烦。

    如果是搭建训练平台,估计还得懂一些 ASP,BSP 之类的架构,也需要深入懂 tensorflow。分布式训练的论文貌似也不多,偏实践多一些。
    crackhopper
        40
    crackhopper  
       2017-11-11 14:17:23 +08:00
    我指的是基于 ASP 和基于 BSP 梯度更新,架构上也需要进行一些支撑,比如 parameter sever 之类的。(不是说 ASP 和 BSP 是架构)
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     4287 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 10:11 PVG 18:11 LAX 02:11 JFK 05:11
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86