0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

机器学习和深度学习要怎么学呢?机器学习和深度学习的入门资料详细整理

Dbwd_Imgtec 来源:未知 作者:易水寒 2018-08-26 10:29 次阅读

拿到这份文档时想必你的脑海中一直萦绕着这么一个问题,“机器学习/深度学习要怎么学呢?(怎么入门,又怎么进一步掌握?)”。关于这个问题其实并没有一个标准答案,有的人可能适合自底向上的学,也就是先从理论和数学开始,然后是算法实现,最后再通过一些项目去解决生活中的实际问题;有的人则可能适合自顶向下的学,也就是在弄清楚什么是机器学习及为什么学机器学习后,先确定一个系统性的用机器学习来解决实际问题的程序,然后找到一个合适的工具,接着再在各种数据集上做练习以不断加强自己的实践能力与巩固对算法的理解。而这份文档是希望能从纷繁众多的学习资料里为你整理出一个头绪,但即使是这样一个出发点,从最终的结果来看,也还是繁杂了一些,也许之后还会再整理出一个精简版,不过其实一些很不错的入门指南的链接在这份文档里也已列出,仔细找找就会有好东西喔。最后想借用Quora上一份对“I’m very interested in deep learning. How can I get hired?”问题的回答来作为这份学习建议的开场白:“Deep learning (Neural nets)/Machine learning is an ART. ART can never be mastered unless it is practiced. So instead of just learning about them , start exploring them by implementing one. there are outnumbered tutorials on net. choose either lib based implementation such as convnet or torch7 or caffe etc. or try implementing fully from scratch( this way u understand internal structures and linkages of algo better) .Start off with small dataset instead of aiming on high .Start off by minimal architecture.U will learn a lot this way u gain confidence. then you can project yourself to the companies by posting link of ur github repository of machine /deep learning implementations. this will help u in the long run… “—Good Luck

阶段一.机器学习入门

这是最基础也是最重要的一个阶段,借用台大的林轩田教授总结的几句话,在这个阶段我们要注重思考与理解这么几个问题:1.什么是机器学习?What is machine learning机器学习是从数据(data)中学习获取某一方面表现(performance measure)的增进。

2.什么时候机器可以学习(机器学习能为我们做什么)?When can machines learn那么何时考虑使用机器学习,通常需要满足以下三个前提:1)存在有待学习的隐含模式(underlying pattern)。2)该模式无法/难以通过程序实现(no programmable definition)。(when human cannot program the system manually, when human cannot define the solution easily, when needing rapid decisions that humans cannot do, when needing to be user-oriented in a massive scale)比如辨认某个事物,靠人的脑力用程序把辨识规则详细写出来,可能很难做到。y=f(x)y=f(x),xx是输入样本,yy是输出的预测值,这个f()f()未可知,正是需要机器来学的。3)该模式存在足够多的数据(data)。

3.为什么机器可以学习?Why can machines learn

假设训练数据样本和未知的测试样本来自同一的分布(这点尤为重要现有的大部分机器学习算法都从这点出发,好像迁移学习不是),并且假设空间的假设hh是有限的情况下,在训练样本N足够大,假设空间中的所有的假设都会遵循PAC准则(probably approximately correct),确保Ein(h)≈Eout(h)Ein(h)≈Eout(h),每一个假设函数都可以满足近似相等的性质,因此可以通过算法在这些假设空间中找一个Ein(g)≈0Ein(g)≈0的假设,同样PAC也保证了Eout(g)≈0Eout(g)≈0。存在一个未知的目标函数f,机器学习的任务是找出一个假设函数g,使得假设g和目标函数f很接近。

4.怎样让机器学习?How can machines learn这里考虑的就是用于机器学习的算法模型。

5.怎样让机器学得更好?How can machines learn better选择合适的模型、调整模型参数、防止过拟合、交叉验证、特征工程…具体问题具体分析

推荐的课程

1.Coursera-Machine Learninghttps://www.coursera.org/learn/machine-learning/吴恩达教授在Coursera上开的机器学习的公开课,是一门非常好的机器学习入门课程,相信很多同学都知道,就不多说了。但值得一提的是,编程作业除了官网提供的matlab版,也有人用python实现了一遍,对于想要了解python的同学,这是个不错的实践机会:https://github.com/icrtiou/coursera-ML

2.CS229-Machine Learninghttp://open.163.com/movie/2008/1/M/C/M6SGF6VB4_M6SGHFBMC.html?recomend=2同样是吴恩达教授开的公开课,相比Coursera上的课程难度会大一些,适合做一定程度的拔高。以下链接为课程讲义的下载:http://cs229.stanford.edu/materials.html

3.Intro to Machine Learninghttps://www.udacity.com/course/intro-to-machine-learning–ud120Udacity有一个免费的,十周的机器学习课程,着重于理论与实际的应用。对深度学习感兴趣的人这会是一个全面的预备课程。

4.Coursera-Machine Learning Foundationshttp://pan.baidu.com/s/1hsjtaWc这就是一开始提到的林轩田教授在Coursera上开的课,不过现在网上已经下架了,因此给了个百度云盘的链接,可直接下载观看。个人觉得相比前两门课,在基础上讲得会更细致一些,而且全程中文讲课,听起来也相对轻松些,适合想把基础打扎实些的同学观看。

推荐的书籍

1.李航 -《统计学习方法》2.周志华 -《机器学习》这两本书就不用说了,相信大部分对这个领域感兴趣的人都已经人手一本了吧:)个人觉得关键是如何使用这两本书了,先贴出一个周志华教授他自己的建议:http://cs.nju.edu.cn/zhouzh/zhouzh.files/publication/MLbook2016.htm?url_type=39&object_type=webpage&pos=1&from=groupmessage&isappinstalled=1然后我个人的看法是不要孤立地去看这两本书,最好能结合其他资源如公开课、博客等一起去看,还有最重要的一点,一定要注重边看边实践,比如当看到某个模型时,就去网上下载一些相关的数据集和代码来学习一下。这一点做起来可能不是那么容易,因为实践难度会更高一些,也往往意味着更多时间的投入,很多时候可能只是稍微试了一下,碰到些困难,就放弃了,我这一年来的学习也存在着很多这样的情况。但如果想更深入地理解模型、算法,想做出些自己的东西,实践上的练习是绝对必不可少的。

3.其他的入门及深入书籍可参看这个链接:http://www.cnblogs.com/xmphoenix/p/3683870.html其中的《Pattern Recognition And Machine Learning》一书据评“具有强烈的工程气息,可以配合stanford 大学 Andrew Ng 教授的 Machine Learning 视频教程一起来学,效果翻倍。”

推荐的综述论文

1.《The Discipline of Machine Learning》http://www.cs.cmu.edu/~tom/pubs/MachineLearning.pdfTom Mitchell 当年为在CMU建立机器学习系给校长写的东西。

2.《A Few Useful Things to Know about Machine Learning》http://homes.cs.washington.edu/~pedrod/papers/cacm12.pdfPedro Domingos教授的大道理,也许入门时很多概念还不明白,上完公开课后一定要再读一遍。

推荐的编程库

1.scikit-learnhttp://scikit-learn.org/stable/这是基于python来进行机器学习实战的一个很好的库,主要包含分类、回归、聚类、降维的常用算法及具体例程,以及模型选择、预处理这样的影响机器学习模型性能的关键处理。

2.DMLChttp://dmlc.ml/这是一个开源的分布式机器学习项目,包含有MxNet、Minerva这样的灵活而又高效的深度学习库,以及Xgboost这样的大规模、分布式的通用Gradient Boosting库,值得一提的是,由于其性能和效率上的优势,Xgboost自问世起就一直是各类数据挖掘竞赛(如kaggle)的一大杀器。下图为Xgboost与另外两个boosting方法常用包的对比:

xgboost和另外两个常用包的性能对比

推荐的博客

1.掌握机器学习的5条必由之路http://mp.weixin.qq.com/s?__biz=MzI3MTA0MTk1MA==&mid=2651987978&idx=3&sn=6c5e1ae866dd47105cb84417e59502ac&chksm=f12154fbc656dded6edc649fab530efc25f686f027db57f0dc76e24dfa1c6142f1f3bb5ba3e5&mpshare=1&scene=1&srcid=1018HDoQNrHdRpA5A8zyhF3Q#rd传统的机器学习方法提倡从下往上学,先从理论和数学开始,然后是算法实现,最后让你去解决现实世界的问题。作者提倡的掌握机器学习的方法与传统方法相反,是从最有价值的成果部分开始。这一思路值得借鉴。

2.机器学习入门资源不完全汇总http://ml.memect.com/article/machine-learning-guide.html#%E5%9F%BA%E6%9C%AC%E6%A6%82%E5%BF%B5如题,你可以从这个链接中找到更多的入门资源

3.机器学习的最佳入门学习资源http://blog.jobbole.com/56256/这其实是“2”的中文翻译

4.Best Machine Learning Resources for Getting Startedhttp://machinelearningmastery.com/best-machine-learning-resources-for-getting-started/这也是一份很不错的入门资源的整合

5.机器学习相关学习网址记录http://blog.csdn.net/brightming/article/details/50420608有很多东西,从中挑选自己感兴趣的吧

6.机器学习与人工智能学习资源导引http://mindhacks.cn/2008/09/11/machine-learning-and-ai-resources/除了这篇文章本身,大家也可以多关注下文章作者(刘未鹏)的其他博客,有很多方法论的东西写的很棒

7.从入门到精通是怎样一种体验http://blog.csdn.net/kkk584520/article/details/51136439如题,更多有趣的见解也可以直接知乎一下

8.zouxy09的专栏http://blog.csdn.net/zouxy09/article/category/1333962zouxy09也是个博客大牛了,写有很多有价值的文章

9.从机器学习谈起http://www.cnblogs.com/subconscious/p/4107357.html这篇文章“以漫谈的形式介绍跟机器学习相关的所有内容,包括学科(如数据挖掘、计算机视觉等),算法(神经网络,svm)等等”,是一篇写得不错的机器学习入门介绍

10.机器学习系列https://www.52ml.net/20090.html这是一系列的机器学习基础文章,最好可以在整个学习过程中一点点地跟着看

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 人工智能
    +关注

    关注

    1775

    文章

    43715

    浏览量

    230489
  • 机器学习
    +关注

    关注

    66

    文章

    8095

    浏览量

    130516
  • 深度学习
    +关注

    关注

    73

    文章

    5224

    浏览量

    119865

原文标题:机器学习、深度学习的理论与实战入门建议整理

文章出处:【微信号:Imgtec,微信公众号:Imagination Tech】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    一文详解机器学习深度学习的区别

    深度学习这几年特别火,就像5年前的大数据一样,不过深度学习其主要还是属于机器学习的范畴领域内,所
    发表于 09-06 12:48 1313次阅读
    一文详解<b class='flag-5'>机器</b><b class='flag-5'>学习</b>和<b class='flag-5'>深度</b><b class='flag-5'>学习</b>的区别

    探讨机器学习深度学习基本概念与运算过程

    人工智慧隶属于大範畴,包含了机器学习(Machine Learning) 与深度学习(Deep Learning)。如下图所示,我们最兴趣的深度
    的头像 发表于 12-18 15:45 3929次阅读
    探讨<b class='flag-5'>机器</b><b class='flag-5'>学习</b>与<b class='flag-5'>深度</b><b class='flag-5'>学习</b>基本概念与运算过程

    人工智能、数据挖掘、机器学习深度学习的关系

    人工智能、数据挖掘、机器学习深度学习之间,主要有什么关系?
    发表于 03-16 11:35

    如何区分深度学习机器学习

    深度学习与传统的机器学习最主要的区别在于随着数据规模的增加其性能也不断增长。当数据很少时,深度学习
    发表于 10-27 16:50 1736次阅读
    如何区分<b class='flag-5'>深度</b><b class='flag-5'>学习</b>与<b class='flag-5'>机器</b><b class='flag-5'>学习</b>

    一文读懂深度学习机器学习的差异

    机器学习深度学习变得越来越火。突然之间,不管是了解的还是不了解的,所有人都在谈论机器学习
    发表于 11-16 01:38 2850次阅读
    一文读懂<b class='flag-5'>深度</b><b class='flag-5'>学习</b>与<b class='flag-5'>机器</b><b class='flag-5'>学习</b>的差异

    深度学习机器学习深度的不同之处 浅谈深度学习的训练和调参

    近年来,深度学习作为机器学习中比较火的一种方法出现在我们面前,但是和非深度学习
    发表于 05-02 10:30 4158次阅读

    5分钟内看懂机器学习深度学习的区别

    由 mengqiqi 于 星期四, 2018-09-13 09:34 发表 在本文中,我们将研究深度学习机器学习之间的差异。我们将逐一了解它们,然后讨论他们在各个方面的不同之处。除了
    发表于 09-13 17:19 410次阅读

    零基础入行深度学习

    深度学习到底有多热,这里我就不再强调了,也因此有很多人关心这样的几个问题,“适不适合转行深度学习机器
    的头像 发表于 10-19 14:07 2495次阅读

    python机器学习深度学习学习书籍资料免费下载

    本文档的主要主要内容详细介绍的是python机器学习深度学习学习书籍
    发表于 11-05 16:28 93次下载

    从五个方面详谈机器学习深度学习的区别

    继系列上一篇 所以,机器学习深度学习的区别是什么?浅谈后,今天继续深入探讨两者的更多区别。
    的头像 发表于 03-01 15:44 1.6w次阅读

    机器学习深度学习有什么区别?

    深度学习算法现在是图像处理软件库的组成部分。在他们的帮助下,可以学习和训练复杂的功能;但他们的应用也不是万能的。 “机器学习”和“
    的头像 发表于 03-12 16:11 7827次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>学习</b>和<b class='flag-5'>深度</b><b class='flag-5'>学习</b>有什么区别?

    人工智能与机器学习深度学习的区别

    人工智能包含了机器学习深度学习。你可以在图中看到,机器学习是人工智能的子集,
    的头像 发表于 03-29 11:04 1152次阅读
    人工智能与<b class='flag-5'>机器</b><b class='flag-5'>学习</b>、<b class='flag-5'>深度</b><b class='flag-5'>学习</b>的区别

    机器学习深度学习的区别

    机器学习深度学习的区别 随着人工智能技术的不断发展,机器学习
    的头像 发表于 08-17 16:11 3264次阅读

    深度学习机器学习的定义和优缺点 深度学习机器学习的区别

      深度学习机器学习机器学习领域中两个重要的概念,都是人工智能领域非常热门的技术。两者的关系
    发表于 08-21 18:27 1948次阅读

    机器学习深度学习的区别

      机器学习深度学习是当今最流行的人工智能(AI)技术之一。这两种技术都有助于在不需要人类干预的情况下让计算机自主学习和改进预测模型。本文
    发表于 08-28 17:31 1020次阅读