小白入门:我是如何学好机器学习的?

原文链接: https://www.toutiao.com/i6751679334781551107/

2019-10-25 18:04:05

作者 | Jae Duk Seo

译者 | Tianyu

编辑 | 夕颜

出品 | AI科技大本营(ID: rgznai100)

在我看来,机器学习是一个计算机科学和数学知识相融合的研究领域。虽然这是个很有趣的领域,但它其实没有想象中那么难。我相信只要你有足够的动力、毅力和时间,就可以成为这方面的专家。

接下来我要告诉你的是,从事机器学习方面的工作可以赚很多钱。而且在很多行业都有大量机会,所以你可以尝试不同的行业。

我发现一件有趣的事,这些年机器学习的基础知识和原理并没有变(当然我很可能说的不对)。我想表达的是,目前的大多数模型都是由一些我们所熟悉的模块组成的,如全连接层、卷积层、残差层以及标准化层。当然并不是每种模型都是由这些模块组成的。也有一些特殊的例子,如空间变换网络或是注意力机制。但对于不同类型的模型来说,其构成模块或多或少都存在类似的部分。

那么这意味着什么呢?这意味着,当你学会基础知识以后,再去学习复杂的内容就会变得相当容易,而且会节省大量时间。

在此我想分享一些助我学好机器学习的秘诀和技巧。但请注意,我目前仍在学习机器学习,还有大量待研究的内容。

享受学习的过程,慢中求稳

首先我想强调的是,一定要多花时间去理解机器学习的基础知识。

说得更确切一点,要认真学习数学。

理解反向传播需要了解向量运算。概率论与统计对于学习信息论至关重要。有关优化的知识也是必须学习的,因为模型训练到最后都需要进行优化这一步骤。

我知道对于刚入门的人来说,没必要非得学习这些东西,因为有很多打包好的工具包可以自动完成这些过程。但我不相信只了解这些模块就可以让你成为这个领域的优秀研究者和工程师。

不过,我相信学习并理解了这些概念以后,很多事情会变得轻而易举。至少对我来说如此。举个例子,不借助工具包,从头搭建一个神经网络,可以让你对模型的学习过程有更加透彻的理解。

与其他研究者进行工作交流

我目前是 Ryerson Vision Lab 的一员,正在攻读硕士学位。我在实验室里结交了很多朋友。我时不时会看一眼他们的显示器,观察他们在做什么。

我经常会看到一些有意思的内容,比如图像分割结果或是一堆代码。我会问他们一些问题,比如“这段代码是关于什么的?它能用来干什么?你正在解决什么问题?”

接下来,一段对话就开启了。他们会告诉我自己正在处理的问题,我总能学到新的知识点和解决方法。这对我来说非常有意义,因为当我以后也遇到类似问题时,就不必从零开始了。同时,我也会接触到一些此前完全不了解的全新话题和论文。

找一个你感兴趣的技术理论相关的应用实例

我目前正在研究几个感兴趣的课题,例如风格迁移。我最初开始研究这些课题,大都是因为看了相关资料或 YouTube 视频。

也存在这样的情况,我开始研究一个课题仅仅是因为我想做出一些很酷的东西。在这个过程中,针对同样的问题,我常常可以找到不同的或者更好的解决方法。

当然了,我们无法保证新的方法都可以表现更好。但这是一个学习新知识的过程,要尽量做到完全理解,达到可以自如地使用新方法的程度,这个过程真的帮助我提升很多。

另一方面,我之所以如此受益于这个方法,是因为我学习到了如何进行有价值的实践。例如,当一个很酷的项目被开源了,我会把项目文件克隆到本地,然后学习其他研究者的代码。

长此以往,我通过这种方式观察其他研究者在做的事情,并从他们的代码中学习知识。不过,经常会出现有些研究者的代码让人很难读懂的情况,因为他们本身不是软件工程师。但这并不影响我观察他们在做的事情,而且我会记下不该做的事情。

结论

差不多就是这样,这些都是帮助我学习机器学习的秘诀和技巧,我希望它们也能帮得上你。

最后,我相信只要你有好奇心和热情,就一定可以研究自己感兴趣的课题,学好机器学习。如今,有很多有关深度学习的优秀线上内容。

也许这些方法对你有帮助,也可能完全没用,但没关系。我们都是不同类型的学习者,不是所有人都穿相同尺码的鞋子。但我希望其中个别方法可以帮得上你!

原文链接:

https://towardsdatascience.com/how-i-got-better-at-machine-learning-63ce0f0e81d7

猜你喜欢

转载自blog.csdn.net/weixin_42137700/article/details/102755809