分类
分类是数据挖掘的一种非常重要的方法。分类的概念是在已有数据的基础上学会一个分类函数或构造出一个分类模型(即我们通常所说的分类器(Classifier))。该函数或模型能够把数据库中的数据纪录映射到给定类别中的某一个,从而可以应用于数据预测。
分类算法是指根据样本的特征,将样本划分到指定的类别中。
分类算法是一种监督的学习算法,在分类算法中,根据训练样本训练得到样本特征到样本标签之间的映射,利用该映射得到新的样本的标签,达到将新的样本划分到不同类别的目的。
- 最基本的分类算法Logistic Regression算法,是一个二分类的线性分类算法,由于其简单的特点,得到了广泛的应用;
- Logistic Regression 算法的推广形式一Softmax Regression 算法, Softmax Regression 算法用于处理多分类问题;
- Logistic Regression 算法的另一种推 广形式一Factorization Machine 算法,该算法在Logistic Regression 算法的基础上增加了交叉项;
- 支持向量机 SVM 分类器, SVM 分类算法是被公认的比较优 秀的分类算法;
- 一种集成的分类方法一一随机森林,在集成方法中,通过组合多个分类器求解复杂的分类问题;
- BP 神经网络算法,该算法可以有效解决线性不可分的问题,同时, BP神经网络是深度学习中算法的基础。
二分类器和多分类器
如果数据中的Lable只有两个类别,那么就属于二分类问题,相应的分类器被称为二分类器。
多分类器解决Lable种类多于两种类别的分类问题。
1.k-近邻算法(k-NearestNeighbor,kNN)
2.朴素贝叶斯
朴素贝叶斯分类器(Naive Bayes Classifier,NBC )
之所以称其为朴素,是因为整个形式化过程只做最原始,最简单的假设。
3.支持向量机(Support Vector Machine,SVM)
4.AdaBoost(Adaptive Boosting)
Adaptive Boosting,自适应,它的自适应在于:前一个基本分类器分错的样本会得到加强,加权后的样本再次被用来训练下一个基本分类器。同时,在每一轮中加入一个新的分类器,直到达到某个预定的足够小的错误率,或者达到预先设定的最大迭代次数。
5.决策树(Decision Tree)
在构建决策树的过程中,要寻找划分数据集的最好的特征。例如,一个训练集的数据有10个特征,那么每次选取哪个特征作为划分依据?这就必须用量化的方法来判断,量化方法有多种,其中一项就是“信息论度量信息分类”,即使无序的数据变得有序。
基于信息论的决策树算法,包括ID3、C4.5、CART等。
J.Ross QUinlan 在1975年提出将信息熵的概念引入决策树的构建,这就是鼎鼎有名的ID3算法。
后续的C4.5、C5.0、CART等都是该方法的改进算法。
ID3算法
ID3算法建立在“奥卡姆剃刀”的基础上:越是小型的决策树越优于大型的决策树,即小型树更简单。ID3算法中根据信息论的信息增益评估和选择特征,每次选择信息增益最大的特征做判断模块。