3经典算法
文章目录
- 初心便是在深度学习、人工智能呼风唤雨的时代,对数据和结
论之间那条朴素之路的永恒探寻,是集前人之大智,
真诚质朴求法向道的心中夙愿。
- 没有最好的分类器,只有最合适的分类器。随着神
经网络模型日趋火热,深度学习大有一统江湖之势,
传统机器学习算法似乎已经彻底被深度学习的光环
所笼罩。然而,深度学习是数据驱动的,失去了数据,
再精密的深度网络结构也是画饼充饥,无的放矢。
在很多实际问题中,我们很难得到海量且带有精确
标注的数据,这时深度学习也就没有大显身手的余
地,反而许多传统方法可以灵活巧妙地进行处理。
本章将介绍有监督学习中的几种经典分类算法,从
数学原理到实例分析,再到扩展应用,深入浅出地
为读者解读分类问题历史长河中的胜败兴衰。掌握
机器学习的基本模型,不仅是学好深度学习、成为
优秀数据工程师的基础,更可以将很多数学模型、
统计理论学以致用,探寻人工智能时代数据海洋中
的规律与本源。
1 支持向量机
93%
场景描述
支持向量机( Support Vector Machine,SVM)是众多监督学习方法中十分出色的
一种,几乎所有讲述经典机器学习方法的教材都会介绍。关于SVM,流传着一个关于天
使与魔鬼的故事。
传说魔鬼和天使玩了一个游戏,魔鬼在桌上放了两种颜色的球,如图3.1所示。魔鬼
让天使用一根木棍将它们分开。这对天使来说,似乎太容易了。天使不假思索地一摆,便
完成了任务,如图3.2所示。魔鬼又加入了更多的球。随着球的增多,似乎有的球不能再
被原来的木棍正确分开,如图3.3所示
图3.1分球问题1
图3.2分球问题1的简单解
图3.3分球问题2
SVM实际上是在为天使找到木棒的最佳放置位置,使得两边的球都离分隔它们的木棒
足够远,如图3.4所示。依照SVM为天使选择的木棒位置,魔鬼即使按刚才的方式继续
加入新球,木棒也能很好地将两类不同的球分开,如图3.5所示。
2 逻辑回归
场景描述
- 逻辑回归是机器学习最基础常用的
- 原理推导及扩展应用几乎是工程师必备技能
- 病理诊断、个人信用评估、垃圾邮件分类,
- 无不体现逻辑回归精巧而广泛的应用。
- 本节从模型与原理出发,涵盖扩展与应用,一探逻辑回归的真谛。
逻辑回归相比于线性回归,异同?
-
似乎和数学中线性回归异派同源,但本质大相径庭
-
逻辑回归处理分类,线性回归处理回归问题
- 两者本质区別
-
逻辑回归中,因変量是二元分布
- 模型学习得出的是,
- 即给定自变量和超参数后,得到因变量期望,
- 并基于此期望来处理预测分类问题。
-
线性回归实际上求解的是
- 是对假设的真实关系的一个近似
- 误差项,用这个近似项来处理回归问题
- 分类和回归是机器学习中两不同任务
- 属于分类算法的逻辑回归,命名有历史原因
- 最早由统计学David Cox在1958论文(The regression analysis of binary sequences)中提出
- 当时人们对回归与分类的定义与今天有区别,只是将“回归”这一名字沿用了
- 将逻辑回归的公式整理,得
-
也就是将给定输入预测为正样本的概率
-
逻辑回归可看作是对于“y=1”这一事件的对数几率的线性回归,
- 于是“逻辑回归”这一称谓也就延续下来
- 逻辑回归中,均认为是因变量,而非
- 这便引出逻辑回归与线性回归最大区别,
- 因变量离散
- 线性回归中的因变量连续
- 并且在自变量与超参数确定的情况下,
- 逻辑回归可看作广义线性模型( Generalized Linear Models)
- 在因变量服从二元分布时的特殊情況
- 用最小乘法求解线性回归时,认为因変量服从正态分布
- 二者都用极大似然估计来对训练样本建模
- 线性回归用最小二乘法
- 实际就是在自变量与超参数确定
- 因变量服从正态分布的假设下
- 用极大似然估计的一个化简
- 实际就是在自变量与超参数确定
- 而逻辑回归中通过对似然函数
- 的学习,得到最佳
- 求解超参数的过程中,都可用梯度下降法,
- 这也是监督学习中一个常见的相似之处。
用逻辑回归处理多标签的分类问题时,有哪些常见做法,分別应用于哪些场景,它们之间有怎样关系?
- 用哪一种办法处理多分类的问题取決于具体问题的定义。
- 如果一样本只对应ー标签,可假设每个样本属于不同标签的概率服从几何分布,使用多项逻辑回归Softmax Regression来分类
- 模型的参数,
- 可以看作是对概率的归一化。
- 将k个列向量按排列形成矩阵,写作
- 表示整个参数集。
- 多项逻辑回归参数冗余,即将同时加減一个向量后预测结果不变。
- 类别为2时,
- 利用参数元余的特点,将所有参数减去O1,式(3.16)变为
- 多项逻辑回归实际上是二分类逻辑回归
- 在多标签分类下的拓展
- 样本可能属多个标签时,
- 训练k个二分类的逻辑回归分类器
- 第个分类器区分每个样本是否可归为第类
- 训练分类器时,
- 需把标签整理为“第类”与“非第类”
3决策树
- 通过年岭、长相、工资、是否会编程
- 对男生进行两分类
- 见或不见
- 決策树是种自上而下,对样本数据进行树形分类
- 内部结点属性,叶结点类别
- 从顶部根结点开始,所有样本聚在一起
- 经过根结点的划分,
- 样本被分到不同的子结点中
- 再根据子结点的特征进一步划分,
- 直至所有样本都被归到某类別(叶结点)中。
-
决策树是最基础、常见的有监督
- 常被用于分类和回归,市场营销和生物医药领域
- 主要因为树形与销售、诊断等场景下的决策过程相似
-
将決策树应用集成学习的思想可以得到随机森林、梯度提升决策树等模型,
- 这些12章详细
-
完全生长的決策树模型具有筒单直观、解释性强的特点,
- 值得读者认真理解,
- 这也是为融会贯通集成学习相关内容所做的铺垫。
-
決策树生成含特征选择、树的构造、树的剪枝,
- 第一个问题中对几种常用的決策树对比
- 第二个问探讨决策树不同剪枝方法之间的区别与联系。
1 决策树有哪些常用的启发函数?
- 决策树的目标是从一组样本数据中,根据不同特征和属性,建立一棵树形的分类结构。
- 我们既希望它能拟合训练数据,达到良好的分类效果,
- 同时希望控制其复杂度,使得模型具有一定的泛化能力。
- 对ー个特定的问题,決策树的选择可能有很多种。比如,在场
景描述中,如果女孩把会写代码这一属性放在根结点考虑,可能只需要
很简单的一个树结构就能完成分类,如图3.14
- 从若干不同的決策树中选取最优的決策树是一个NP完全,
- 实际中常用启发式学习的方法去构建一棵满足启发式条件的决策树。
- 常用決策树算法ID3、C4.5、CART,
- 它们构建树所使用的启发式函数各是什么?
- 除了构建准则之外,它们之间的区别与联系是什么?
- ID3
- 最大信息增益
- 样本集合,类别数,
- 数据集的经验熵为
-
是样本集合中属于第类的样本子集
-
特征对数据集的经验条件熵为
- 表示中特征取第个值的子集
- 表示中属于第类的子集
- 信息增益表示为二者之差
- 5个人追女孩
- 年龄两属性(老,年轻),
- 长相三属性(帅,一般,丑),
- 工资三属性(高,中等,低),
- 会写代码两属性(会,不会),
- 最终分类两类(见,不见)。
- 根据女孩有监督得表3.1。
- 写代码”的信息増益最大,样本据此特征可直接被分到叶结点(即见或不见)中,完成决策树生长。
- 实际中,
- 決策树往往不能通过一个特征就完成
- 需在经验熵非0的类别中继续生长。