机器学习实战-简要笔记1

本文是对《机器学习实战》的简要笔记,涵盖了机器学习基础、K-近邻算法、决策树和朴素贝叶斯分类。介绍了监督与无监督学习的概念,K-近邻算法的优缺点及应用,决策树的构建过程及其特点,以及朴素贝叶斯分类在文本分类和垃圾邮件过滤中的应用。
摘要由CSDN通过智能技术生成

       学习了一段时间的《机器学习实战》,有所收获,简要总结如下。

     书中的源码是是基于python2编写的,我手动敲了一遍,每行加了注释,在python3.4.4中调试通过,github链接:https://github.com/ldgang0530/MLA

 

第一章 机器学习基础

       机器学习了横跨计算机科学、工程技术、统计学等多个学科,简单地说就是把无序的数据转换为有用的信息,通过分析训练样本数据,找到规律,进而可以对未知数据进行分类或预测。机器学习有两项重要的任务:分类和回归。分类是将实例数据划分到合适的类别;回归则主要用于预测数值型数据。

       分类和回归属于监督学习,这类算法必须知道预测什么,即目标变量的分类信息。与之相对的是无监督学习,这类学习方法没有的类别信息,也不会给定目标值。在无监督学习中,将数据集合分成类似的对象组成的多个类的过程称为聚类;将寻找描述数据统计值的过程称为密度估计。

       至于如何选择合适的算法:1,首先考虑使用机器学习算法的目的。若是预测目标变量的值,选择监督学习方法,而如果没有目标变量,就选择无监督学习方法。对于监督学习,如果是离散的选择分类算法,如果是连续的则属于回归问题。对于无监督学习,如果只是需要将数据划分为离散的组,使用聚类,如果需要估计数据与每个分组的相似程度,则需要密度估计算法。2,数据问题,是离散还是连续,是否有缺失值,是否有异常等。

       开发机器学习应用程序的步骤:

(1)      收集数据

(2)      准备输入数据

(3)      分析输入数据

(4)      训练算法。无监督学习算法不需要训练算法,因为其没有目标变量值

(5)      测试算法

(6)      使用算法

 

第2章 K-近邻算法

       K-近邻算法是采用测量不同特征值之间的距离方法进行分类。工作原理:已知训练样本集,这些样本集中每个数据都存在类别标签。首先计算新数据的每个特征与样本集中数据对应的特征进行比较,然后提取样本集中特征最相似数据的分类标签。选择最相似的K个样本数据,然后统计这K个相似数据中出现次数最多的分类,作为新数据的分类。

       经分析工作原理,可知:K近邻算法必须保存全部的数据集,占用大量的存储空间,同时必须对每个数据集都计算距离值,使用时较为耗时。从“选择k个数据中出现最多的分类”表明每个样本数据的权重是相同的。在计算距离时,注意数据是否需要归一化,以免因不同属性之间的差别过大,而导致不同属性对结果影响不同。该方法还有一个缺点就是,它无法给出任何数据的基础结构信息,无法知道平均实例样本与典型实例样本具有什么特征。

 

K-近邻算法优缺点:

优点:精度高、对异常值不敏感、无数据输入假定

缺点:计算复杂度高、空间复杂度高

适用范围:数值型和标称型

 

示例:使用K-近邻算法改进约会网站的配对效果

示例:手写识别系统

 

 

第3章 决策树

       K-近邻算法可以解决很多问题,但没有办法给出数据的内在含义,决策树的主要优势就在于数据形式非常容易理解。

       决策树的具体做法是:根据不同的属性值进行划分,直到划分的结果满足要求为止。如下图,摘自《机器学习实战》


决策树优缺点:

优点:计算复杂度不高,输入结果易于理解,对中间值的缺失不敏感,可以处理不相关特征和数据。

缺点:可能会产生过度匹配问题

适用数据类型:数值型和标称型

 

示例:使用决策树预测隐形眼镜的类型

 

第4章 基于概率论的分类方法:朴素贝叶斯

       KNN算法和决策树都要求分类器给出明确的分类答案,即明确确定位置数据实例属于哪一类。朴素贝叶斯则给出了另外一个解决方式:分类器给出一个最优的类别猜测结果,同时给出这个猜测的概率估计值。

       判别规则很简单,假设数据属于类别1的概率是p1,属于类别2的概率是p2,如果p1>p2,则类别为1;如果p1<p2,则类别为2。


示例:使用python进行文本分类

       在该案例的做法中求出样本案例中词汇分别在侮辱性文档和非侮辱性文档出现的概率,然后再依据侮辱性文档的概率和非侮辱性文档的概率,最后求出词汇属于侮辱性文档的概率和输入非侮辱性文档的概率,作比较即可得出结果。

 

示例:使用朴素贝叶斯过滤垃圾邮件

示例:使用朴素贝叶斯分类器从个人广告中获取区域倾向



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值