资源 | 有没有必要把机器学习算法自己实现一遍?

阅读大概需要5分钟

跟随小博主,每天进步一丢丢

导读

有很多小伙伴问过我这样的问题,有没有必要把机器学习算法自己实现一遍。那么今天的答案来了。往下看,自己领会,还有2个资源

导读

知乎 陈默:

读书时候曾经把PRML所有算法实现过一遍。最后发布了一个库,现在是Github上星星最多的Matlab库之一(应该是排第二)。读PRML的同学可以参考一下,代码注释给出了重要部分对应的公式在PRML的出处。变量命名也尽量与书做了统一。希望对学习PRML的同学有所帮助。

zenRRan:

这个链接我也给大家找到啦  嘿嘿

https://github.com/PRML/PRMLT

PRML大家知道吗?就是模式识别机器学习,一本外国的机器学习经典著作,贼厚,贼详细,我曾经入手一本。咳咳,没看多少捏。。书封面是下面这个样子

如果你想要在机器学习(当然包括深度学习)这个方向走很远的话,还是推荐买个纸质版的这个,x宝上二手的好像几十元就能买,我就是这里买的。

继续话题

知乎 陈默:

这个经历对我的帮助大概有以下几个方面:

1) 对算法细节的理解更加深刻了。

书中毕竟不会给出所有细节,而且书本身可能就是错的。为了写出代码,我几乎是把所有公式重新推了一遍,自己存下的note里面公式数量绝对远远多于书本身,期间也发现了书中无数的错误,这些错误在初读的时候根本意识不到。这样一遍下来,让我对推公式的信心大增,看论文不会怕看不懂公式了。遇到看不懂的就推一遍,推不出的就抄一遍,之后总会懂的。一个side effect就是让我变得愤青了,看什么paper都觉得烂。因为读paper的时候,你会发现,很多paper违背基本常识,即使影响力非常大的一些paper里也有这样那样的错误。

2) 可以了解很多看书学不到的各种trick。

所有算法几乎都有坑。比如hyper-parameter什么意义怎么设,怎么初始化,numerical stability的怎么保证,如何保证矩阵正定,计算机rounding error的影响,numerical underflow和overflow问题等等。

3) 对整个领域各个算法的关联有更深刻的了解,思维形成一个关系网。

看到一个算法就会自然的去想跟其他算法的联系,怎么去扩展。如果一篇paper我不能把它纳入到这个关系网里,我就觉得自己没懂。要么推出联系,要么推出矛盾证明这篇paper垃圾。另一个side effect就是我看paper从来不根据实验好坏判断优劣。

虽然自己动手实现算法有好处,但是性价比几何还是个见仁见智的问题,毕竟这是一个很费时的过程。我并不认为一定有必要自己实现书上所有算法,毕竟每个人所能关注的领域还是有限的,懂得算法大致原理,具体用的时候在细研究就可以。很多算法我也是写完了从来没用过。几年过去后,我在回头看自己的代码也很难看的懂,细节还得看公式。

但是对于自己的研究领域我建议还是有必要把经典算法动手实现一遍加深理解。

zenRRan:

综上所说,当然还是推荐把机器学习算法都过一遍了。但是,哪来的时间呢?每周抽点空看看就行。坚持坚持!

当然,我都猜到你会说matlab版本的或许看不懂,哼哼,我都猜到啦,我又在github上找了一个python版本的

链接为

https://github.com/ctgk/PRML

我看上他的主要目的是因为用了jupyter notebook!很清晰明了

有代码还有及时输出展示。

好啦,希望对你有帮助。看完下面单词再走啦!

上面知乎链接为

https://www.zhihu.com/question/36768514/answer/83577695


因为最近微信改版改的比较频繁,很多小伙伴反应当天我是否发了文章,当然发了呀,只是你还没有星标这个公众号呀。我接下来讲继续持续的更新python,机器学习,深度学习,linux,基础数学以及自然语言处理的各种分类方法。如果不想错过,快点星标下呀!嘿嘿。还不知道怎么星标?那就看看下面的方法

IELTS a bit

notable adj. 值得注意的;显著的;重要的

primitive adj. 原始的;远古的

rash adj. 未仔细考虑后果的;轻率的

推荐阅读:

一大批历史精彩文章啦

详解文本分类之多通道CNN的理论与实践

详解文本分类之DeepCNN的理论与实践

介绍4个大神常用而你不常用的python函数

资源 | 邓力、刘洋等合著的这本NLP经典书籍之情感分析中文版


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值