什么是机器学习?

机器学习是一门多领域交叉学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

简单来说,就是计算机从数据中学习出规律和模式,以应用在新数据上做预测的任务。

机器学习入门自学(零基础学习机器学习该怎么入门)(1)

近几年来互联网数据大爆炸,数据的丰富程度和覆盖面也远远超出了人工可以观察和总结的范畴,而机器学习的算法能指引计算机在海量数据中,挖掘出最有用的价值,这样使得无数的数据学习者为之着迷。

学习机器学习需要关注的问题

其实并非所有的问题都适合用机器学习来解决,像很多逻辑清晰的问题用规则就可以很高效准确地处理。那么机器学习,到底关心和解决什么样的问题呢?

机器学习入门自学(零基础学习机器学习该怎么入门)(2)

从功能的角度来分类,机器学习是在一定量级的数据上,可以解决以下的问题:

1.分类问题:根据数据的样本抽取出的特征,判定其属于有限个类别中的哪一个。比如:垃圾邮件识别哪些是垃圾邮件。

2.回归问题:根据数据样本上抽取出的特征,预测出一个连续值的结果。比如:漫威《复联3》的票房。(多么希望每天下班时间在地铁上来个响指~)

3.聚类问题:根据数据样本上抽取出的特征,让样本抱抱团。比如:google的新闻分类。

如果你是混迹IT行业的,你会发现机器学习在以下热点问题中有广泛应用。

入门方法与学习路径

机器学习入门自学(零基础学习机器学习该怎么入门)(3)

其实机器学习对大多数入门者也是有一个通用的学习路径的,这样可以降低大家的学习门槛,同时激发我们的学习乐趣。

机器学习入门自学(零基础学习机器学习该怎么入门)(4)

那我们说一下这个学习路径:

先从基础部分:数学基础、典型机器学习算法、编程基础学起。因为机器学习是一个将数学/算法理论和工程实践紧密结合在一起的领域,需要扎实的理论基础帮助引导数据分析与模型调优,同时也需要精湛的工程开发能力去高效化地训练和部署模型和服务。

接下来就上述图中的部分,展开分别来介绍一下:

数学基础

机器学习之所以相对于其他开发工作,更有门槛的根本就是数学。每一个算法,要在训练集上最大程度拟合同时又保证泛化能力,需要不断分析结果和数据、调优参数,这就需要我们要对数据分布和模型底层的数学原理有一定的理解了。所幸的是如果只是想合理的应用机器学习,而不是做相关方向高端的research,需要的数学知识只要肯用功学一学还是可以理解下来的。

基本所有常见机器学习算法需要的数学基础,也都集中在微积分、线性代数和概率与统计当中。

典型的算法

绝大多数的问题用典型机器学习的算法都能解决,下面简单地列举了一些方法:

机器学习入门自学(零基础学习机器学习该怎么入门)(5)

编程语言、工具和环境

我们说了很多的理论知识,现在要落到实际动手实现解决问题上了。对大多数初学者而言,Python语言是很好的入门语言,很容易上手,同时又活跃的社区支持,丰富的工具包帮助我们完成想法。相对而言,似乎计算机相关的同学用Python多一些,而数学统计出身的同学更喜欢R一些。资深程序员则更偏向java和C 相关机器学习package。

基本工作流程

学到这里我们基本具备了机器学习的必要条件,接下来就是怎么去运用它们去做一个完整的机器学习的项目了。技术学派为大家画了一个工作流程图方便大家更好的学习。

机器学习入门自学(零基础学习机器学习该怎么入门)(6)

这个工作流程主要是在工程实践上总结出的一些经验。并不是说每个项目都包含完整的一个流程。这里的部分只是一个指导性的说明,只有大家自己多去实践,多积累项目经验,就会让自己有个更深刻的认识。

分享 IT 技术和行业经验,请关注-技术学派。

,