数学建模暑期集训11:逻辑回归(Logistic Regression)处理二分类问题

admin | 怀旧特辑

在数学建模中,我们经常会遇到这样的问题:根据xx症状判断是否得病、根据xxx指标判断是否违约。对于这种只包含“是和否”两类的答案的二分类问题,逻辑回归最为适用。

1.逻辑回归是什么逻辑回归是机器学习基本算法之一,可以看作特殊的一般回归。

通过线性回归,一般可以得到这样的表达式:

这个y值可以理解为“y=1”发生的概率。

然而,概率一般都是处于[0,1]之间,因此,需要一个函数将这个值映射到[0,1]这个范围内。

这个函数通常选用Sigmoid函数:

2.逻辑回归的求解求解逻辑回归,可以用极大似然估计或者梯度下降法。

这里有些难理解,先放着,下面用SPSS来实操。

3.SPSS求解逻辑回归问题3.1原始数据

二分类问题:基于长、宽等信息区分苹果和橘子。

3.2开始分析

按照图中步骤即可。

3.3查看结果

分类表即混淆矩阵,斜对角线是分对的数量,右下角76.3是平均的正确率。

可以发现,该方法的正确率并不是非常高。

方程中的具体数值可以根据下表查看:

3.4定性变量的处理很多情况下,变量没有数值。比如分类的结果是apple&orange,可以通过创建虚变量来自动置0或置1。

3.5增加平方项提高正确率

通过上面的操作可以引入新的平方变量,比如

mass作为自变量1,

mass^2作为自变量2,这样可以显著提高准确率,不过本质上是过拟合。

过拟合,机器学习上的概念。(在训练集上表现好,测试集上表现差)

如上图所示,过拟合即绿色的线,把原本数据中的一些偏差也强制学习进去,导致效果变差。

3.6过拟合的改进

防止过拟合的发生,将数据分成训练集和测试集。(这就和机器学习非常类似了)

这种方法存在偶然性,并非万能之策,使用时应根据数据综合考虑。