数据挖掘常见算法(分类算法)

K-近邻算法(KNN)

K-近邻分类法的基本思想:通过计算每个训练数据到待分类元组Zu的距离,取和待分类元组距离最近的K个训练数据,K个数据中哪个类别的训练数据占多数,则待分类元组Zu就属于哪个类别。

KNN算法描述:

  1. 对新的数据集中的每一个数据点,计算其到已知分类信息的数据集中所有数据点的距离。
  2. 将计算得到的所有距离进行排序,一般是升序排序。
  3. 选取其中前K个与未知点离得最近的点。
  4. 统计这K个已知分类信息中各个类别出现的频数,
  5. 选取上述K个点中类别频数最高的,作为未知点的类别。

eg:设某公司现有8名员工的基本信息,包括其个子为高个,中等,矮个的分类标识

公司现刚招进一位名叫刘萍的新员工Z1,令k=5,试采用 k-NN分类算法判断员工刘萍的个子属于哪一类?

解:

决策树

决策树是通过一系列规则对数据进行分类的过程。它提供一种在什么条件下会得到什么值的类似规则的方法。通常决策树主要有三种实现,分别是ID3算法,CART算法和C4.5算法

决策树分为分类树和回归树两种,分类树对离散变量做决策树,回归树对连续变量做决策树。

决策树分类方法采用自顶向下的递归方式

一棵决策树的生成过程主要分为以下3个部分:

  1. 特征选择
  2. 决策树生成
  3. 剪枝

研究结果表明,一般情况下, 树越小则树的预测能力越强。

理论上讲,后剪枝好于预先剪枝,但计算复杂度大。

典型决策树算法

ID3

ID3算法用信息增益作为属性测试条件,且信息增益值越大以该属性作为分支结点越好。

ID3算法的核心在于使用"信息熵"作为衡量标准,通过计算每个属性的信息增益,选择信息增益最高的属性作为划分标准,重复这个过程直至生成一个能完美分类训练的决策树,采用贪心算法,不能保证全局最优.

递归终止条件:①当分到某个类时,目标属性全是一个值. OR ②当分到某个类时,某个值的比例达到给定的阈值.

信息熵E,一个系统越是有序,信息熵越低;反之,一个系统越混乱,信息熵越高.

info信息量

若存在n个相同概率的消息,则每个消息的概率p=1/n,一个消息传递的信息量为: -Log2(1/n)=Log2n (使用以2为底的对数函数,是因为计算机中的信息用二进位编码。)

gain信息增益 ,选择gain(max)作为结点

|----|----|----|----|---|-----|
| 序号 | 天气 | 气温 | 湿度 | 风 | 打网球 |
| 1 | 晴 | 热 | 高 | 无 | N |
| 2 | 晴 | 热 | 高 | 有 | N |
| 3 | 多云 | 热 | 高 | 无 | Y |
| 4 | 雨 | 温暖 | 高 | 无 | Y |
| 5 | 雨 | 凉爽 | 正常 | 无 | Y |
| 6 | 雨 | 凉爽 | 正常 | 有 | N |
| 7 | 多云 | 凉爽 | 正常 | 有 | Y |
| 8 | 晴 | 温暖 | 高 | 无 | N |
| 9 | 晴 | 凉爽 | 正常 | 无 | Y |
| 10 | 雨 | 温暖 | 正常 | 无 | Y |
| 11 | 晴 | 温暖 | 正常 | 有 | Y |
| 12 | 多云 | 温暖 | 高 | 有 | Y |
| 13 | 多云 | 热 | 正常 | 无 | Y |
| 14 | 雨 | 温暖 | 高 | 有 | N |

ID3优点:算法的理论清晰,方法简单,学习能力较强。

决策树ID3算法的主要问题:过拟合,对数据中的噪声敏感以及不稳定.只能处理离散属性数据,不能处理有缺失的数据。

改进策略:使用决策树的改进版本,如随机森林何梯度提升.

C4.5

C4.5和ID3都是利用贪心算法进行求解,不同的是分类决策的依据不同.

C4.5算法在结构和递归上与ID3完全相同,区别在于选取决断特征时选择信息增益比最大的.

C4.5既可以处理离散型属性,也可以处理连续型属性.

CART

CART算法构成的是一个二叉树,它在每一步的决策时只能是"是"或者"否",即使一个feature有多个取值,也是把数据分为两部分。选择Gini系数最小值作为结点

|----|-----|----|------|------|
| ID | 有房者 | 婚姻 | 年收入 | 拖欠贷款 |
| 1 | 是 | 单身 | 125K | 否 |
| 2 | 否 | 已婚 | 100K | 否 |
| 3 | 否 | 单身 | 70K | 否 |
| 4 | 是 | 已婚 | 120K | 否 |
| 5 | 否 | 离异 | 95K | 是 |
| 6 | 否 | 已婚 | 60K | 否 |
| 7 | 是 | 离异 | 220K | 否 |
| 8 | 否 | 单身 | 85K | 是 |
| 9 | 否 | 已婚 | 75K | 否 |
| 10 | 否 | 单身 | 90K | 是 |

解:

朴素贝叶斯

整个朴素贝叶斯分类可分为三个阶段:

第一阶段是准备工作阶段

第二阶段是分类器训练阶段

第三阶段是应用阶段

相关推荐
云微客AI剪辑矩阵系统16 分钟前
矩阵新玩法,云微客AI矩阵系统开启新营销大门
人工智能·ai·矩阵·云微客
lose and dream_1122 分钟前
【 2024!深入了解 大语言模型(LLM)微调方法(总结)】
大数据·人工智能·opencv·机器学习·语言模型·自然语言处理·架构
x-cmd37 分钟前
[240704] 苹果获得 OpenAI 董事会观察员席位 | mySCADA myPRO 发现可在设备上远程执行代码漏洞
人工智能·安全·chatgpt·微软·openai·cve·苹果
半截詩43 分钟前
力扣Hot100-24两两交换链表中的节点(三指针)
算法
庞德公44 分钟前
解锁Diffusion Model: 初识Stable Diffusion、DALL-E、Imagen
人工智能·stable diffusion·imagen·dall-e
AI大模型-王哥1 小时前
神经网络入门:从零到训练
人工智能·深度学习·神经网络·大模型·ai大模型
2401_857636391 小时前
Scala中的尾递归优化:深入探索与实践
大数据·算法·scala
点云侠1 小时前
matlab 干涉图仿真
开发语言·人工智能·算法·计算机视觉·matlab
逼子格1 小时前
66、基于长短期记忆 (LSTM) 网络对序列数据进行分类
人工智能·rnn·深度学习·lstm·长短期记忆网络·序列数据分类
KompasAI1 小时前
客户服务的智能升级:Kompas.ai如何改善客户体验
大数据·人工智能·aigc·语音识别·ai写作