赞
踩
来源:https://www.zhihu.com/question/382278216
编辑:深度学习与计算机视觉
声明:仅做学术分享,侵删
作者:图灵的猫
https://www.zhihu.com/question/382278216/answer/1118151275
如果是为了做毕设,可以简单分为两种情况:
1.如果你做完毕设不从事相关工作,那么你甚至不需要深入深度学习领域,只需要简单了解深度神经网络的原理、机制和用法即可,最主要的是解决毕设里的问题
2.如果你做完毕设还要继续深造或者找相关工作,那么需要学的东西会非常非常多了,不是调包调参就完事的。如果是这种情况,你可以看看我之前的一个回答,机器学习该怎么入门?https://www.zhihu.com/question/20691338/answer/966275448
作者:辛俊波
https://www.zhihu.com/question/382278216/answer/1127012045
近几年面试了不少校招和实习生,深感深度学习之火,以至于很多学生只会各种nn网络,对基础的机器学习算法不屑于了解。在我看来,如果你真的想深入了解深度学习,就不可能不了解机器学习的很多算法基础,就说说过拟合
1.深度学习网络规模做大,免不了会遇到过拟合。说到过拟合欠拟合,都有什么手段解决?对于模型的方差和偏差分别怎么影响的?
2.正则化可以缓解过拟合,那我们来说说, l1正则和l2正则有什么区别?哦?除了了解网上经典的那张坐标解释,是否了解它们在贝叶斯先验上属于不同的分布?说到贝叶斯分布免不了要了解共轭先验,为什么要服从这种分布?还有哪些经典的共轭分布?
3.dropout也能解决过拟合,请问为什么能work?本质上就是一种bagging的思想。说到bagging,免不了就要知道boosting,这两者在降低模型方差偏差影响怎样?
4.说到dropout,免不了和batch normalization对比,后者是为了解决什么问题提出来的?对比数据白化,pca等其他方法有什么区别?还有哪些数据的normalization手段?
你看,一个过拟合的问题在深度学习的表现,看似都是深度的方法,背后涉及的原理全都是更加底层的机器学习基础。
作者:时间旅客
https://www.zhihu.com/question/382278216/answer/1127965161
不用都学习一遍,但基础的原理需要懂。
使用深度学习或机器学习解决具体任务需要三个步骤:数据处理 -> 设计模型 -> 优化
数据处理即将数据处理成模型需要的格式,这个具体的处理方法是和具体使用的模型相关的。例如文本分类,如果用机器学习中的LR、SVM模型,通常需要先使用tfidf、onehot等特征提取器把文本转化成特征,再使用具体的机器学习模型进行分类。如果用深度学习,则需要将文本转化成一串数字序列,无需提取特征。
设计模型即设计解决任务的模型,机器学习/深度学习的区别通常在这里。
优化即梯度下降法,具体优化器可以用sgd,adam等。这一部分知识是深度学习模型和大部分机器学习模型都要用到的,需要学习。
因此我建议你不用把机器学习“都”学习一遍,但需要简单学习一下和你想做的任务相关的几个机器学习模型,并且找一个项目弄明白流程,这对熟悉任务也有很大帮助。例如想要做文本分类任务,就学习一下LR和SVM,找个项目跑一下,贝叶斯、CRF等用不到的机器学习模型就可以先不学了。
如果是用seq2seq/transformer做机器翻译、文本摘要等更高级的任务,就更需要先明白一个分类任务的具体流程了。我大四的毕设就是对机器学习/深度学习都毫无了解,直接去网上扒了一个seq2seq做文本摘要的项目胡乱改一改,最终做是做出来了,但具体怎么做的一窍不通。这样的方法毫无意义,形成不了任何有效的成果,对自身成长也帮助甚少。
作者:精神抖擞王大鹏
https://www.zhihu.com/question/382278216/answer/1113309104
不需要,如果目的是毕设要用到,就直接开始吧,然后把相关的机器学习用到的补充下。
建议可以按照深度学习的顺序开始:线性回归神经网络->softmax回归神经网络->多层感知器->卷积->循环神经网络....
否则很容易陷入知识的循环:学深度学习需要提前把机器学习先学完,那么机器学习其中涉及到很多数学知识点,还需要把数学知识学一遍,而且机器学习中的svm中涉及到凸优化的内容,又去把凸优化再学一遍...等到这些都学完,你会发现毕设还没起手做。
建议直接上手《动手学深度》
作者:休柏
https://www.zhihu.com/question/382278216/answer/1102939791
深度学习虽然说是机器学习一个分支,但是自从Alexnet开始,深度学习越来越独立化。建议你把机器学习很基本的知识看一看就可以了,比如拟合,梯度,优化器,lr,损失函数等等这些。切记不要去推导公式,暂时来讲并没有意义。深度学习建议你在网上找实战演练视频,跟着走一遍基本的东西就懂了。在具体点的可以看我公众号,有写个入门干货。总之,加油,奥利给!
作者:uewo
https://www.zhihu.com/question/382278216/answer/1108151255
个人看法是需要,在有时间的前提下。
但是事实上我看见的大部分深度学习的课程大纲,包括那些所谓训练营和速成班的广告上分享的课程大纲,都涉及了深度学习所必要了解的机器学习的知识。放心,掌握了这些基本的知识,可以让你学习深度学习时不会迷茫。
这个问题其实可以不断地被问下去,学习深度学习时需要先学习机器学习吗?学习机器学习需要先学习统计数学吗?学习统计数学需要先补习一遍数学的知识吗?这种套娃问题会让人越来越迷茫,越来越对学习一个新知识没有信心。你要先做最重要的事,如果你在忙着thesis project,如果那东西需要深度学习,那你就马上动手吧。
但是但是,如果你有时间,甚至你就是研究深度学习的研究生/业者,我很难相信一个不掌握机器学习的人可以在这方面深挖下去。一个基础不好的人会很快原形毕露的。
作者:Thomas Hsu
https://www.zhihu.com/question/382278216/answer/1116498700
需要先学习一些机器学习背景,可以有助于你更好的理解深度学习。
建议学习顺序:周志华老师的《机器学习》绪论部分,模型评估部分,线性模型部分,神经网络部分。同时学习对应章节的sklearn代码,可以在GitHub上找到。之后学习b站上莫烦python的keras教程即可入门神经网络。
作者:追梦人 https://www.zhihu.com/question/382278216/answer/1126731157
需要核心子集就行。具体如下:
1.必备的是:模型拟合程度与正则,模型评估,参数调优,凸优化,一些特征工程的知识。
2.了解下机器学习图谱,每一类掌握下掌握具体一种算法即可。这或多或少对你了解深度学习有帮助。
3.不管学啥,多实践,建议新手用pytorch。
作者:Mr陈
https://www.zhihu.com/question/382278216/answer/1136279117
如果做应用,可能不需要太深入,简单了解基本算法开发流程和一些常见问题即可,如过拟合、欠拟合、数据不均衡…
如果是搞研究的,那自然是多多益善,对更多算法有深入理解,对自己做更深入的研究自然是有好处的,算法思想都是相通,可借鉴迁移。
小弟盐多怕湿,各位大佬觉得我哪里说得不好,轻喷轻喷。
作者:张少春
https://www.zhihu.com/question/382278216/answer/1113113993
从写论文角度,没必要重新看。可以找一些文章,大概了解一下普通的机器学习(或者叫浅层学习)与深度学习的特点。比如两种模型各自的优缺点及适用场景来加强对深度模型的理解。这个过程也是从各种角度加深对”深度“学习的理解,同时也会增加你的自信。
作者:Lyon
https://www.zhihu.com/question/382278216/answer/1110217555
如果是从想入行的角度,是有必要的,深度学习是机器学习里的子集;先从宏观了解和学习机器学习,然后再深入到深度学习里是比较合适的;如果仅仅为了完成一个毕设的课题,那可以不学,因为简单的深度学习主要就是围绕神经网络和卷积神经网络等,并没有涉及到(系统的)机器学习。
☆ END ☆
如果看到这里,说明你喜欢这篇文章,请转发、点赞。微信搜索「uncle_pn」,欢迎添加小编微信「 mthler」,每日朋友圈更新一篇高质量博文(无广告)。
↓扫描二维码添加小编↓
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。