阅读大概需要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经典书籍之情感分析中文版


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

  1. 有必要将所有机器学习算法都实现一遍吗?

    点击上方"Datawhale",选择"星标"公众号 第一时间获取价值内容 来源:知乎 整理:louwill 链接:https://www.zhihu.com/q ...

  2. 知乎讨论:有必要将所有机器学习算法都实现一遍吗?

    观点分享 来源:知乎 整理:louwill 链接:https://www.zhihu.com/question/36768514 作者:微调 https://www.zhihu.com/questio ...

  3. 有没有必要把机器学习算法自己实现一遍?

    编辑:机器学习算法与自然语言处理-忆臻,Charlotte数据挖掘-小杜https://www.zhihu.com/question/36768514 作者:微调 https://www.zhihu. ...

  4. 需不需要把机器学习算法自己实现一遍?(转)

    来自:知乎 链接:https://www.zhihu.com/question/36768514 作者:微调 https://www.zhihu.com/question/36768514/answe ...

  5. 从零实现来理解机器学习算法:书籍推荐及障碍的克服

     从零实现来理解机器学习算法:书籍推荐及障碍的克服 发表于2015-09-10 16:16| 1261次阅读| 来源Machine Learning Mastery| 2 条评论| 作者Jason ...

  6. 【机器学习基础】数学推导+纯Python实现机器学习算法1:线性回归

    很多同学在学习机器学习的时候,理论粗略看一遍之后就直接上手编程了,非常值得表扬.但是他不是真正的上手写算法,而是去直接调用 sklearn 这样的 package,这就不大妥当了.笔者不是说调包不好, ...

  7. 机器学习算法的优点和缺点总结

    机器学习算法的优点和缺点总结 1.正则化算法(Regularization Algorithms) 它是另一种方法(通常是回归方法)的拓展,这种方法会基于模型复杂性对其进行惩罚,它喜欢相对简单能够更好 ...

  8. 机器学习算法基础知识

    在我们了解了需要解决的机器学习问题的类型之后,我们可以开始考虑搜集来的数据的类型以及我们可以尝试的机器学习算法.在这个帖子里,我们会介绍一遍最流行的机器学习算法.通过浏览主要的算法来大致了解可以利用的 ...

  9. 【机器学习】机器学习算法优缺点对比(汇总篇)

    作者 | 杜博亚 来源 | 阿泽的学习笔记 「本文的目的,是务实.简洁地盘点一番当前机器学习算法」.文中内容结合了个人在查阅资料过程中收集到的前人总结,同时添加了部分自身总结,在这里,依据实际使用中的 ...

  10. 「数据科学家」必备的10种机器学习算法

    来源 | 雷克世界(ID:raicworld) 编译 | 嗯~是阿童木呀.KABUDA.EVA 可以说,机器学习从业者都是个性迥异的.虽然其中一些人会说"我是X方面的专家,X可以在任何类型的 ...

最新文章

  1. ElasticSearch2.4.6的安装部署以及集群部署、ElasticSearch-head等插件的安装
  2. hdu1353 小暴力
  3. hdu 1002 A + B Problem II(大正整数相加)
  4. 唱歌如何保持高位置_歌唱中如何找到声音的高位置,内容详解
  5. android studio升级版本,导入项目出错
  6. Educational Codeforces Round 106 (Rated for Div. 2) D. The Number of Pairs 数论gcd
  7. 数字图像处理 python_5使用Python处理数字的高级操作
  8. 在列表中根据条件来筛选数据
  9. 消息称网易云音乐寻求在港上市 或于明年正式IPO
  10. python中的连续比较是什么_Python算法的分治算法,python,之,连续,子,列表,最大,和...
  11. Android 开发 修改app应用的名字和图标
  12. 东北大学c语言作业答案,{东北大学}2018年秋学期《画法几何及土木建筑制图》在线作业2课后参考答案...
  13. Mac 安装仿宋GB2312 For Word/WPS
  14. [我叫以赏]Python获取B站UP主粉丝数
  15. H2---主题:融入动画技术的交互应用
  16. 经典动漫秒变高清,需要怎么做?
  17. WCE 电源管理器(开胃菜)
  18. 学php收获与体会,实习心得体会及收获
  19. NeoVim/SpaceVim初体验
  20. matlab中类的用法

热门文章

  1. http请求,普通的get和post方法
  2. 关于CoreData的理解和使用.
  3. C++VS2019中新建自定义模板与删除自定义模板
  4. laravel 图片
  5. OpenCV颜色转换和皮肤检测
  6. Python迷宫游戏(基础版)
  7. 20155207第十章课下测试补交
  8. Eclipse JSP 页面设置 charset=UTF-8
  9. 最短路POJ 1062 昂贵的聘礼
  10. C#调用java类、jar包方法