DataMining-数据挖掘简介

前言

  数据挖掘定义有广义和狭义之分。从广义的观点讲,数据挖掘是从大型数据集(可能是不完全的、有噪声的、不确定性的、各种存储形式的)中,挖掘隐含在其中的、人们事先不知道的、对决策有用的知识的过程。从狭义的观点看,我们可以定义数据挖掘是从特定形式的数据集中提炼知识的过程。

  一般来说,数据挖掘的算法包含四种类型,即分类、预测、聚类、关联。


目录

  • 1.数据挖掘的本质

  • 2.数据挖掘的分类

  • 3.数据挖掘主要解决的问题

  • 4.数据挖掘的应用场景和领域

数据挖掘的分类

根据数据类型的不同,对一个问题的建模有不同的方式。在机器学习或者人工智能领域,人们首先会考虑算法的学习方式。在机器学习领域,有几种主要的学习方式。将算法按照学习方式分类是一个不错的想法,这样可以让人们在建模和算法选择的时候考虑能根据输入数据来选择最合适的算法来获得最好的结果。按照学习方式分类,如下:

  • a) 有监督学习

    • 1.分类(逻辑回归、决策树、KNN、贝叶斯判别、SVM、随机森林、神经网络)

    • 2.预测(线性回归、回归树、神经网络、SVM)

  • b) 无监督学习

    • 1.聚类(kmeans、系谱聚类、密度聚类)

    • 2.关联(Apriori算法)

根据算法的功能和形式的类似性,我们可以把算法分类,比如说基于树的算法,基于神经网络的算法等等。当然,机器学习的范围非常庞大,有些算法很难明确归类到某一类。而对于有些分类来说,同一分类的算法可以针对不同类型的问题。这里,我们尽量把常用的算法按照最容易理解的方式进行分类。按照算法类似性分类,如下:

  • a) 回归算法

    回归算法是试图采用对误差的衡量来探索变量之间的关系的一类算法。回归算法是统计机器学习的利器。在机器学习领域,人们说起回归,有时候是指一类问题,有时候是指一类算法,这一点常常会使初学者有所困惑。常见的回归算法包括:最小二乘法(Ordinary Least Square),逻辑回归(Logistic Regression),逐步式回归(Stepwise Regression),多元自适应回归样条(Multivariate Adaptive Regression Splines)以及本地散点平滑估计(Locally Estimated Scatterplot Smoothing)

  • b) 基于实例的算法

    基于实例的算法常常用来对决策问题建立模型,这样的模型常常先选取一批样本数据,然后根据某些近似性把新数据与样本数据进行比较。通过这种方式来寻找最佳的匹配。因此,基于实例的算法常常也被称为“赢家通吃”学习或者“基于记忆的学习”。常见的算法包括 k-Nearest Neighbor(KNN), 学习矢量量化(Learning Vector Quantization, LVQ),以及自组织映射算法(Self-Organizing Map, SOM)

  • c) 正则化方法

    正则化方法是其他算法(通常是回归算法)的延伸,根据算法的复杂度对算法进行调整。正则化方法通常对简单模型予以奖励而对复杂算法予以惩罚。常见的算法包括:Ridge Regression, Least Absolute Shrinkage and Selection Operator(LASSO),以及弹性网络(Elastic Net)。

  • d) 决策树学习

    决策树算法根据数据的属性采用树状结构建立决策模型, 决策树模型常常用来解决分类和回归问题。常见的算法包括:分类及回归树(Classification And Regression Tree, CART), ID3 (Iterative Dichotomiser 3), C4.5, Chi-squared Automatic Interaction Detection(CHAID), Decision Stump, 随机森林(Random Forest), 多元自适应回归样条(MARS)以及梯度推进机(Gradient Boosting Machine, GBM)

  • e) 贝叶斯方法

    贝叶斯方法算法是基于贝叶斯定理的一类算法,主要用来解决分类和回归问题。常见算法包括:朴素贝叶斯算法,平均单依赖估计(Averaged One-Dependence Estimators, AODE),以及Bayesian Belief Network(BBN)。

  • f) 基于核的算法

    基于核的算法中最著名的莫过于支持向量机(SVM)了。 基于核的算法把输入数据映射到一个高阶的向量空间, 在这些高阶向量空间里, 有些分类或者回归问题能够更容易的解决。 常见的基于核的算法包括:支持向量机(Support Vector Machine, SVM), 径向基函数(Radial Basis Function ,RBF), 以及线性判别分析(Linear Discriminate Analysis ,LDA)等

  • g) 聚类算法

    聚类,就像回归一样,有时候人们描述的是一类问题,有时候描述的是一类算法。聚类算法通常按照中心点或者分层的方式对输入数据进行归并。所以的聚类算法都试图找到数据的内在结构,以便按照最大的共同点将数据进行归类。常见的聚类算法包括k-Means算法以及期望最大化算法(Expectation Maximization,EM)。

  • h) 关联规则学习

    关联规则学习通过寻找最能够解释数据变量之间关系的规则,来找出大量多元数据集中有用的关联规则。常见算法包括Apriori算法和Eclat算法等。

  • i) 人工神经网络

    人工神经网络算法模拟生物神经网络,是一类模式匹配算法。通常用于解决分类和回归问题。人工神经网络是机器学习的一个庞大的分支,有几百种不同的算法。(其中深度学习就是其中的一类算法,我们会单独讨论),重要的人工神经网络算法包括:感知器神经网络(Perceptron Neural Network), 反向传递(Back Propagation), Hopfield网络,自组织映射(Self-Organizing Map, SOM)等。

  • j) 深度学习

    深度学习算法是对人工神经网络的发展。 在近期赢得了很多关注, 特别是百度也开始发力深度学习后, 更是在国内引起了很多关注。 在计算能力变得日益廉价的今天,深度学习试图建立大得多也复杂得多的神经网络。很多深度学习的算法是半监督式学习算法,用来处理存在少量未标识数据的大数据集。常见的深度学习算法包括:受限波尔兹曼机(Restricted Boltzmann Machine, RBN), Deep Belief Networks(DBN),卷积网络(Convolutional Network), 堆栈式自动编码器(Stacked Auto-encoders)。

  • k) 降低维度算法

    像聚类算法一样,降低维度算法试图分析数据的内在结构,不过降低维度算法是以非监督学习的方式试图利用较少的信息来归纳或者解释数据。这类算法可以用于高维数据的可视化或者用来简化数据以便监督式学习使用。常见的算法包括:主成份分析(Principle Component Analysis, PCA),偏最小二乘回归(Partial Least Square Regression,PLS), Sammon映射,多维尺度(Multi-Dimensional Scaling, MDS), 投影追踪(Projection Pursuit)等。

  • l) 集成算法

    集成算法用一些相对较弱的学习模型独立地就同样的样本进行训练,然后把结果整合起来进行整体预测。集成算法的主要难点在于究竟集成哪些独立的较弱的学习模型以及如何把学习结果整合起来。这是一类非常强大的算法,同时也非常流行。常见的算法包括:Boosting, Bootstrapped Aggregation(Bagging), AdaBoost,堆叠泛化(Stacked Generalization, Blending),梯度推进机(Gradient Boosting Machine, GBM),随机森林(Random Forest)。

数据挖掘主要解决的问题

  • 1、分类问题

    分类问题属于预测性的问题,但是它跟普通预测问题的区别在于其预测的结果是类别(如A、B、C三类)而不是一个具体的数值(如55、65、75 ……)。

  • 2、聚类问题

    聚类问题不属于预测性的问题,它主要解决的是把一群对象划分成若干个组的问题。划分的依据是聚类问题的核心。所谓“物以类聚,人以群分”,故得名聚类。

  • 3、关联问题

    说起关联问题,可能要从“啤酒和尿布”说起了。它给了我们一个启示:世界上的万事万物都有着千丝万缕的联系,我们要善于发现这种关联。关联分析要解决的主要问题是:一群用户购买了很多产品之后,哪些产品同时购买的几率比较高?买了A产品的同时买哪个产品的几率比较高?可能是由于最初关联分析主要是在超市应用比较广泛,所以又叫“购物篮分析”,英文简称为MBA,当然此MBA非彼MBA,意为 Market Basket Analysis。

  • 4、预测问题

    此处说的预测问题指的是狭义的预测,并不包含前面阐述的分类问题,因为分类问题也属于预测。一般来说我们谈预测问题主要指预测变量的取值为连续数值型的情况。例如天气预报预测明天的气温、国家预测下一年度的GDP增长率、电信运营商预测下一年的收入、用户数等?

数据挖掘的应用场景和领域

决策树

随机森林算法

逻辑回归

SVM

朴素贝叶斯

K最近邻算法

K均值算法

Adaboost 算法

神经网络

马尔可夫链


分享时刻:

  读书重在结构生长,形成扎实的支撑;碎片阅读重在视野的纳新和扩展,开枝散叶;思考重在提炼和关联,勾画错综的经脉。学习就是如此,由外而内,无广不精,无博不深,但能坚持必有所成。网络阅读的最佳实践,不在“取”,在“舍”,知舍才能知关键,料不在多,有感悟一二足矣。


posted @ 2017-03-05 21:57  银河统计  阅读(748)  评论(0)    收藏  举报