机器学习入门指导
点击箭头处“蓝色字”,关注我哦!!
随着人工智能的火热,越来越多的人想进入这个方向,网上也出现了很多机器学习相关的学习资料。隔行如隔山,非相关专业的人想学习机器学习一不小心就踩进坑里,耽误时间、浪费精力,今天我就系统的介绍一下怎么入门机器学习。
0
目录
介绍 机器学习平台 机器学习应用 机器学习分类 机器学习 视频课程 书籍 开源学习项目 深度学习 视频课程 书籍 强化学习 视频课程 SpinningUp 数学 书籍 优化算法
1
介绍
要想入门机器学习,首先要弄清楚机器学习平台、机器学习应用、机器学习这三者之间的区别,能够选择性、有目标的进行学习。
1.1
机器学习平台
这就是我么常常听到的tensorflow、pytorch、caffe、mxnet、scipy、sklearn等,我们在做相应的工作时会涉及矩阵运算、卷积运算、梯度传播、池化、dropout、激活函数、dataloader、优化算法,如果用代码从基础一步一步实现,势必会耗费大量时间,而且最终的效果和精度也不一定达到我们想要的结果,因此,tensorflow、pytorch这些成熟、优秀的平台就是来解决这些问题,能够高效的实现我们想要的功能,不仅精度高,而且能够节省大量的时间成本,换句话说,这就是类似于matplotlib、numpy之类的第三方工具包。
详情可查看另一篇文章[资源!机器学习平台优质资源集合]
1.2
机器学习应用
机器学习之所以备受重视,就是因为它有很强的应用价值,例如回归、分类,再具体一点就是计算机视觉、自然语言处理、搜索推荐等。
1.3
机器学习分类
侠义解释:指代传统的机器学习算法,例如朴素贝叶斯、k-means、svm、Adaboost等; 广义解释:广义上来说包括传统机器学习、深度学习、强化学习、增量学习、元学习、迁移学习等,下面的介绍广义上介绍机器学习的入门(后面机器学习指代传统机器学习);
2
机器学习
2.1
视频课程
网上课程有很多,但是人的精力有限,是不可能逐个观看,而且网上绝大多数的课程都是以盈利为目的,质量有限,容易误入歧途,这里我就推荐两个不错的课程。
1https://study.163.com/course/introduction.htm?courseId=1004570029&_trace_c_p_k2_=ec13897451454fb3b2a1eafe20f97b1f
(2) 莫烦Python:1https://morvanzhou.github.io/
推荐理由:吴恩达自然不必说,人工智能领域的大牛,无论是在学界还是在企业界都很有影响力,我觉得吴恩达的不仅有理论性,而且很实用。《机器学习》这门课程可以称得上是入门经典,而且吴恩达的语速相对很多人例如Hinton、李飞飞团队的授课语速要慢一些,更有助于理解,能够跟得上节奏。 莫烦Python有很多课程机器学习、强化学习、Python基础、深度学习框架,很全面,中文授课,内容不深,但是有助于入门。
2.2
书籍
《机器学习》 周志华
《机器学习实战》Peter Harrington
推荐理由:《机器学习》这本书主要讲的是传统机器学习算法,通俗易懂,没有过多的公式推导。《机器学习实战》这本书对每个机器算法都从头到尾实现了一遍,相对于前面这两本书,这本书更偏重于实践,结合很多实例直接编程,如果跟随这本书把各个算法实现一遍,对加深记忆有很大帮助。
2.3
开源学习项目
1https://github.com/machinelearningmindset/TensorFlow-Course
推荐理由:tensorflow_course是一个gihub资源,目前已经9.5k个star,受欢迎程度可见一斑,上面有传统算法,例如线性回归、支持向量机,也有深度学习算法,例如卷积神经网络,能够让你在学习机器学习的过程中进一步熟练tensorflow。
tensorflow_cookbook
1https://github.com/nfmcclure/tensorflow_cookbook
推荐理由:这也是一个github项目资源,虽然不如上面这个火热,但是目前也拥有4.1k个star,和上面这个资源有些类似之处,包括传统算法和深度学习算法的实现,可以边学习机器学习知识、边学习深度学习平台。
3
深度学习
3.1
视频课程
1https://mooc.study.163.com/smartSpec/detail/1001319001.htm
推荐理由:深度学习这门课程我只推荐这一个视频资源,因为我觉得足够了,《深度学习工程师》这门课程讲了很多深度学习策略、超参数调优、结构化机器学习、卷积神经网络和序列模型,都很实用,而且应用层面也包含了计算机视觉、时间序列等,很全面。
3.2
书籍
《深度学习》Goodfellow、Bengio
推荐理由:《深度学习》这本书仅仅看到这几位作者就会明白错不了,都是大牛,介绍了不同方向的机器学习技术,而且很大一部分在介绍深度学习的策略和模型优化方法。
4
强化学习
4.1
视频课程
1https://www.bilibili.com/video/av32149008?from=search&seid=6543292005555498773
推荐理由:能把这一门课看明白就可以了,David Silver大神的作品,强化学习入门经典。
4.2
SpinningUp
1https://zhuanlan.zhihu.com/p/55662690
这是OpenAI开源的学习项目,涵盖优秀文章、开源代码、benchmark等。
5
数学
5.1
书籍
在机器学习中,数学起着至关重要的作用,无论是传统机器学习,还是深度学习,最终都会涉及一个优化过程,其中包括梯度优化和无梯度优化,所以学习一些数学知识也是非常有必要的。当然,我认为大多数大学本科阶段的通识教育数学课程就足够了。
《概率论与数理统计》 盛骤
《数值分析》李庆扬
《线性代数》同济大学
推荐理由:这几本书都是用于大学生教材的,所以相对严谨一些,而且难度适中,对于做人工智能,我觉得这几本数学教材涵盖的知识差不多了。《数值分析》是我们本科数学系的教材,涵盖很多数值计算方法,很多可能在机器学习里用不到,但是我觉得想要做的更深,多了解一些数学是有价值的。
6
优化算法
就像前面所说的那样,机器学习中的问题最后都活落脚于一个优化问题,在大多数项目中主要是解决有梯度优化问题,比较常用的梯度下降法、动量法momentum、Adagrad、RMSProp、Adadelta、Adam等算法,对这些算法深入了解能够更加有助于对于机器学习的理解。
1https://zhuanlan.zhihu.com/p/54192512
这是我之前系统总结的常用优化算法的文章,循序渐进的介绍不同算法之间的关联,已经不同算法的优缺点,比较容易理解。