首页 > 代码库 > 数据挖掘与机器学习介绍

数据挖掘与机器学习介绍

数据挖掘

1、定义:

数据挖掘(Data Mining)是有组织有目的地收集数据,通过分析数据使之成为信息,从而在大量数据中寻找潜在规律以形成规则或知识的技术。

 

2、数据挖掘与机器学习的关系:

机器学习可以用来作为数据挖掘的一种工具或手段;

数据挖掘的手段不限于机器学习,譬如还有诸如统计学等众多方法;

但机器学习的应用也远不止数据挖掘,其应用领域非常广泛,譬如人工智能;

 

机器学习

1、定义:

机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

 

2、机器学习算法类别:

2.1、分类与聚类

Classification (分类)

给定一堆样本数据,以及这些数据所属的类别标签,通过算法来对预测新数据的类别。有训练数据,是监督学习。

 

Clustering(聚类)

事先并不知道一堆数据可以被划分到哪些类,通过算法来发现数据之间的相似性,从而将相似的数据划入相应的类,简单地说就是把相似的东西分到一组。没有训练数据,是无监督学习。

 

2.2、常见的分类与聚类算法

  • 常用的分类算法:决策树分类法,朴素贝叶斯分类算法(native Bayesian classifier)、基于支持向量机(SVM) 的分类器,神经网络法,k-最近邻法(k-nearest neighborkNN),模糊分类法等等。
  • 常见聚类算法: K均值(K-means clustering)聚类算法、K-MEDOIDS算法、CLARANS算法;BIRCH算法、CURE算法、CHAMELEON算法等;基于密度的方法:DBSCAN算法、OPTICS算法、DENCLUE算法等;基于网格的方法:STING算法、CLIQUE算法、WAVE-CLUSTER算法。

 

2.3、监督学习与无监督学习

机器学习按照训练数据是否有“先验知识”,一般划分为三类:

1) 监督学习(supervised learning):有先验知识

2) 半监督学习(semi-supervised learning):

3) 无监督学习(unsupervised learning):没有先验知识

 

3、机器学习的应用步骤

1) 需求分析

2) 收集数据

3) 探索数据特性

4) 提取数据特征并建模

5) 开发代码(常用语言:R语言,Python语言)

6) 训练模型

7) 应用系统集成(比如将训练好的算法模型集成到推荐系统中)

 

4、机器学习必备的数学知识

4.1、概率

4.2、距离(相似度)

机器学习中衡量样本之间的相似度

4.3、线性方程

机器学习中线性拟合或回归分类

4.4、向量与矩阵

大批量样本运算

 

数据挖掘与机器学习介绍