一文弄懂数据挖掘的十大算法,数据挖掘算法原理讲解

article/2025/10/19 22:28:13

​一个优秀的数据分析师不仅要掌握基本的统计、数据库、数据分析方法、思维、数据分析工具和技能,还要掌握一些数据挖掘的思路,帮助我们挖掘出有价值的数据,这也是数据分析专家和一般数据分析师的差距之一。

在这里插入图片描述

数据挖掘主要分为三类:分类算法、聚类算法和相关规则,基本涵盖了当前商业市场对算法的所有需求。这三类包含了许多经典算法。市面上很多关于数据挖掘算法的介绍都是深奥难懂的。今天我就用我的理解给大家介绍一下数据挖掘十大经典算法的原理,帮助大家快速理解。

数据挖掘算法分类

1、连接分析:PageRank。

2、相关分析:Apriori。

3、分类算法:C4.5,简单的贝叶斯,SVM,KNN,Adaboost,CART。

4、聚类算法:K-Means,EM。

一、PageRank

论文被引用的次数越多,其影响就越大。

网页入口越多,入链质量越高,网页质量越高。

PageRank原理

网页的影响=阻尼影响+所有入链集合页面的加权影响之和。

一个网页的影响:所有进入链的页面的加权影响之和。

一个网页对其他网页的影响是:自身影响/链接数量。

并非所有用户都是通过跳转链接来上网的,还有其他方式,比如直接输入网站访问。

因此需要设置阻尼因子,代表用户根据跳转链接上网的概率。

PageRank比喻说明

1、微博

一个人的微博粉丝数量不一定等于他的实际影响力,还要看粉丝的质量。

如果是僵尸粉没用,但是如果是很多大V或者明星关注的话,影响力很大。

2、店铺经营

顾客较多的店铺质量较好,但要看顾客是否是托。

3、兴趣

对感兴趣的人或事投入相对较多的时间,对其相关的人和事也投入一定的时间。被关注的人或事越多,其影响力/受众就越大。

关于阻尼因子

1、通过邻居的影响来判断你的影响,但是如果你不能通过邻居来访问你,并不意味着你没有影响力,因为可以直接访问你,所以引入了阻尼因子的概念。

2、海洋除了河流流经外,还有雨水,但下雨是随机的。

3、提出阻尼系数,或者解决一些网站显然有大量的链(链),但影响很大。

出链例子:hao123导航网页,出链多,入链少。

入链例子:百度谷歌等搜索引擎,入链很多,出链很少。

二、Apriori(相关分析)

关联挖掘关系,从消费者交易记录中发现商品之间的关系。

Apriori原理

1、支持度

商品组合出现的次数与总次数之比。

五次购买,四次购买牛奶,牛奶支持度为4/5=0.8。

五次购买,三次购买牛奶+面包,牛奶+面包支持3/5=0.6。

2、置信度

购买商品A,购买商品B的概率有多大,发生A时发生B的概率有多大。

买了四次牛奶,其中两次买了啤酒,(牛奶->啤酒)的可信度是2/4=0.5。

三次买啤酒,其中两次买牛奶,(啤酒->牛奶)的可信度为2/3-0.67。

3、提升度

衡量商品A的出现,提高商品B出现概率的程度。

提升度(A->B)=置信度(A->B)/支持度(B)。

提升度>1,有提升;提升度=1,无变化;提升度1,下降。

4、项集频繁

项集:可以是单一商品,也可以是商品组合。

频繁的项集是支持度大于最小支持度的项集(MinSupport)。

计算过程

(1)从K=1开始,经常筛选项集。

(2)在结果中,组合K+1项集,重新筛选。

(3)循环1,2步。K-1项集的结果是最终结果,直到找不到结果。

扩展:FP-Growth算法。

Apriori算法需要多次扫描数据库,性能低,不适合大数据量。

FP-growth算法,通过构建FP树的数据结构,将数据存储在FP树中,只需在构建FP树时扫描数据库两次,后续处理就不需要再访问数据库。

比喻:啤酒和纸尿裤一起卖。

沃尔玛通过数据分析发现,在美国有婴儿的家庭中,母亲通常在家照顾孩子,父亲去超市买尿布。

父亲在买纸尿裤的时候,经常会搭配几瓶啤酒来奖励自己。因此,超市试图推出一种将啤酒和纸尿裤放在一起的促销手段,这实际上大大增加了纸尿裤和啤酒的销量。

三、数据挖掘算法:AdaBoost

AdaBoost原理

简单来说,多个弱分类器训练成强分类器。

将一系列弱分类器作为不同权重比组合的最终分类选择。

计算过程

1、基本权重初始化。

2、奖励权重矩阵,通过现有的分类器计算错误率,选择错误率最低的分类器。

3、通过分类器权重公式,减少正确的样本分布,增加错误的样本分布,获得新的权重矩阵和当前k轮的分类器权重。

4、将新的权重矩阵带入上述步骤2和3,重新计算权重矩阵。

5、迭代N轮,记录每轮最终分类器的权重,获得强分类器。

AdaBoost算法比喻说明

1、利用错题提高学习效率

做对的题,下次少做点,反正都会。

下次多做错题,集中在错题上。

随着学习的深入,错题会越来越少。

2、合理跨境提高利润

苹果公司,软硬件结合,占据了手机市场的大部分利润,两个领域的知识结合产生了新的收益。

四、数据挖掘算法:C4.5(决策树)

决策就是对一个问题有多个答案,选择答案的过程就是决策。

C4.5算法用于产生决策树,主要用于分类。

C4.5计算信息增益率(ID3算法计算信息增益)。

C4.5算法原理

C4.5算法选择最有效的方法对样本集进行分裂,分裂规则是分析所有属性的信息增益率。

信息增益率越大,意味着这个特征分类的能力越强,我们应该优先选择这个特征进行分类。

比喻说明:挑西瓜。

拿到一个西瓜,先判断它的线条。如果很模糊,就觉得不是好瓜。如果很清楚,就觉得是好瓜。如果稍微模糊一点,就考虑它的密度。如果密度大于一定值,就认为是好瓜,否则就是坏瓜。

五、数据挖掘算法:CART(决策树)

CART:Clasification And Regresion Tree,中文叫分类回归树,可以分类也可以回归。

什么是分类树?回归树?

分类树:处理离散数据,即数据类型有限的数据,输出样本类别。

回归树:可以预测连续值,输出一个值,值可以在一定范围内获得。

回归问题和分类问题的本质是一样的,就是对一个输入做一个输出预测,其区别在于输出变量的类型。

CART算法原理

CART分类树

类似于C4.5算法,但属性选择的指标是基尼系数。

基尼系数反映了样本的不确定性。基尼系数越小,样本之间的差异越小,不确定性越低。

分类是一个降低不确定性的过程。CART在构建分类树时,会选择基尼系数最小的属性作为属性划分。

回归树的CART

以均方误差或绝对值误差为标准,选择均方误差或绝对值误差最小的特征。

分类和回归数的比喻说明

分类:预测明天是阴、晴还是雨。

回归:预测明天的温度。

六、数据挖掘算法:简单贝叶斯(条件概率)

简单贝叶斯是一种简单有效的常用分类算法,在未知物体出现的情况下,计算各类出现的概率,取概率最大的分类。

在这里插入图片描述

算法原理

假设输入的不同特征是独立的,基于概率论原理,通过先验概率P(A)、P(B)和条件概率计算出P(A|B)。

P(A):先验概率,即在B事件发生前判断A事件概率。

P(B|A):条件概率,事件B在另一个事件A已经发生的条件下发生的概率。

P(A|B):后验概率,即B事件发生后重新评估A事件概率。

比喻说明:对患者进行分类

给定一个新病人,一个打喷嚏的建筑工人,计算他感冒的概率。

在这里插入图片描述

七、数据挖掘算法:SVM

SVM:SupportVectorMachine,中文名为支持向量机,是一种常见的分类方法,最初是为二分类问题设计的,在机器学习中,SVM是一种有监督的学习模式。

什么是监督学习和无监督学习?

监督学习:即在现有类别标签的情况下,对样本数据进行分类。

无监督学习:即在没有类别标签的情况下,样本数据按照一定的方法进行分类,即聚类。分类好的类别需要进一步分析,才能知道每个类别的特点。

SVM算法原理

找到间隔最小的样本点,然后拟合到这些样本点的距离和最大的线段/平面。

硬间隔:数据线性分布,直接给出分类。

软间隔:允许一定量的样本分类错误。

核函数:非线性分布的数据映射为线性分布的数据。

SVM算法比喻说明

1、分隔桌上的一堆红球和篮球。

桌上的红球和蓝球用一根线分成两部分。

2、分隔盒子里的一堆红球和篮球。

盒子里的红球和蓝球用平面分成两部分。

八、数据挖掘算法:KNN(聚类)

机器学习算法中最基本、最简单的算法之一,可以通过测量不同特征值之间的距离来分类。

KNN算法原理

计算待分类物体与其他物体之间的距离,预测K最近邻居数量最多的类别是该分类物体的类别。

计算步骤。

1.根据场景选择距离计算方法,计算待分类物体与其他物体之间的距离。

2.统计最近的K邻居。

3.对于K最近的邻居,最多的类别被预测为分类对象的类别。

KNN算法比喻:近朱者赤,近墨者黑。

九、数据挖掘算法:K-Means(聚类)

K-means是一种无监督学习、生成指定K类的聚类算法,将每个对象分配到最近的聚类中心。

在这里插入图片描述

K-Means算法原理

1.随机选择K点作为分类中心点。

2.将每个点分配到最近的类,从而形成K类。

3.重新计算每个类别的中心点。比如同一类别有10个点,那么新的中心点就是这10个点的中心点,一个简单的方法就是取平均值。

K-Means算法比喻说明

1、选组长

每个人都随机选择K个组长,谁离得近,就是那个队列的人(计算距离,近的人聚在一起)。

随着时间的推移,组长的位置在变化(根据算法重新计算中心点),直到选择真正的中心组长(重复,直到准确率最高)。

2、Kmeans和Knn的区别

Kmeans开班选组长,风水轮流转,直到选出最佳中心组长。

Knn小弟加队,离那个班比较近,就是那个班。

十、数据挖掘算法:EM(聚类)

EM的英语是ExpectationMaximization,因此EM算法又称最大期望算法,也是一种聚类算法。

EM和K-Means的区别:

EM是计算概率,KMeans是计算距离。

EM属于软聚类,同一样本可能属于多个类别;K-Means属于硬聚类,一个样本只能属于一个类别。因此,前者可以发现一些隐藏的数据。

EM算法原理

先估计一个大概率的可能参数,然后根据数据不断调整,直到找到最终确认参数。

EM算法比喻说明:菜称重

很少有人用称重菜肴,然后计算一半的重量来平分。

大多数人的方法是:

1、先把一部分分成菜A,然后把剩下的分成菜B。

2、观察菜A和B里的菜是否一样多,哪个多就匀一点到少。

3、然后观察碟子里的A和B是否一样多,重复,直到重量没有变化。

其中,数据挖掘之后就需要把收集的有用的数据进行可视化处理方便人们直观感受数据的变化和重要性,通常数据分析师都会选择一些可视化辅助工具帮助自己更好的完成数据分析工作,比如基础的可视化工具有Excel、PPT和Xmind,但是对于企业来说,这些可视化工具提供的功能都太单一了,不能很好的满足可视化效果,很多数据分析师会选择Smartbi这款可视化工具,集齐数据挖掘、数据分析、数据可视化功能于一体的数据可视化工具,有着更方便的拖拉拽操作,能处理亿级的数据量,还有着可视化效果更好的自助仪表盘,能更好的满足现代企业报表需求。

到这里十大算法已经简单介绍完成了。事实上,一般来说,常用算法已经被封装到仓库中,只要new生成相应的模型。数据分析师不仅要学会怎么收集有用的数据,也要对数据进行深度分析做出对企业更有利的决策,选择可视化工具Smartbi能有效的提升数据分析师的生产力。这些是一些结合个人经验和网上资料的心得体会,希望能对你学习数据挖掘有帮助。


http://chatgpt.dhexx.cn/article/mp8iLWeo.shtml

相关文章

数据挖掘领域十大经典算法

一、什么是数据挖掘? 数据挖掘是人工智能和数据库领域研究的热点问题,所谓数据挖掘是指从数据库的大量数据中揭示出隐含的、先前未知的并有潜在价值的信息的非平凡过程。数据挖掘是一种决策支持过程,它主要基于人工智能、机器学习、模式识别、…

数据挖掘的10大算法

一个优秀的数据分析师,除了要掌握基本的统计学、数据库、数据分析方法、思维、数据分析工具技能之外,还需要掌握一些数据挖掘的思想,帮助我们挖掘出有价值的数据,这也是数据分析专家和一般数据分析师的差距之一。 数据挖掘主要分为分类算法,聚类算法和关联规则三大类,这…

数据挖掘十大经典算法,你都知道哪些?

当前时代大数据炙手可热,数据挖掘也是人人有所耳闻,但是关于数据挖掘更具体的算法,外行人了解的就少之甚少了。 数据挖掘主要分为分类算法,聚类算法和关联规则三大类,这三类基本上涵盖了目前商业市场对算法的所有需求…

Vim编辑器(二)

Vim编辑器(二) 一、Vim编辑器概述1、vi编辑器2、vi与Vim编辑器 二、Vim编辑器的三种模式(重点)1、三种模式2、三种模式之间的关系:3、Vim打开文件的四种方式 三、命令模式1、光标移动① 光标移动到行首与行尾② 翻屏③…

Vim编辑器使用

什么是vim? Vim 是从 vi 发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。简单的来说, vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。 vim 则可以说…

Linux之vim编辑器的使用

目录 一、vim是什么? 试验1: 二.命令模式继承用法: vim命令模式的快捷键: 光标移动: vim文本复制相关操作: vim文本编辑操作: 三.末行模式命令用法 部分快捷键: 四.vim编辑器的配置原理 一、vim是什么? vi…

linux之《vim编辑器》

目录 一.vim的基本概念 ​编辑 命令模式(Normal mode) 插入模式(Insert mode) 末行模式(last line mode) 三者的转换图 二.vim的基本操作 1. 命令模式 2. 插入模式 3. 尾行模式 三. 简单vim配置…

Linux中vi与vim编辑器

初始化的Linux虚拟机是没有vim编辑器的,需要手动下载安装: vim安装命令: yum -y install vim vi profile 打开文件,并将光标置于第8行 vi 8 profile 打开最后一行 vi profile 按n查找下一个,按N查找上一个 打开…

Vim编辑器使用技巧

此文章适合学生、泛linux领域开发运维人员、linux爱好者阅读,希望通过此文章可以帮助大家更轻松的使用vim编辑器。 vim编辑器是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性。vim是自由软件。vim普遍被推崇为…

编辑器之神——vim编辑器

编辑器之神——vim编辑器 一、vi介绍 Vi编辑器是所有Unix及Linux系统下标准的编辑器,类似于windows系统下的notepad(记事本)编辑器,由于在Unix及Linux系统的任何版本,Vi编辑器是完全相同的,因此可以在其他…

Linux之如何使用Vim编辑器

什么是Vim编辑器 Vim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。 Linux中必须要会使用Vim(查看内容,编辑内容,保存内容) 简单的来说, …

vim编辑器详细教程

目录 一,第一讲 第一节: 移动光标 第二节 vim的进入和退出 第三节 文本编辑之删除 第四节 文本编辑之插入 第五节 文本编辑之添加 第六节 编辑文件 第一讲小结 二,第二讲 第一节 删除类命令 第二节 更多删除类命令 第三节 关于命令和对象…

vim编辑器使用教程

文章目录 前言一、vim 的三种工作模式二、vim 基本操作1、编辑2、复制粘贴3、撤销4、跳转5、查找和替换6、自动缩进7、分屏8、其他 三、vim 配置文件 前言 vim 是 Linux 系统内置的「文本编辑器」,用于查看或编辑文件的内容,学会使用 vim 编辑器&#x…

vi和vim编辑器

《Linux从入门到精通》 第一章 macOS Linux_CentOS7.6安装 第二章 网络连接的三种模式 第三章 VMware中的虚拟机克隆 第四章 虚拟机快照 第五章 Linux的目录结构 文章目录 《Linux从入门到精通》前言一、vi编辑器简介二、vim基本使用1.一般模式2.编辑模式3.指令模式4.vim配置文…

Linux Vim编辑器使用

1、基本介绍 linux系统会内置 vi 文本编辑器 Vim具有程序编辑的能力,可以看作是Vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补完、编译即错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。 …

在Windows下安装Vim编辑器

在windows下安装vim其实非常简单,不需要配置什么配置文件之类的。。。就几个步骤搞定的事情非要搞得这么麻烦,真的服了。。。 首先,先去vim的github下载vimPC版 要是你不想麻烦的去找,请直接点击链接直达: 32位:githu…

Linux-vim编辑器的使用

本篇博客讲解vim编辑器的使用!!!最实用教程!!!没有之一!!! vim编辑器有三种模式 命令模式:对文本进行复制、粘贴、删除、撤销等【默认进入命令模式】 输入模式…

Vim编辑器的安装与使用

1、导读 下面给大家讲解一下Linux/ununtu系统下的文本编辑神器——vim编辑器的安装及基本使用方法。 2、安装vim编辑器 如果没有安装vim编辑器的,可在终端下输入一下命令进行安装: sudo apt-get install vim 安装过程中提示:[y/n]? 时…

Vim编辑器的基本使用

vi编辑器是Unix系统最初的编辑器。它使用控制台图形模式来模拟文本编辑窗口,允许查看文件中的行、在文件中移动、插入、编辑和替换文本。尽管它可能是世界上最复杂的编辑器(至少讨厌它的人是这么认为的),但其拥有的大量特性使其成…

vim编辑器的使用

1. vim 的介绍 vim 是一款功能强大的文本编辑器,也是早年 Vi 编辑器的加强版,它的最大特色就是使用命令进行编辑,完全脱离了鼠标的操作。 vim的安装方法: sudo apt install vim 2. vim 的工作模式 命令模式编辑模式末行模式 …