1. 引言
随着大数据时代的到来,机器学习已经成为数据科学、人工智能及各个领域研究的重要工具和核心技术。机器学习课程作为计算机科学与技术、数据科学等专业的基础课程之一,不仅对学生的技术能力提升具有重要意义,还为学生未来从事相关领域的研究和应用开发打下坚实基础[1] [2]。然而,当前机器学习课程的教学面临着一定的挑战,特别是在如何有效地将理论知识与实际应用结合、如何通过具体的案例帮助学生理解复杂的算法模型等方面。这些问题影响着教学效果和学生的学习体验。为了解决这些问题,需要在教学内容、方法和资源等方面进行创新和改进,帮助学生更好地掌握机器学习的核心知识与技能,为其日后的学术研究和职业发展奠定坚实的基础[3] [4]。建构主义学习理论认为,知识不是通过教师传授得到,而是学习者在一定的情境下,借助他人的帮助,利用必要的学习资料,通过意义建构的方式而获得。基于这一理论,本文以逻辑回归为例[5]-[7],采用问题导向学习(PBL)与案例教学法相结合的模式,探讨逻辑回归的教学过程,通过对具体教学实践的分析,总结出可供参考的教学经验和方法,为进一步优化机器学习课程的教学质量提供借鉴[8] [9]。
逻辑回归(Logistic Regression)作为一种经典的机器学习算法,具有较为简单的数学原理和广泛的应用场景,既能帮助学生理解模型的基本构建,又能为后续学习更复杂的算法奠定基础。因此,逻辑回归不仅是机器学习课程中重要的教学内容,也为教学改革提供了一个理想的切入点。通过深入探讨逻辑回归的教学设计与实践,本文旨在总结和分享有效的教学方法与策略,以期提高学生在机器学习课程中的学习效果,致力于培养学生“从数学公式到代码实现”的贯通式能力。课程的教学流程如表1所示。
2. 基础知识回顾
2.1. 样本联合分布函数
抽样分布是从总体中抽取样本,并计算样本统计量的分布。它是统计学中一个重要的概念,用于理解样本统计量的变异性和对总体参数的估计。当我们从总体中抽取不同的样本并计算相应的统计量时,
Table 1. Teaching design and implementation process of “Logistic Regression” course
表1. “逻辑回归”课程教学设计与实施流程
教学阶段 |
学习目标 |
教学内容与活动 |
教学资源 |
设计意图与教育学理论应用 |
课前准备 |
1. 回顾线性回归与概率论基础。2. 了解信用卡欺诈背景。 |
1. 发布预习材料(线性回归、极大似然估计简介)。2. 发布信用卡欺诈数据集,让学生思考“如何用线性模型做分类?”。 |
在线课程平台、数据集 |
建构主义:激活学生先验
知识,为新知搭建脚手架。PBL:抛出核心问题,激发学习兴趣。 |
课堂导入
(15分钟) |
引发对“线性输出到概率映射”的
认知冲突。 |
1. 案例引入:展示信用卡欺诈数据,
提问:“线性回归预测值 > 1或
<0怎么办?”。2. 小组讨论:学生Brainstorm解决方案。 |
PPT、
案例数据 |
案例教学法:通过真实问题切入,明确学习必要性。 |
理论讲解
(40分钟) |
掌握逻辑回归的
模型与策略(损失函数)。 |
1. 模型:引入Sigmoid函数,解决上述冲突。2. 策略:精讲两种推导视角(极大似然、交叉熵)的核心思想与联系。3. 强调:两种视角最终得到等价的优化目标。 |
板书/PPT、
几何动画演示Sigmoid函数 |
精讲多练:原理是应用的
基石。通过不同视角深化对“三要素”的理解。
数学细节可作为课后阅读
材料。 |
代码实践
(35分钟) |
1. 实现逻辑回归
模型。2. 理解类别
不平衡问题。 |
1. 陷阱体验:让学生直接用原始不平衡数据训练模型,观察“高准确率”假象。2. 引导探索:提问“这个模型有用吗?”,引出评估指标的必要性。3. 实践对比:带领学生实现下采样/上采样,并绘制P-R/ROC曲线进行对比。 |
Anaconda
Python代码 |
探究式学习:让学生亲身
经历问题,从“知其然”
到“知其所以然”。 |
课后作业与考核 |
综合应用知识与
技能。 |
1. 作业:在其他数据集上复现流程,
并撰写实验报告(要求解读结果)。2. 考核:原理简答题(考察理论理解) + 小项目(考察实践与结果分析能力)。 |
|
综合评价:兼顾理论与
应用,考察核心能力。 |
得到的分布即为样本分布。样本联合分布函数(Sample Joint Distribution Function)是指在给定样本容量下,样本统计量的概率分布函数。样本联合分布函数在统计推断中起着关键作用,因为它帮助我们理解样本统计量的变异性和提供了对总体参数进行推断的基础。
若总体
的分布函数为
,则样本
的联合分布函数为:
若总体
为离散型随机变量,其分布列为
,则样本
的联合分布列为:
若总体
为连续型随机变量,其概率密度函数为
,则样本
的联合概率密度为:
例如假设
是来自于两点分布的样本,其总体分布如下所示,其中参数
未知:
则样本的联合分布列为:
其中
或
,注意到样本观测值
是已知常数,因而
是
的函数,称之为似然函数。
2.2. 极大似然估计
极大似然原理(Maximum Likelihood Principle)是统计学中的一项基本原则,用于估计概率模型中的未知参数。假设事件
发生的概率与参数
有关,
取值不同,则
也不同。极大似然原理基于以下思想:记事件
发生的概率为
,若在试验过程中,事件
发生了,则我们可以认为其发生的概率很大,即可认为此时的
值是在其定义域内使得
达到最大的那一个。
极大似然原理提供了一种估计参数的方法,通过观察到的数据,选择使观察到的数据出现概率最大的模型参数值。例如,在一个抛硬币的游戏中,我们随机抛1000次,记录每次正反面出现的情况,结果发现正面出现800次,反面出现200次。
显然这是一个重复了1000次的两点分布,利用实验结果和极大似然原理我们可以估计正面出现的概率,从而判断游戏过程中的硬币是否质地均匀。简单计算可知,似然函数为:
表示在参数
下,该事件出现的可能性,不同的参数取值,事件的发生概率也不一样。由极大似然原理可知,若一个事件发生了,则我们认为该事件发生概率很大,即需要求解参数
取何值时,似然函数取得极大值。对上式取对数可得:
求对数似然函数的导数并令其等于零
,解得驻点为
,进一步验证可知
为函数的极大值点,故可知正面出现的概率为0.8,这枚硬币质地不均匀。
3. 逻辑回归原理
3.1. 基于极大似然原理推导逻辑回归
在第五章中,我们假设自变量和函数之间的关系是:
线性回归函数的取值范围为
,但是我们又想利用线性模型来预测某个事件发生的概率,这就需要将线性模型中的函数值压缩到
之间。在高等数学中,我们知道双曲正切函数
的取值范围是
,其函数图像如图1所示:
Figure 1. Schematic diagram of hyperbolic tangent function
图1. 双曲正切函数示意图
对双曲正切函数进行平移和压缩可得:
于是可构造如下函数:
该函数的值域为
,被称为Sigmoid函数,其函数图像如图2所示。
将线性回归模型和Sigmoid函数进行复合,可得:
该函数的值域也为
。对于二分类问题,我们可以假设样本
属于1类的概率为:
则其属于0类的概率为:
Figure 2. Schematic diagram of Sigmoid function
图2. Sigmoid函数示意图
于是样本
的联合分布列为:
对数似然函数为:
求对数似然函数的极大值等价于求以下函数的极小值:
求解上述最优化问题即可得到模型的参数。当然,我们可以继续化简对数似然函数:
求上述对数似然函数的极大值等价于求以下函数的极小值:
求解上述最优化问题即可得到模型的参数。
3.2. 基于信息熵推导逻辑回归
我们从另外一个角度来理解逻辑回归中需要求解的优化模型。信息熵(Information Entropy)是信息论的基本概念,描述信息源各可能事件发生的不确定性[7]。20世纪40年代,香农(C. E. Shannon)借鉴了热力学的概念,给出了计算信息熵的数学表达式。对于一个离散随机变量
,信息熵
可以用于衡量该随机变量不确定性的程度,其定义为:
其中
是随机变量
取值为
的概率,
是随机变量
的取值个数,
表示e为底的对数。在上面定义中,若
,则定义
。信息熵的定义中,对数的底可以换做2,这时熵的单位由纳特换为比特。由定义可知,熵只依赖于随机变量的分布,与其取值无关,所以我们也可以将熵记为:
对于两点分布(0-1分布)问题,熵的计算可以简化为:
信息熵具有一些重要的性质,如信息熵始终为非负值
,当且仅当随机变量是确定性的,即取某个值的概率为1,信息熵为0。信息熵是有上界的:
,信息熵的最大值是在所有可能的取值都是等概率的情况下取得,此时熵达到最大,这个结论的证明可以利用拉格朗日函数法求得,感兴趣的读者可自行推导。
对于同一个随机变量两种不同的概率分布
和
,相对熵可以衡量两个分布的差异,相对熵也叫做Kullback-Leibler (KL)散度,其被定义为:
两种概率分布越相似,相对熵就越小,仅当
时,
,并且由吉布斯不等式可以证明:
。在机器学习中,
常常用来表示样本的真实分布,
表示模型的预测分布。
简单计算可知,相对熵可变形为:
等式前半部分就是
熵的负值,后半部分被叫做交叉熵,记为:
一般来说,样本的真实分布
对应的熵是确定的,要想使相对熵较小,只需要交叉熵较小就行,因此可以直接用交叉熵作为损失函数。例如,在二分类问题中,使用One-hot编码,某个样本的真实标签是[1, 0],预测概率是如[0.6, 0.4],交叉熵损失为:
在逻辑回归的假设下,样本
的交叉熵损失函数为:
所有样本的损失之和叫做代价函数:
逻辑回归的目标是找到参数
的取值,使得代价函数
最小。
4. 逻辑回归的拓展
4.1. 逻辑回归的正则化
正则化是一种用来控制模型复杂度以防止过拟合的技术,和线性回归一样,逻辑回归的正则化主要有三种形式:
正则化、
正则化以及弹性网络正则化。在逻辑回归的损失函数中,加入
正则化项,新的损失函数形式为:
在逻辑回归的损失函数中,加入
正则化项,新的损失函数形式为:
同时加入
和
正则化项,这被称为弹性网络,新的损失函数形式为:
正则化在逻辑回归中的作用是通过对模型参数引入额外的惩罚,防止模型在训练数据上过度拟合,提高模型的泛化能力。正则化参数的选择需要根据具体问题和数据进行调优,通常通过交叉验证等方法来确定。
4.2. 多分类问题
上述推导的逻辑回归是一个二分类模型,二分类算法可以通过不同的方法进行多分类任务的处理,主要有以下一些常见的方法:
一对一方法(One-vs-One):对于
类别的问题,该方法创建
个二分类器,每个分类器都处理两个类别的区分(例如,类别1 vs类别2,类别1 vs类别3,以此类推)。在预测时,所有分类器进行预测,最后根据投票或者其他集成方法确定最终的类别。
一对其余(One-vs-Rest或One-vs-All):对于
类别的问题,该方法创建
个二分类器,每个分类器都将一个类别与其他所有类别进行区分。在预测时,每个分类器给出一个置信度(或概率),最后选择置信度最高的类别作为最终的预测结果。
对于逻辑回归来说,除了上述方法,还可以将其推广为用于多分类的多项式逻辑回归[2]。
5. 基于逻辑回归的信用卡欺诈检测
5.1. 类别不平衡问题
信用卡欺诈检测是金融领域中非常重要的问题之一,因为快速准确地检测信用卡欺诈可以降低金融机构和持卡人的损失。信用卡欺诈检测(Credit Card Fraud Detection)数据集由比利时布鲁塞尔自由大学(ULB) Worldline and the Machine Learning Group提供,可从Kaggle上下载:该项目要处理的是一个二分类检测问题,此处尝试使用逻辑回归算法。
探索性数据分析(Exploratory Data Analysis, EDA)发现,数据集包含31列变量,其中V1,V2,……,V28为匿名变量,Time是每笔交易与数据集中第一笔交易之间的间隔,单位为秒,Amount是交易金额,Class是分类变量,在发生欺诈时为1,否则为0。变量Time与每笔交易是否存在欺诈无太大关系,因此可以删除该特征。交易金额Amount的数值大小跟匿名变量V1~V28相比,不在同一个数量级上,为了消除交易金额Amount的数量级对建模的影响,需要对交易金额Amount去量纲化,此处我们采用标准化方法,数据集不存在缺失值、异常值等。
样本容量方面,此数据集共有284,807笔交易,在这些交易中,仅有492条记录存在欺诈行为,数据集中样本类别高度不平衡,正类(欺诈)仅占所有交易的0.1727%,类别直方图如图3所示:
Figure 3. Category histogram
图3. 类别直方图
类别不平衡问题指的是在分类问题中,不同类别的样本数量差异较大,其中某些类别的样本数量远远少于其他类别。如果不同类别的训练样例数目稍有差别,通常影响不大,但若差别很大,则会对模型学习过程造成困扰,这种不平衡可能导致模型在训练和评估中对于少数类别的性能下降,因为模型更容易学到更多数目的类别。例如在上述例子中,学习方法只需要返回一个永远将新样本预测为正常交易的学习器,就能达到99.8272%的准确率,然而这样的学习器往往没有价值,因为它不能预测出任何正例。处理类别不平衡问题的常见方法有欠采样、过采样、数据加权、集成方法以及代价敏感法等。
5.2. 信用卡欺诈检测模型建立
在代码实践环节,我们首先有意让学生陷入一个“陷阱”:要求他们使用原始高度不平衡的信用卡欺诈数据直接训练逻辑回归模型。学生很快会得到一个准确率高达99.8%的模型,并可能因此感到困惑或满足。此时,教师提出关键问题:“一个将所有交易都预测为‘正常’的模型,准确率也是如此之高,那么我们的模型真的具备欺诈检测能力吗?”这一提问旨在激发学生的批判性思维,使他们亲身体会到在不平衡数据中准确率的局限性。
紧接着,自然地引入精确率、召回率、F1分数以及P-R曲线和ROC曲线等概念,不再是孤立的知识点灌输,而是作为解决当前困境的必要工具。随后,再指导学生动手实践下采样与上采样技术,并通过可视化对比这些评估指标的变化,让他们深刻理解不同处理方法的实际效果。这个过程体现了“从问题出发,为解决问题而学习”的PBL理念。
分别使用下采样和上采样之后的数据建立模型,并比较两种方法的优劣,采用的评价指标包括混淆矩阵、精确率、召回率、分类报告、P-R曲线、P-R曲线下的面积AP、ROC曲线、ROC曲线下的面积AUC等。
信用卡检测主要关注召回率和精确率,前者代表欺诈交易中到底有多少比率被检测出来了,后者代表模型检测出来是欺诈交易的记录中,到底有多少是真正的欺诈交易。如第三章所述,这是一对矛盾的指标,因此要选择合适的阈值使得综合考虑这对指标的性能较好,在这里我们假设这对指标的权重相等。随机下采样的混淆矩阵如图4所示:
Figure 4. Random downsampling confusion matrix
图4. 随机下采样混淆矩阵
SMOTE上采样的混淆矩阵如图5所示:
Figure 5. SMOTE upsampling confusion matrix
图5. SMOTE上采样混淆矩阵
上下采样P-R曲线以及曲线下面积对比如图6所示:
Figure 6. Schematic diagram of P-R curve comparison
图6. P-R曲线对比示意图
上下采样ROC曲线及曲线下面积对比如图7所示:
Figure 7. Schematic diagram of ROC curve comparison
图7. ROC曲线对比示意图
F1分数随着阈值的改变示意图如图8所示:
Figure 8. Schematic diagram of F1 score changing with threshold
图8. F1分数随阈值改变示意图
确定最佳阈值后,以最佳阈值作为判定交易欺诈的条件,得到新的预测值,根据新的预测值重新计算混淆矩阵、精确率和召回率等指标,设定最佳阈值之后的混淆矩阵如图9所示:
Figure 9. Confusion matrix after setting the optimal threshold
图9. 设定最佳阈值之后的混淆矩阵
由图6可知,在本案例中,过采样训练的分类模型效果比欠采样好,但并不意味着过采样方法一定比欠采样方法好,在其他项目上可能完全相反,因此具体问题具体分析。进一步,我们还可使用随机搜索、网格搜索或是贝叶斯优化等方法来搜索模型最优参数,以进一步提高模型的性能。当然,在课程学习完成之后,我们还可以考虑尝试其他几种算法,例如决策树、朴素贝叶斯、随机森林等,对比多种模型的效果或是对多个能力相当的模型进行组合。
教学实践表明,通过上述以真实案例为驱动、以问题为导向的教学设计,取得了显著的教学成效。首先,它印证了案例教学法与PBL在工科课程中的有效性。通过创设信用卡欺诈检测这一真实任务,将学生置于“实践者”的角色,不仅激发了其内在学习动机,更让他们在解决“如何评估模型”、“如何处理不平衡数据”等系列问题的过程中,自主建构了关于模型评估与优化的知识体系。其次,从极大似然估计和信息熵两个不同视角推导损失函数,这一设计践行了建构主义“多角度表征知识”的理念,有力促进了学生对算法本质的深度理解,避免了僵化的公式记忆。课程结束后的学生反馈与学习成果分析均表明,此教学模式有效培养了学生融会贯通的建模思想与解决实际问题的综合能力。
基金项目
2025年重庆科技大学本科教育教学改革研究项目(项目号:202562)、2022年重庆科技大学研究生教育教学改革研究项目(项目号:YJG2022y018)、2019年教育部高等教育司产学合作协同育人项目(项目号:201901070004)。
NOTES
*通讯作者。