数学建模(9)分类模型

也就是逻辑(logistic)回归或者fisher判别

逻辑回归

y≥0.5事件发生

y<0.5事件不发生

所以需要找到一个函数值域在[0,1]之间

比如标准正态分布的累计密度函数(称为分类模型输出概率python 分类模型分析_线性判别分析回归)

分类模型输出概率python 分类模型分析_分类模型输出概率python_02

分类模型输出概率python 分类模型分析_SPSS_03函数(称为分类模型输出概率python 分类模型分析_线性判别分析_04回归)

分类模型输出概率python 分类模型分析_分类模型输出概率python_05

常用逻辑回归,因为积分不方便。

一般用分类模型输出概率python 分类模型分析_SPSS_06

分类模型输出概率python 分类模型分析_SPSS_07

其中分类模型输出概率python 分类模型分析_分类模型输出概率python_08就是之前的线性回归的过程

这里的分类模型输出概率python 分类模型分析_线性判别分析_09函数叫做连接函数

我的理解就是把线性回归之后的结果,再从分类模型输出概率python 分类模型分析_线性判别分析_09函数里面过一遍,然后达到了把值域控制在[0,1]之间,达到分类的效果。

逻辑回归SPSS流程

// 生成虚拟变量为0-1变量,二分类生成一个即可
SPSS->转换->创建虚变量->留下一个即可
// 开始分析
SPSS->分析->二元逻辑回归->
选中因变量和协变量(自变量)->方法可以看情况选->
// 几个可选项
// 保存->选择概率、组成员->
// 选项->步进/除去概率就是指逐步回归的接受的概率->
// 分类分界值默认0.5,也可以选其他
// 自主抽样可以扩大样本

可以加入高阶次方,但是谨慎,容易出现过拟合现象(类似龙格现象)。

交叉验证:可以用已经存在的数据对于自己的预测模型做评估。

Fisher线性判别分析

分类模型输出概率python 分类模型分析_分类模型输出概率python_11

给定训练集样例,设法将样例投影到一维的直线上,使得同类样例的投影点尽可能接近和密集,异类投影点尽可能远离。

SPSS线性判别分析流程

SPSS->分组变量(因变量)、自变量->
// 选择参数
定义范围->[0,1]
统计->函数系数全选
分类->摘要表
保存->全选

多分类问题

也可以使用Fisher线性判别分析

SPSS也可以做,和之前类似

逻辑回归也可以

把逻辑回归分类模型输出概率python 分类模型分析_线性判别分析_09函数推广为分类模型输出概率python 分类模型分析_分类模型输出概率python_13函数

SPSS->分析->回归->多元线性分析->加入因变量、自变量
// 参数
保存->估算响应概率、预测类别
选项->进入、除去概率与之前类似
如果概率太高、太准,可能会出现过拟合