《数据分析与挖掘实战》总结及代码练习---chap5 挖掘建模---5.1 分类与预测

 

目录

5.1.1 实现步骤

5.1.2 常用分类预测算法:

5.1.3 回归分析

1. logistic回归分析介绍:

2. 决策树:

3. 人工神经网络ANN

4. 分类预测算法评价 测试集效果评价指标::

总结:

5.挖掘建模

5.1 分类与预测

5.1.1 实现步骤

分类:

输入样本的属性值,输出对应的类别,将每个样本映射到预先定义好的类别

预测:

建立两种或以上的变量间互相依赖的函数模型,然后进行预测或者控制

实现:

  1. 学习步: 归纳训练集,建立分类模型,得到分类规则
  2. 分类步: 测试集评估分类准确率,可接受的话,使用该模型对未知样本进行预测
  3. 预测步: 模型通过检验后进行预测或者控制

5.1.2 常用分类预测算法

算法

描述

回归分析

确定属性与其他变量之间相互依赖关系的最常用统计模型,包括:线性回归,非线性回归,logistic回归,ridge回归,lasso回归,主成分回归,偏最小二乘回归

决策树

自顶向下的递归方式,在内部节点进行属性值比较,根据不同的属性值从该节点向下分支,得到最终也节点的学习划分的类

人工神经网络

模仿大脑圣经网络结构和功能而建立的信息处理系统,表示神经网络的输入输出之间的关系模型

贝叶斯网络

信度网络,bayes方法的扩展,目前不确定知识表达和推理领域的最有效模型之一

支持向量机

通过某种非线性映射,把低维度的非线性转换为高维的线性可分问题,在高位空间进行线性分析的方法

 

5.1.3 回归分析

包含:

线性回归:

一元线性回归

多元线性回归

多个因变量与多个自变量的回归

回归诊断:

如何从数据推断回归模型基本假设的合理性

基本假设不成立时如何对数据进行修正

判断回归方程拟合的效果

选择回归函数的形式

回归变量的选择:

自变量选择标准

因变量选择标准

参数估计方法的改进:

偏最小二乘回归

ridge回归

主成分回归

非线性回归:

一元非线性回归

分段回归

多元非线性回归

含有定性变量的回归:

自变量含有定性变量的回归

因变量含有定性变量的回归

线性回归

因变量自变量线性关系

多个自变量 和 因变量之间的关系,最小二乘法求解模型系数

非线性回归

因变量自变量 不都是线性关系

多个自变量 与 因变量之间的非线性关系进行建模,如果非线性关系可以通过 简单的函数变换 转化为线性关系,用线性回归的思想求解; 如果不能够转化,用非线性最小二乘法求解

logistic回归

因变量只有0 和1两种取值

广义线性回归模型的特例。利用logistic函数,将因变量的取值范围控制在0和1之间,表示取值为1的概率

ridge回归

参与建模的自变量之间具有多重共线性

改进的最小二乘估计法

主成分回归

参与建模的自变量之间 具有多重共线性

依据主成分分析的思想提出来,对最小二乘法的改进,是参数估计得一种有偏估计。可以消除自变量之间的多重共线性

 

 

 

 

1. logistic回归分析介绍:

建模步骤:根据分析目的设置指标变量,收集数据,

特征筛选:sklearn.feature_selection

f_regression选择F值大的或者p值小的特征

RFE:recursive Feature Elimination

       反复构建模型,SVM或者回归模型,选出最好的或者最差的特征(根据系数进行排序),重复迭代这个过程,遍历所有特征,对所有特征进行排序,贪心算法

 

稳定性选择:Stability Selection

       基于二次抽样和选择算法相结合 比较新的方法,基于回归,SVM

       不同的数据子集 特征子集上面 运用特征选择,不断重复,最终汇总特征选择结果,

比如:统计某个特征 被认为是重要特征的频率(被选为重要特征的次数/所在子集测试的次数)

重要特征 接近100%,无用特征接近0%

2. 决策树:

 

列出回归方程,估计模型的回归系数

模型检验:各种分数,混淆矩阵,ROC曲线,KS值

模型应用:输入自变量的取值,可以得到预测变量的值,根据预测变量的值 控制自变量的值

 

 

3. 人工神经网络ANN

 

4. 分类预测算法评价 测试集效果评价指标::

 

绝对误差与相对误差

平均绝对误差MAE

均方误差MSE

均方根误差RMSE

平均绝对百分误差MAPE   Kappa统计:

两个或者多个观测者对于同一事物的两次或者多次观测结果是否一致,基于几率造成的一致性和实际观测的一致性之间的差别作为评价基础的统计指标。kappa统计量和加权kappa统计量 无序有序分类变量资料的一致性/重现性检验,并给出一个反应一致性大小的量值
【-1,1】

kappa=+1, 两次结果完全一致

kappa=-1, 两次结果完全不一致

kappa=0, 两次结果是机遇造成的

kappa<0, 良机检查结果很不一致,实际应用中无意义,一致程度比 机遇造成的还差

kappa>0,    有意义,kappa越大,一致性越好

kappa>=.75, 相当满意的一致性

kappa<.4, 一直程度不够

识别准确度accuracy:

accuracy=(TP+FN)/(TP+TN+FP+FN)

精确度 Precision:

           Precision=TP/(TP+FN)

召回率 Recall

           Recall=TP/(TP+TN)

ROC 曲线Reciver Operating Characteristic:

   灵敏度设置在纵轴,1-特异性设置在横轴,该曲线就是roc曲线,曲线下面的面积越大,分类器正确分类的概率越大,越接近于1,该算法效果越好

 

混淆矩阵confusion matrix:  

模式识别领域中常用表达式,绘制样本数据的真实属性与之别结果之间的关系,评价分类器性能的一种常用方法

   N分类任务,识别数据集D包含T0个样本,每类模式分别含有Ti个数据,采用某种识别算法构造分类器C,cm ij表示分类器C将第i类模式判定为j类模式的数据所占的百分比,得到NxN维度的混淆矩阵CM(C,D)

   行下标 真实属性

   列下标 识别属性

   对角线元素 被正确识别的百分率

   各个模式正确识别率:Ri=cmij

   平均正确识别率:Ra=sum(cmij*Ti)/T0

   各个模式识别错误率:  Wi=sum_j!=I ( cmij)=1-cmii

   平均识别错误率: Wa=1-Ra

 

总结:

模型 

模型特点

位于

logisticRegression

基础的线性分类器,简单有效

sklearn.linear_model

SVM

强大的模型,回归预测分类,选取不同的核函数,模型可以是线性/非线性

sklearn.svm

决策树

分类讨论逐步细化的分类模式,模型直观,易于解释,如:55.1.4节直接给出决策图

sklearn.tree

朴素贝叶斯

基于概率思想的简单有效分类模型,模型直观,易于解释,

sklearn.naibe_bayes

随机森林

思想与决策树类似,精度比决策树高,缺点:随机性丧失了模型的可解释性

sklearn.ensemble

神经网络

强大的拟合能力,用于拟合分类,有多个增强版本,递归神经网络,卷积神经网咯,自编码器,

keras

 

python 基于对象的编程,不管是在什么库中进行编程,首先创建一个对象,这个对象是空白的,需要进行进一步训练,需要设置模型参数,.fit()方法进行训练,.predict()方法进行预测结果,.score()方法进行评估。

 

 

 

你可能感兴趣的:(Python数据分析)