机器学习笔记——第一弹

机器学习概述

最近几年 AI 特别的火,由于人才缺口太大,所有引来了很多人的兴趣,本主题主要为那些想要入门 AI 行业的人准备,学习 AI 要徐徐渐进,AI 入门是十分难的,所有我的文章先以机器学习为引,再一点点深入。

 

机器学习与 AI 有什么关系?一幅图让你懂。

机器学习笔记——第一弹_第1张图片

 

 

什么是机器学习?

 

机器学习研究的是计算机怎样模拟人的学习行为,以获取新的知识或技能,并重新组织已有的知识结构使之不断改善更新自身。

通俗点说就是计算机从数据中获取规律和模式,以应用的新的数据的预测上面。

 

机器学习种类?一幅图让你懂。

机器学习笔记——第一弹_第2张图片

 

机器学习分为监督式学习和非监督式学习,监督式学习就是计算机获取的数据有标签,通俗说计算机要学习的数据上面有标注,计算机可以根据标注将相同标注的数据归为一类,再学习这类数据共同的特征,这样在未来的分析中,计算机就可以提取数据特征,与已学习特征对比,得出结论;非监督式学习相反,所要学习的数据没有标签,计算机要根据算法自己总结。

 

监督式学习又分两类,分类和回归。

 

分类:将学习的数据分为 n 类,对数据样本上抽取的特征,判断数据样本属于n 类中的哪一类。

 

回归:将数据样本分布在二维坐标系中,抽取特征,一般呈线性,在根据线性预测未来连续值结果。

 

非监督式学习分降维和聚类。

 

降维:将高维空间数据映射到低维空间

 

聚类:把 “ 距离 ” 相近的点归为一类,与分类很像,但是所用方法不同,应用方式也不同。

 

机器学习流程?一幅图让你懂。

机器学习笔记——第一弹_第3张图片

建立一个效果好的模型对于机器学习来说至关重要,一个效果好的模型就需要大量的的数据,以及一个能把数据处理好的强大算法,所以模型由算法和数据组成,如果说数据决定了模型的效果上限,那么算法就是让模型的效果靠近这个上限。

 

机器学习中的评估方法

机器学习目标:在给定的训练数据上总结出一个可以归纳数据特征规律、模式的模型,并且模型对新数据样本预测得到一个好的效果。

 

什么样的模型好呢?

泛化能力强的模型。泛化能力就是模型能很好地适用于没见过的样本。

 

机器学习常用评估方法:

机器学习笔记——第一弹_第4张图片

还记得这张图么,图片中第三个模型评估有很多方法,下面会将比较常用的三种方法:

 

1. 留出法

机器学习笔记——第一弹_第5张图片

对于得到的样本,把它分成两部分,一部分作为训练集,一部分作为测试集

 

2. k 折交叉验证法:

机器学习笔记——第一弹_第6张图片

上图是一个10折交叉验证,将数据集D分成10份,分别将其中一份作为测试集其他作为训练集,得出10个结果,对结果求平均值,这个值就是用于调参的值,k折同理

 

3. 自助法:

机器学习笔记——第一弹_第7张图片

从包含m个样本的数据集中有放回的抽取m次,作为训练集,未被抽到的作为测试集,也就是包外估计。其中每个样本抽到概率为1/m,所以一个样本在m次抽取中未被抽到的概率为(1-1/m)^m,求极限lim(1-1/m)^m约等于0.368,所以我们得出一个样本在m次抽取中未被抽到的概率为0.368,进而确定总样本中约有36.8%个样本未被抽到,记住这个数,后面有用

 

决策树与分类

 

机器学习笔记——第一弹_第8张图片

 

上面这副图就是我们常说的决策树。决策树模型是一个模拟人思考过程思想的机器模型。它是由很多个节点、分支、叶子组成。在最上面的我们称它为根节点,在机器学习中就是我们的属性。

 

决策树是基于树的结构进行判断的。所有人都知道树是从下至上不断分支的,每个分支都有自己的前提。决策树即根据每个属性对其判断,选择分支,得到结果,这个结果也将包含属性,再对属性判断,循环,得出最终我们要的结论, yes or no  等。

 

就像我们人是从小学习到大才具备决策能力,计算机也需要学习。

 

从上面的图中会发现,计算机学习就是找到属性并将属性放在合适的位置,做出分支,再做属性,这样一个循环的过程,我们将这个过程叫做 “ 划分属性 ” ,在介绍 “ 划分属性 ” 的方法之前,我先讲一下如何停止这个训练的循环。

 

三种停止条件:

 

  1. 属性的样本集为空。这很好理解,结点中没有样本,也就无法划分了。

  2. 属性的样本集中所有属性相同。结点下的样本都是同一种类型的样本,同样不需要划分。

  3. 属性为空

 

划分属性的方法即最佳属性选择方法:

 

信息熵是度量样本集合 “纯度” 最常用的的一种指标,假定当前样本集合D中k类样本所占比例为P(k),则D的信息熵为:

机器学习笔记——第一弹_第9张图片

引用西瓜书上说,西瓜只有好瓜和坏瓜之分即y有1和2,P(1)可以理解为好瓜所占的比例,P(2)则是坏瓜,利用上面公式可以求出信息熵。

 

并且,信息熵的值越小,纯度越高。纯度指的的是里面的类别一样的相近的概率的高低。

 

1. ID3:信息增益

 

决策树ID3中使用的是信息增益的算法。

 

机器学习笔记——第一弹_第10张图片

信息增益表示不确定性下降的程度,在决策树结点的选择中,信息增益最大的会放在最前面。

 

公式中v代表一种属性a的分支,|D(v)| / |D| 代表这种属性分支在属性样本中所占比例,信息熵D(v)是这种属性分支中的信息熵( “ 好瓜 ”  “ 坏瓜 ” ),最后得出一个关于各个属性的信息增益的排序,排序最前的将作为当前结点,并且,每得到一个结点,下一个结点将重新计算。

 

2. C4.5:信息增益率

 

观察信息增益的算法,我们会发现如果一个属性的样本十分多,那么它的信息增益可能变大,这样会有些不公平,导致结果产生偏差,为了解决这种问题产生了信息增益率:

机器学习笔记——第一弹_第11张图片

会发现所包含样本多的IV也同样大,当然,为了提高效率,会从信息增益高出平均水平的属性中做信息增益率再排序。

 

3. CART:基尼指数

 

机器学习笔记——第一弹_第12张图片

公式反映的是从D中随机抽取样本,不一致的概率。Gino(D)越小,不一致的概率就越小,一致的概率越高,纯度越高。

 

机器学习笔记——第一弹_第13张图片

基尼指数在解决二分类问题上有更好的效果,其中选取会划分后使基尼指数最最小的属性。

 

决策树与剪枝操作:

 

预剪枝:提前终止某些分支的生长。在划分属性过程中,会对比划分前与划分后的精度(精度就是准确度,例如划分前我们确定了哪些是坏瓜,但是好瓜中不确定是否还有坏瓜,当进行次此划分之后,在不确定的好瓜中确定了几个绝对是好瓜,还有一些无法确定的瓜,这样就使精度变大了),如果精度增大则可以划分,如果精度不变或减小,说明划分没有意义,则取消次此划分。

 

后剪枝:生成一棵树后在剪枝。它是在一颗树生成之后,再从下至上剪枝,同样对比这个结点划分前后的精度,如果精度低或平,就剪。

 

预剪枝与后剪枝对比:

 

1. 时间开销:

* 预剪枝:训练时间开销降低,测试时间开销降低

* 后剪枝:训练时间开销增加,测试时间开销降低

~ 不难看出,后剪枝在生成树之后又多算了一些,所有训练时间增加了,而测试时间两种都是从上向下走,时间一样。

 

2. 过拟合 / 欠拟合风险:

* 预剪枝:过拟合风险降低,欠拟合风险增加

* 后剪枝:过拟合风险降低,欠拟合风险降低

~ 预剪枝是发现降低就停止划分,如果后面出现精度增加的划分,在预剪枝中也被剪掉了,使得欠拟合增加。

 

3. 泛化能力:

~ 后剪枝的泛化能力通常优于预剪枝。

 

 

最后正在学习机器学习的伙伴可以关注公众号【大试无妨】,里面有很多人工智能机器学习深度学习python的资源,很丰富,值得收藏。

 

你可能感兴趣的:(机器学习笔记——第一弹)