MatLab建模学习笔记12——Logistic回归模型
2016-08-18 15:55
585 查看
logistic regression属于概率型非线性回归,它是研究二分类观察结果与一些影响因素之间关系的一种多变量分析方法。例如,在流行病学研究中,经常需要分析疾病与各危险因素之间的定量关系,为了正确说明这种关系,需要排除一些混杂因素的影响。对于线性回归分析,由于应变量Y是一个二值变量(通常取值1或0),不满足应用条件,尤其当各因素都处于低水平或高水平时,预测值Y值可能超出0~1范围,出现不合理都现象。用logistic回归分析则可以较好的解决上述问题。Logistic回归模型的基本形式如下:
因此,对因变量P按照ln(P/(1-P))的形式进行对数变换,可以将Logistic回归问题转化为线性回归问题,在按照多元线性回归的方法求解回归参数。对于P取值只有0和1的情况,在实际中不是直接对P进行回归,而是先定义一个单调连续的概率函数π:
此时Logistic模型为:
然后只需要对原始数据进行合理的映射处理,就可以用线性回归方法得到回归系数,最后再根据π和P的映射关系进行反映射得到P的值。
下面是书中的一个例子,评估企业的还款能力,已知前20家企业的评价指标和评价结果,要求对剩余5家企业进行评估。数据如下:
Π到P的映射关系:
Π值的确定:
Matlab代码如下:
Matlab运行结果如下:
第一行即为该问题中回归模型的系数,带入即可得到回归模型,第二行为该模型的评估结果。
因此,对因变量P按照ln(P/(1-P))的形式进行对数变换,可以将Logistic回归问题转化为线性回归问题,在按照多元线性回归的方法求解回归参数。对于P取值只有0和1的情况,在实际中不是直接对P进行回归,而是先定义一个单调连续的概率函数π:
此时Logistic模型为:
然后只需要对原始数据进行合理的映射处理,就可以用线性回归方法得到回归系数,最后再根据π和P的映射关系进行反映射得到P的值。
下面是书中的一个例子,评估企业的还款能力,已知前20家企业的评价指标和评价结果,要求对剩余5家企业进行评估。数据如下:
Π到P的映射关系:
Π值的确定:
Matlab代码如下:
clear all clc %数据格式 format long %前20组数据 X0=xlsread('D:\资料库区\大三上\HUAWEI\MATLAB\11Logistic.xls','E4:G23'); %全部25组数据:验证和回归 XE=xlsread('D:\资料库区\大三上\HUAWEI\MATLAB\11Logistic.xls','E4:G28'); %前20组评估的数据值:P Y0=xlsread('D:\资料库区\大三上\HUAWEI\MATLAB\11Logistic.xls','H4:H23'); n=size(Y0,1); %π和P的映射关系 for i=1:n if Y0(i)==0 Y1(i,1)=0.25; else Y1(i,1)=0.75; end end %构建常系数 X1=ones(size(X0,1),1); X=[X1,X0]; Y=log(Y1./(1-Y1)); b=regress(Y,X); %模型验证的应用 for i=1:size(XE,1) pai0=exp(b(1)+b(2)*XE(i,1)+b(3)*XE(i,2)+b(4)*XE(i,3))/(1+exp(b(1)+b(2)*XE(i,1)+b(3)*XE(i,2)+b(4)*XE(i,3))); if(pai0<=0.5) P(i)=0; else P(i)=1; end end %回归结果 disp(['回归系数:' num2str(b') ' ']); disp(['评估结果:' num2str(P) ' ']);
Matlab运行结果如下:
第一行即为该问题中回归模型的系数,带入即可得到回归模型,第二行为该模型的评估结果。
相关文章推荐
- MatLab建模学习笔记12——Logistic回归模型
- Matlab建模学习笔记1——Logistic回归模型
- MatLab建模学习笔记2——三维绘图
- MatLab建模学习笔记8——非线性规划问题求解
- MatLab建模学习笔记9——二次规划问题求解
- MatLab建模学习笔记3——MatLab工具箱
- MatLab建模学习笔记13——主成分分析(PCA)
- MatLab建模学习笔记3——MatLab工具箱
- OpenCV学习笔记(12)OpenCV调用Matlab函数进行保存视频的尝试
- MatLab建模学习笔记14——K-Means聚类算法
- MatLab建模学习笔记6——数据拟合方法
- MatLab建模学习笔记5——MatLab向TXT中读写数据
- MatLab建模学习笔记1——二维绘图
- MatLab建模学习笔记4——MatLab向Excel中读写数据
- 基于数学建模的数学实验学习笔记一 MATLAB软件基础
- MatLab建模学习笔记6——数据拟合方法
- 【数学建模】MATLAB学习笔记——函数式文件
- MatLab建模学习笔记4——MatLab向Excel中读写数据
- MatLab建模学习笔记5——MatLab向TXT中读写数据
- MatLab建模学习笔记13——主成分分析(PCA)