机器学习入门书籍:李航的统计学习、周志华西瓜书等,***:台大林轩田的机器学习基石与技法;资料不在多,在这里自荐一波,一个有温度有情怀的公众号AlgorithmDeveloper,一起系统地自学机器学习,加油💪。
分享一下我以前自学的经验。
前提条件:①一定的高等数学基础,微分、偏微分、概率论、线性代数等。刚接触不需要太深入,知道,熟悉一些概念即可(比如矩阵的行列式、偏微分求导)。②一定的编程基础,主要是Matlab,Python,熟悉基本的语法即可。③有一定的英文听读能力。如果以上条件不具备,建议别入坑。
第一步:直接上Cousera搜斯坦福大学(Stanford)吴恩达的机器学习课程。如果掌握了前提知识,跟着学,学得懂。不懂的数学概念查资料。课后的练习是该课的精华,一定要自己做。如果不会科学上网,B站搜吴恩达机器学习网课版即可。
这个过程持续1个月,在这期间,可以买一本周志华老师的《机器学习》和李航老师的《统计学习方法》。前者是入门经典,后者更多从数学的角度来讲机器学习,加深理解。
第二步:上完机器学习后,直接上吴恩达的深度学习大课,这么大课又分几门小课,涵盖了深度学习的方方面面,比如CNN、RNN、LSTM、ResNet等。由于深度学习发展很快,一些新的算法并没有讲到,一些算法可能已经过时,但学习思想也是很重要的。
上完这一系列课程大概3个月,在这期间可以买一本《Deep Learning》,最好是英文原版。根据个人情况买一些其它书籍。
第三步:完成了上面两步,基本就算入门了。接下来就是实践+持续学习了。多去github找开源项目,B站、慕课网去找实战项目。边学边做,达到一个熟练的程度。有机会,参加一下比赛,多跟大神交流。
这么做,基本上半年,就可以入门了。
写个简单的入门贴:
机器学习,机器运用一套通用的算法——泛型算法,自动建立起数据逻辑。
For example:
用于分类的泛型算法是能够把一组数据分门别类的,比如识别手写输入和区分垃圾邮件都可以用分类的泛型算法来实现,
此时,可以把机器学习算法看成一个黑盒子,两个任务输入的数据不一样,中间经过机器学习算法的作用,输出不同的结果。
机器学习可以分为有监督学习、无监督学习、半监督学习、强化学习等。这里的监督其实是指用来训练机器学习模型的数据是有标注的,而无监督学习就是没有标注数据,半监督学习是二者的结合,强化学习是对外界环境给的激励或惩罚信号学习自身的策略。下面咱们先从有监督学习开始:
***设,你现在是房地产经纪人,需要对房子进行相对准确的估价。你有一些所在城市三个月内房产交易的信息数据,包括房间数目、房子大小、周边地区环境,以及交易价格等。因为涉及了几个因素,你可能需要一个程序来帮你做这件事情,输入这些相关的信息,程序就能预估出房子的价格。
那么建立一个能预估房价的应用程序,你需要把关于每间房子的数据信息——“训练数据”——输入你的机器学习算法中,算法就会得出用于解决这些数据关系的一套数学公式。这就有点像一份数学考试的答案纸被涂掉了所有的算术符号,就像下面这张图。
非常高兴回答题主的这个问题,最近机器学习是非常热门的一个研究方向,但是需要说明的是机器学习并不是一个新概念了。
早期的机器学习更多是用于数学模型的拟合,数据回归和数据挖掘领域。主要的算法包括朴素贝叶斯,k-近邻,聚类,主成分析PCA等,这都是非常经典的算法。题主至少要了解。
往后随着深度神经网络的出现,机器学习进入了深度机器学的新领域,很大程度上现在火热的机器学习就是指的深度机器学习,包括谷歌的阿尔法狗都属于这一领域。这一部分如何来学好呢?这涉及的知识主要有:1,数学基础知识,包括高数中的导数、梯度,线性代数中的矩阵运算以及概率论的有关内容;2,适合机器学习的编程语言,比如Python和相关的库比如科学计算库:Numpy等;3,选择一个成熟且功能强大的深度学习框架,比如Tensorflow。
最后就是一个好的教学教程,或是教学入门***。这部分有很多资料,题主可以去搜索包括用某宝~
方法大致就是这样了,希望楼主可以通过一些项目不断的去学习,这一过程很可能会遇到一些困难或是问题,要多思考多逛帖子。一定能进步的。