学机器学习要走弯路?不存在的!

简介:

营长的一位转型AI的朋友,最近对营长抱怨,“走过的最远的路,就是机器学习过程中的弯路”,然后开始各种blablabla,从论文的坑,到模型的坑,再到培训的坑...一路吐槽。

尤其是论文,他骂道:最讨厌的就是那种,高高在上、假装清高、站着说话不腰疼、戳不到痛点的论文。比如那一堆只能在理论中刷存在感,实际落地中只能呵呵哒的论文,根本就是浪费时间。

的确,对于现在刚刚入行的机器学习新人来说,不怕吃苦,但最怕走弯路,最怕白白浪费时间。

那么,总结起来,都有怎样的弯路呢?来看几位点赞量颇高的知乎答主的总结:

那些年,他们在机器学习中走过的弯路...

在知乎答主张馨宇(就职于百度地图)看来,机器学习的弯路有以下四个

最大的弯路就是自己xjbxjb试,和加入一个真正能做出东西的团队或跟随真正的牛人一起学习相比,速度要慢十倍都不止。学是要学,但不要以为自己xjb学就够了,差得远呢。

第二大的弯路就是成天xjb看论文,以为这样就能打通任督二脉,从来不复现论文或者尝试自己做出一些东西,这都是〇。

第三大弯路浅尝辄止,有些东西不往死里怼屁都做不出来。

第四大弯路迷信复杂的东西和新技术,以为新东西怼上去肯定就效果爆棚。其实都是不存在的。

还有一位知乎答主ycszen,在他看来,最大弯路,就是迷信论文,不去实验

DL\ML其实是一门实践性的学科,只有通过实验才能把握到其中的细节与真谛。虽说也是在写程序,但是DL的程序基本上无法直观地debug,所以非得自己去复现一下,实践一下,用performance来说话,才知道有没有出错。

尤其是DL,研究发展到现在,论文和实际做的东西脱节已经是心照不宣的事了。正因为NN+GD的鲁棒性,你xjb搞好像也能搞上去,所以写论文很多纯粹在编故事(好论文除外)

所以,我们最好不要一味相信论文所说,尤其是各种解释(经典算法,优秀论文除外)NN就是个黑盒,谁也别说谁。而我们能做的,更重要的是,去实践去复现,去去伪存真,去发现其中真正的本质所在。

而知乎答主:YukiRainCV/ML方向研究生在读)则认为,非科班出身,刚转型AI的程序员最大的弯路是:没学好数学

而对于数学基础好,科班出生的AI程序员来说,则应注意以下几个问题

1.一开始没人带的时候,看论文喜欢看最新的,很大程度上忽视了很多比较老比较基础的论文,嫌弃以前的方法performance不好什么的......感觉我身边一些人也走进过这个误区......

2.永远不要迷信某个特定的模型,不要因为random forest在某个任务上效果好,就以后遇到什么任务都上random forest;也不要觉得深度学习就是万能的,什么都可以套神经网络解决;不要看到比赛里面大家整天用xgboost就整人云亦云地复制。学各种算法的时候,书上一般会告诉你这个算法有balabala优点一堆,但是一般不会告诉你这个算法也有balabala一堆缺点,我花了蛮长时间在这个坑里,慢慢摸索各种不同模型的特性。

3. 不要迷信一些理论性很强的论文,我一开始的时候,经常看到一大堆公式就下意识会觉得这个模型可能效果不错。事实上很多论文的理论推导和它的代码毫无关联(参见已经彻底回归炼丹的WGAN GP),还有很多论文的推导需要很强的assumption支持(参见每年都会出现在顶会的一些给模型加riemannian geometry的论文),等等。

那么面对这些弯路,又应该如何解决呢?

那就是走正统的教育路线,你follow的人一定是真正做事情的人。机器学习还没有达到批量化流水生产的阶段,因此一个好的老师傅比自学效果好很多。不仅如此,老师傅们一般都有自己多年经验总结出来的经验,往往可以避免很多不必要弯路。目前机器学习的资料有很多,动辄就有几个G的材料可以下载或者观看。而很多朋友都有收集癖,一下子购买十几本书的人我也常常能够看到。而机器学习的发展和变化速度很快,在入门期间,建议小而精的选择资料。这不仅可以节约重复学习的时间,也可以读有品位的材料。

为了防止我们走更多的弯路,小象给我们提供了一个follow大牛的机会,帮助我们强化机器学习中需要的数学基础知识,深入理解经典算法的数学原理,不仅可以掌握工业界广泛应用的机器学习模型,还会培养用机器学习解决问题的思路。


原文发布时间为:2018-09-19

本文作者:小象学院

本文来自云栖社区合作伙伴“Python中文社区”,了解相关信息可以关注“Python中文社区””。

相关文章
|
3月前
|
机器学习/深度学习 自然语言处理 算法
什么是机器学习
什么是机器学习
32 0
|
4月前
|
机器学习/深度学习 自然语言处理 算法
机器学习介绍
机器学习介绍
22 0
|
机器学习/深度学习
机器学习连载(10)
机器学习连载(10)
46 0
机器学习连载(10)
|
机器学习/深度学习
机器学习连载(7)
机器学习连载(7)
49 0
机器学习连载(7)
|
机器学习/深度学习
机器学习连载(4)
机器学习连载(4)
53 0
机器学习连载(4)
|
机器学习/深度学习
机器学习连载(15)
机器学习连载(15)
37 0
机器学习连载(15)
|
存储 机器学习/深度学习 并行计算
【机器学习】文章9
①Numpy的简介 NumPy(Numerical Python)是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix)),支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。 🚩一个用python实现的科学计算,包括: 1、一个强大的N维数组对象Array; 2、比较成熟的(广播)函数库; 3、用于整合C/C++和Fortran代码的工具包; 4、实用的线性代数、傅里叶变换和随机数生成函数。numpy和稀疏矩阵运算
89 0
【机器学习】文章9
|
机器学习/深度学习
|
机器学习/深度学习 算法 数据挖掘
机器学习初识
即我们提供数据集,然后计算机根据一定的算法帮我们构建一个模型,相当于一个学习过程,之后输入新的数据,模型返回给我们一定的数据
92 0
|
机器学习/深度学习 人工智能 分布式计算
机器学习之一:什么是机器学习?
机器学习之一:什么是机器学习?