Py学习  »  机器学习算法

如何看待深度学习门槛低的说法?

小白学视觉 • 11 月前 • 100 次点击  

点击上方小白学视觉”,选择加"星标"或“置顶

重磅干货,第一时间送达

作者:Serendipity
https://www.zhihu.com/question/321031804/answer/1331269931

做出这个推论是完全可以理解的
如果你正在自学深度学习,那么很有可能像我一样去学习一些在线课程,当然可能也实操过一些小项目,学习这些课程或者跟随教程去做实操可能会让深度学习看起来很容易,个人觉得基于以下原因:
1.首先,这些课程中有很多都利用TensorFlow或Keras之类的框架来实现神经网络和诸如梯度下降之类的优化算法。我想,如果尝试仅通过NumPy或SciPy实现这些,我们还是觉得容易吗?再杠一点,如果不用库呢?

2.许多课程着重于对数学的“直观”理解,而不是实际的核心知识。我曾经也在朋友推荐下看过吴恩达(Andrew Ng)著名的ML课程,该课程在许多情况下都显示了多个方程式的含义,而不是描述它们的推导方式,如果想要明白完整推导过程是需要自己亲自思考的,但很多人却不去做,这更使得DL看起来“容易”。(PS:此处绝无抹黑吴恩达老师的意思)

3.最后,很多人通常无法理解良好的数据集在深度学习和机器学习中的重要性。这意味着我们将需要花费大量的时间来获取,清理和表示或编码数据。特征方面既要积累专业知识又要花费大量时间去尝试选择,还是很不容易的。如果一直在使用来自在线存储库的准备好的数据集来实现神经网络,那么就可以理解为什么所有这些对DL学习者来说似乎都很“容易”的。培训建立适当的数据集的工作量很多时候起码要占一份完整工作的50%。而提出并理解这些结构背后的内容则更加困难。我们需要对概率论,信息论,微积分等有充分的了解,才能掌握其主要思想,而这些工作很多人一开始根本却就没有接触过orz

到目前为止,深度学习在性能方面的进步的确令人印象深刻。

我们作为该领域的新手,很多时候无法看到深度学习的全貌,然而却因为我们侥幸能够在最先进的领域中与最著名的研究人员做类似的工作而沾沾自喜,这就是我们的错误之所在了。
就个人而言,我觉得严格的数学证明和统计学是必须的,并且我还想回到那些原始旧论文中找出其背后的原始想法与目的,而非仅仅是做一个快乐的调参党。

作者:杀掉那只猫
https://www.zhihu.com/question/321031804/answer/813712320

嘲讽不解决问题。深度学习门槛真的很低,严谨一点,门槛低是对比十年前机器学习领域。现实就是机器学习领域的问题,现在随便用个开源包,数据包,基本上能超过 10 年前世界领先实验室的水平,而实际应用对机器学习的要求却没有提高那么多。这是科技发展的客观事实,就好比没计算器的时候在纸上开立方那得数学大牛,但计算器出现了,这门槛变低不是很正常吗?现在不但工具先进了,而且知识教授的途径和方式也先进了,那么多深度学习入门到精通,总有一个适合你学习。
当然,继续研究发展深度学习技术还是很不容易,但这是深造,跟门槛低没关系啊。人类开发技术不就是为了降低门槛,让专业人士变成大白菜,然后疯狂竞争,导致新的技术产生。

作者:深度学习运营
https://www.zhihu.com/question/321031804/answer/2100813695
作为一个在这个行业工作了两年的人,我觉得入门的门槛确实在降低,现在各种框架都非常好用了,也集成了众多的功能,导致了入门的门槛非常低,但同时也导致了泥沙俱下。深度学习的应用在落地的时候会有非常多的问题,例如现场环境、项目工期等等一些列问题,所以在深度学习的应用开发中应该做到快速部署,并且能够有一个较好的模型表现。例如我们公司最近正在使用的百度BML平台,就能够做到模型的快速迭代,并且训练好的模型能够非常快速的部署,包括云部署、本地私有化部署。能够提供SDK包,并且能够做到自动数据回流,使模型快速的迭代起来。
回到问题,深度学习的门槛确实是在降低,不断有容易上手的框架出现,并且现在也出现了例如百度BML这样的一站式AI开发平台,能够非常有效的让大家快速上手,但从长远角度来说,还是需要努力修炼自己的内功,无论门槛高低与否。

作者:匿名用户
https://www.zhihu.com/question/321031804/answer/1331319890
深度学习入门很简单,学习门槛很低,但本身的门槛并不低。
我本科的时候,最开始的研究方向是基于启发式算法的运筹优化。做了大概有一年,读了很多该领域的顶刊文章,在组会里分享等等,对于启发式算法解运筹优化问题有了一个初步的理解,读论文也越来越熟悉套路,但……你让我用C++实现一个算法,不能说不会,但可能要吭哧很久很久。

毕业设计因为研究生要做医学图像方向,选了基于深度学习的医学图像分割。在此前只跟着视频用tensorflow写过房价预测的基础上,在数据集准备完成的情况下,我仅仅用了一个星期就完成了从文献阅读、环境搭建、pytorch框架学习、算法实现、代码调试到完成训练的一整套流程,完成了初代算法的实现。

深度学习学习门槛之所以低,是因为框架的存在。实现算法的时候,网络模型不会改了,百度一下“pytorch自定义网络”;损失函数不会改了,百度一下“pytorch自定义损失函数”……等等,甚至不用google,墙内关于现有框架的资源足够解决大部分问题了。

但是你说这叫学习深度学习吗?叫,也不叫。之所以叫,是因为你确实在学深度学习;之所以不叫,是因为这其实只是实现了一次深度学习。

早就不是改改网络参数、损失函数,随便调调超参数就能玩转深度学习的时代了。想真正学会深度学习,只靠框架这么搞是远远不够的。


作者:AIRobotics
https://www.zhihu.com/question/321031804/answer/2017954999
这就好比你认得了汽车,坐过车之后说:“车不就是四个轮子两张沙发嘛。” 真正深入研究后,至少我丝毫不觉得这个领域的门槛低。

上面有的回答说了,大厂提出了很多不错的模型/数据库/封装好的代码。你可以轻易上github上clone一个项目的代码就拿来用,同时由于AI这个名词太多次出现在公众视野,知识需求急剧上升,所以产生了很多浅层的基础的学习资料。

DL作为一种工具,应当越易于使用越好,这是很多从业者推动的,也是很多人觉得DL好学、简单的原因。但从research出发,弄清楚每一个实现细节,严格的推理和数学证明,或者是针对特定场景的一些经验主义、炼丹技巧(tricks)是更重要的事。这些都是需要大量项目经验和时间积累的。并且随着人数增多,好的idea越来越难产出,愈发考验创造知识的能力。

大概按照我的认知和给自己设的标准,跑跑MNIST/ImageNet,学会ctrl c代码算是会了helloworld;然后搭环境自己debug跑通,做些小修小补能算是入门了;能完全读懂数十篇前沿的顶刊顶会,然后提出一些新想法(不一定work)然后自己实现它,算是很了解了;等到自己能在顶会发个oral啥的,也勉强算是精通了;能获得业内的广泛认可,或是有三巨头/kaiming那种划时代成果的话,才算得上大家吧(我还是太菜了)

好消息!

小白学视觉知识星球

开始面向外开放啦👇👇👇







    
下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。

下载2:Python视觉实战项目52讲
小白学视觉公众号后台回复:Python视觉实战项目即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。

下载3:OpenCV实战项目20讲
小白学视觉公众号后台回复:OpenCV实战项目20讲即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。

交流群


欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器 自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~



Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/152926
 
100 次点击